此文档页面介绍了如何在创建实例期间设置 OAuth 客户端,并手动将 OAuth 凭据与实例相关联。
何时创建 OAuth 凭据
在大多数情况下,Looker (Google Cloud Core) 会默认自动创建和分配 Looker 管理的 OAuth 凭据。您只需在特定场景中创建 OAuth 客户端并手动关联自定义 OAuth 凭据,具体取决于实例的网络连接类型和身份验证配置:
- 使用 Google OAuth 的专用连接或混合连接 :每当使用 Google OAuth(作为主要或辅助身份验证)与专用连接或混合连接时,都必须 手动设置 OAuth。
- 使用 Google OAuth 的公共连接:不需要 手动设置 OAuth;Looker (Google Cloud Core) 默认会自动分配 Looker 管理的凭据,但您可以选择配置自定义凭据。
- 仅限员工身份联合 :如果使用员工身份联合而不使用辅助 Google OAuth,则在任何网络连接类型中都不需要 手动设置 OAuth。
- 自定义网域:如果您为使用公共安全连接和 Google OAuth 的实例配置自定义网域,则需要自定义 OAuth 凭据,并且这些凭据是在自定义网域创建过程中配置的。
下表总结了何时需要手动设置 OAuth 凭据:
| 主要身份验证 | 辅助身份验证 | 网络连接类型 | 手动 OAuth 设置 |
|---|---|---|---|
| Google OAuth | 无 | 公共安全连接 | 不需要。Looker (Google Cloud Core) 会自动分配 Looker 管理的凭据。 |
| 专用连接或混合连接 | 必需 。按照本页面上的说明操作。 | ||
| 员工身份联合 | 无 | 公共连接 | 不需要。 |
| 员工身份联合 | Google OAuth | 公共安全连接 | 可选。Looker (Google Cloud Core) 默认使用 Looker 管理的凭据,您也可以提供自定义凭据。 |
所需的角色
如需使用 Google Cloud 控制台创建和修改 OAuth 凭据,您需要具有以下权限。(如需隐藏权限列表,请收起所需权限 部分。)
所需权限
- clientauthconfig.*
- clientauthconfig.brands.create
- clientauthconfig.brands.delete
- clientauthconfig.brands.get
- clientauthconfig.brands.list
- clientauthconfig.brands.update
- clientauthconfig.clients.create
- clientauthconfig.clients.createSecret
- clientauthconfig.clients.delete
- clientauthconfig.clients.get
- clientauthconfig.clients.getWithSecret
- clientauthconfig.clients.list
- clientauthconfig.clients.listWithSecrets
- clientauthconfig.clients.undelete
- clientauthconfig.clients.update
- oauthconfig.*
- oauthconfig.clientpolicy.get
- oauthconfig.testusers.get
- oauthconfig.testusers.update
- oauthconfig.verification.get
- oauthconfig.verification.submit
- oauthconfig.verification.update
您也可以通过自定义角色或其他预定义角色来获取所需的权限。如需详细了解如何授予角色,请参阅 Identity and Access Management (IAM) 文档中的管理对项目、文件夹和组织的访问权限页面。
创建 Looker (Google Cloud Core) 实例之前
在创建 Looker (Google Cloud Core) 实例之前,请完成以下部分中所述的步骤:
生成 OAuth 客户端 ID 和客户端密钥
首先,创建一个 OAuth 客户端,并为该客户端生成客户端 ID 和客户端密钥。创建 Looker (Google Cloud Core) 实例时需要这些值。
您可以在任何 Google Cloud 项目中设置 OAuth 客户端。它不需要与 Looker (Google Cloud Core) 实例位于同一项目中。但是,必须 在此项目中启用 Looker (Google Cloud Core) API。
如需创建客户端及其凭据,请按以下步骤操作:
- 前往要在其中创建 OAuth 客户端的项目。
- 前往 API 和服务 > 凭据 。
- 在凭据 页面中,点击创建凭据 。
- 从下拉菜单中选择 OAuth 客户端 ID 。
- 在应用类型 下拉列表中,选择 Web 应用 。
- 在名称 字段中,输入 OAuth 客户端的名称。
- 此时,您不需要 在已获授权的 JavaScript 来源 或已获授权的重定向 URI 部分中添加 URI。
- 点击创建 。
点击创建 后,系统会显示已创建 OAuth 客户端 窗口。此窗口会显示为 OAuth 客户端创建的客户端 ID 和客户端密钥。创建 Looker (Google Cloud Core) 实例时需要这些值。
您可以选择点击下载 JSON ,以 JSON 文件的形式下载凭据信息。如需关闭窗口,请点击确定 。
配置用户权限请求页面、范围和测试用户
接下来,您可能需要配置权限请求页面。权限请求页面会在 Looker (Google Cloud Core) 实例的用户首次登录时,以及在用户的授权 过期 或被用户 撤消时显示。
按照配置 OAuth 权限请求页面并选择范围文档页面上的说明操作。配置屏幕时,请按照说明完成以下设置:
在品牌宣传 部分的已获授权的网域 下,网域必须与使用 OAuth 凭据的 Looker (Google Cloud Core) 实例的网域一致。如果您要为 Looker (Google Cloud Core) 实例创建自定义网域,并且知道要为其分配的网域,则可以立即输入该网域。否则,您可以将此字段留空;在创建 Looker (Google Cloud Core) 实例后,当您添加已获授权的重定向 URI时,系统会自动填充此字段。
在受众群体部分的用户类型下,选择以下选项之一:
创建 Looker (Google Cloud Core) 实例期间
创建 Looker (Google Cloud Core) 实例时,请在 OAuth 应用凭据 部分中添加 OAuth 客户端 ID 和客户端密钥。您必须拥有 OAuth 凭据,才能创建实例。如需查找 OAuth 客户端 ID 和客户端密钥,请在 Google Cloud 控制台中前往 OAuth 客户端。
创建 Looker (Google Cloud Core) 实例后
请按照以下说明完成配置。添加已获授权的重定向 URI 后,该 URI 将作为已获授权的网域添加到 OAuth 权限请求页面。
将已获授权的重定向 URI 添加到 OAuth 客户端
如果您尚未执行此操作,请按照以下步骤将新创建的 Looker (Google Cloud Core) 实例的网址输入到 OAuth 客户端中。
创建 Looker (Google Cloud Core) 实例后,找到并复制该实例的网址。您可以在实例页面上找到该网址。
在 Google Cloud 控制台中,前往 API 和服务 > 凭据。
在 OAuth 2.0 客户端 ID 标题下,点击您创建的 客户端 的名称。
在已获授权的重定向 URI 部分中,点击添加 URI 。
将 Looker (Google Cloud Core) 实例的网址粘贴到 URI 字段中。在网址末尾添加
/oauth2callback。例如:https://uuid.looker.app/oauth2callback。如果您要为 BigQuery 设置 OAuth 授权,还可以添加第二个重定向 URI,该 URI 指向 Looker (Google Cloud Core) 实例的网址,并在网址末尾添加
/external_oauth/redirect。例如:https://uuid.looker.app/external_oauth/redirect。点击保存 。
更新可能需要 5 分钟到数小时才能生效。
管理用户
配置 OAuth 客户端并创建 Looker (Google Cloud Core) 实例后,您可以使用 OAuth 登录到该实例。然后,您可以选择身份验证方法为实例。
如果使用 OAuth 作为主要身份验证方法,请按照将 Google OAuth 用于 Looker (Google Cloud Core) 用户身份验证文档页面上的说明完成这些步骤,以完成用户身份验证的 OAuth 设置。
设置身份验证方法后,您可以通过身份提供方添加或移除用户,并在 Looker 中管理这些用户。
查看实例的 OAuth 凭据类型
OAuth 凭据不会直接列在实例配置页面的 Google Cloud 控制台上。点击实例配置页面上的修改 ,即可看到 OAuth 应用凭据 部分。
如果 OAuth 凭据设置为 Looker 管理 ,则 Looker (Google Cloud Core) 会在创建实例期间为实例分配 Looker 管理的 OAuth 凭据,并且不会显示客户端 ID 和客户端密钥。
如果 OAuth 凭据设置为 手动,则在创建实例期间或之后,手动 OAuth 凭据已添加到实例中。系统不会显示客户端 ID
和客户端密钥,而是显示 **** 占位符。
修改 Looker (Google Cloud Core) 实例的 OAuth 客户端
如果您愿意,可以按照以下步骤为 Looker (Google Cloud Core) 实例添加、修改或更改 OAuth 凭据:
- 设置新客户端或凭据。
- 在 Google Cloud 控制台中,从 实例 页面中,点击实例的名称以打开 详细信息 页面。
- 在详细信息 页面中,点击修改 。
- 在修改 Looker (Google Cloud Core) 实例 页面上,前往 OAuth 应用凭据 部分,然后选择手动 (如果尚未选择)。
- 在 OAuth 客户端 ID 和 OAuth 客户端密钥 字段中输入新值。
- 点击保存 。
如果 OAuth 应用凭据设置为 Looker 管理,则您无法添加或修改凭据。切换到凭据的手动 设置,即可修改或添加凭据。