使用 Google OAuth for Looker (Google Cloud Core) 用户身份验证

Google OAuth 与 Identity and Access Management (IAM) 搭配使用,用于对 Looker(Google Cloud 核心)用户进行身份验证。

使用 OAuth 进行身份验证时,Looker (Google Cloud Core) 会通过 OAuth 2.0 协议对用户进行身份验证。创建实例时,您可以使用任何 OAuth 2.0 客户端来创建授权凭据。作为示例,本页将向您详细介绍如何使用 Google Cloud 控制台创建 OAuth 凭据,为 Looker (Google Cloud Core) 实例设置身份验证。

如果其他身份验证方法是主要的身份验证方法,则默认情况下,Google OAuth 就是备用的身份验证方法。Google OAuth 也是 Cloud Customer Care 在提供支持时使用的身份验证方法。

使用 OAuth 和 IAM 进行身份验证和授权

与 OAuth 搭配使用时,Looker (Google Cloud Core) IAM 角色可为给定 Google Cloud 项目中的所有 Looker (Google Cloud Core) 实例提供以下级别的身份验证和授权。根据您希望各个主账号拥有的访问权限级别,为每个主账号分配以下某个 IAM 角色:

IAM 角色 身份验证 授权
Looker 实例用户 (roles/looker.instanceUser)

可以登录 Looker (Google Cloud Core) 实例

在首次登录 Looker (Google Cloud Core) 后,获得了适用于新用户的角色中设置的默认 Looker 角色

无法在 Google Cloud 控制台中访问 Looker (Google Cloud Core) 资源。

Looker 查看者 (roles/looker.viewer) 可以登录 Looker (Google Cloud Core) 实例 首次登录 Looker (Google Cloud Core) 时,被授予新用户的角色中设置的默认 Looker 角色

可以在 Google Cloud 控制台中查看 Looker (Google Cloud Core) 实例列表和实例详情
Looker 管理员 (roles/looker.admin) 可以登录 Looker (Google Cloud Core) 实例 首次登录 Looker (Google Cloud Core) 时,此角色(或包含 looker.instances.update 权限的自定义角色)默认为实例中的 Looker 管理员角色

可以在 Google Cloud 控制台中执行 Looker (Google Cloud Core) 的所有管理任务

此外,拥有项目的 owner 角色的用户账号可以登录并管理该项目中的任何 Looker (Google Cloud Core) 实例。系统会为这些用户授予 Admin Looker 角色。

如果预定义角色未提供您所需的权限集,您还可以创建自己的自定义角色

Looker (Google Cloud Core) 账号是在用户首次登录 Looker (Google Cloud Core) 实例时创建的。

在 Looker (Google Cloud Core) 实例中配置 OAuth

在 Looker (Google Cloud Core) 实例中,您可以通过 Admin 菜单的 Authentication 部分中的 Google 页面配置一些 Google OAuth 设置。

在 Looker (Google Cloud Core) 实例中设置默认 Looker 角色

在添加任何用户之前,您可以设置默认的 Looker 角色。拥有 Looker Instance User (roles/looker.instanceUser) IAM 角色或 Looker Viewer (roles/looker.viewer) IAM 角色的用户账号首次登录 Looker (Google Cloud Core) 实例时,系统会向其授予该角色。如需设置默认角色,请按以下步骤操作:

  1. 转到管理菜单的身份验证部分中的 Google 页面。
  2. 新用户的角色设置中,选择要默认授予所有新用户的角色。该设置包含 Looker (Google Cloud Core) 实例中的所有默认角色自定义角色的列表。

无论在新用户的角色设置中选择了哪个角色,具有 Looker 管理员 (roles/looker.admin) IAM 角色的用户账号都将被授予 Admin Looker 角色。您可以根据需要将“管理员”角色更改为其他角色。

指定用于将 OAuth 用户合并到 Looker (Google Cloud Core) 账号的方法

合并用户字段中,指定将首次 OAuth 登录与现有用户账号合并的方法。您可以合并以下系统中的用户:

  • SAML
  • OIDC

如果您有多个系统,则可以在此字段中指定多个要合并的系统。Looker (Google Cloud Core) 将按指定的顺序从列出的系统中查找用户。例如,如果您先使用 OIDC 创建了一些用户,然后又使用 SAML 创建了一些用户,Looker (Google Cloud core) 会先按 OIDC 合并,然后再按 SAML 合并。

当用户通过 OAuth 首次登录时,此选项会通过查找具有匹配电子邮件地址的账号,将用户连接到其现有账号。如果用户没有现有账号,系统会创建一个新用户账号。

向 Looker (Google Cloud Core) 实例添加用户

创建 Looker (Google Cloud Core) 实例后,您可以通过 IAM 添加用户。如需添加用户,请按以下步骤操作:

  1. 请确保您拥有 Project IAM Admin 角色或其他可以管理 IAM 访问权限的角色
  2. 前往 Looker (Google Cloud Core) 实例所在的 Google Cloud 控制台项目。

  3. 前往 Google Cloud 控制台的 IAM 和管理 > IAM 部分。

  4. 选择授予访问权限

  5. 添加主账号部分中,添加以下一项或多项:

    • Google 账号电子邮件地址
    • Google 群组
    • Google Workspace 网域
  6. 分配角色部分,选择一个预定义的 Looker (Google Cloud Core) IAM 角色或您添加的自定义角色。

  7. 点击保存

  8. 告知新的 Looker (Google Cloud Core) 用户已获授访问权限,并将他们定向至实例的网址。他们可以由此登录此实例,随后系统会为其创建账号。系统不会发送任何自动发送的邮件。

如果您更改用户的 IAM 角色,IAM 角色会在几分钟内传播到 Looker (Google Cloud Core) 实例。如果存在现有的 Looker 用户账号,则该用户的 Looker 角色保持不变。

所有用户都必须通过前面所述的 IAM 步骤进行预配,但有一种例外情况:您可以在 Looker (Google Cloud Core) 实例中创建仅限 Looker API 的服务账号

使用 OAuth 登录 Looker (Google Cloud Core)

首次登录时,系统会要求用户使用 Google 账号登录。在授予访问权限时,他们应使用添加主账号字段中列出的 Looker 管理员的账号。用户将会看到在创建 OAuth 客户端期间配置的 OAuth 权限请求页面。用户同意同意屏幕后,系统会创建用户在 Looker (Google Cloud Core) 实例中的账号,并让用户登录。

授权生效后,用户将自动登录 Looker (Google Cloud Core),除非其授权过期被用户撤消。在这些情况下,用户将再次看到 OAuth 意见征求界面,并被要求同意授权。

系统可能会为部分用户分配 API 凭据,以便他们用于检索 API 访问令牌。如果这些用户的授权过期或被撤消,他们的 API 凭据将失效。所有当前的 API 访问令牌也将停止工作。如需解决此问题,用户必须针对每个受影响的 Looker (Google Cloud Core) 实例重新登录 Looker (Google Cloud Core) 界面,以重新授权其凭据。或者,使用仅限 API 的服务账号有助于避免 API 访问令牌的凭据授权失败。

正在移除对 Looker (Google Cloud Core) 的 OAuth 访问权限

如果您拥有可让您管理 IAM 访问权限的角色,则可以通过撤消授予访问权限的 IAM 角色来移除对 Looker (Google Cloud Core) 实例的访问权限。如果您移除用户账号的 IAM 角色,相应更改会在几分钟内传播到 Looker (Google Cloud Core) 实例。用户将无法再对实例进行身份验证。不过,该用户账号仍会在用户页面上显示为活跃状态。如需从用户页面中移除该用户账号,请在 Looker (Google Cloud Core) 实例中删除用户

将 OAuth 用作备用身份验证方法

SAMLOIDC 是主要身份验证方法时,OAuth 是备用的身份验证方法。

如需将 OAuth 设置为备用方法,请授予每个 Looker (Google Cloud Core) 用户相应的 IAM 角色,以便其登录实例。

备份方法设置完毕后,用户可以按照以下步骤访问该备份方法:

  1. 在登录页面上,选择使用 Google 进行身份验证
  2. 系统会显示一个对话框,用于确认 Google 身份验证。在对话框中选择确认

设置完毕后,用户就可以使用自己的 Google 账号登录了。首次使用 OAuth 登录时,系统会提示他们接受在实例创建期间设置的 OAuth 权限请求页面

后续步骤