SuperAPI AI 工具集

authenticating-looker-cli

部署与运维

查看项目

更新于 10-15 13:58

技能介绍

用途

本技能用于将 Looker CLI 通过 OAuth 认证到 Looker 实例,并将会话配置保存到命名 profile 中。它是 Looker 开发者入门流程的第 3 步,应在第 2 步(使用 installing-looker-cli 进行 CLI 验证)之后执行。

前置条件

  • 必须已安装 Looker CLI(参见 installing-looker-cli 技能)。
  • 必须知道 Looker 实例 URL(主机与 API 端口)。通常,Looker Core / Google Cloud Core 的 API 端口为 443。

主要能力与使用方式

1. 配置命名 Profile

创建名为 default 的新 profile 以保存连接信息:

looker-cli profile add default --host {instance_host} --port {instance_port}

将该 profile 设为默认配置:

looker-cli profile use default

2. 触发 OAuth 登录

在后台运行登录命令(因为需要交互式浏览器授权):

looker-cli session login --oauth

3. 获取授权 URL

监控后台登录任务日志或 stdout,提取生成的登录 URL。Looker CLI 会输出:Opening browser to URL: 后跟一个长 URL。

4. 引导用户(交互步骤)

将登录 URL 呈现给用户,并说明:

请在浏览器中打开以下 URL,登录 Looker 并授权 CLI:

URL: {auth_url}

如果你在本地桌面机器上运行,授权完成后登录应自动完成。如果你在远程服务器/无头工作区,浏览器会显示页面加载错误,或尝试重定向到 http://127.0.0.1:7777/?code=...。请从浏览器地址栏复制完整的重定向 URL,并粘贴回终端提示符。

5. 处理 OAuth 响应

  • 场景 A(自动):如果用户完成认证且 CLI 正在本地监听 7777 端口,登录命令任务将成功结束。
  • 场景 B(无头回退):后台进程会打印 Paste redirected URL here:。如果用户粘贴了重定向 URL,使用 manage_task 的 send_input 将粘贴的 URL 直接传递给后台登录任务。

完成后,looker-cli 会自动将访问令牌和刷新令牌保存到 ~/.config/looker-cli/config.yaml 中的默认 profile。

6. 验证认证

确认无需传递任何连接标志即可成功与 Looker API 通信:

looker-cli user me

该命令应返回包含已认证用户详细信息的 JSON 对象。

7. 预检:Looker 用户权限

验证已认证用户账户是否具备所需的开发者与连接管理权限:

  • 检查 looker-cli user me 输出中的角色与权限。
  • 确认账户拥有包含 develop 和 manage_project_connections 权限的角色(或作为回退的 Admin 角色)。

如果权限不足,警告用户并暂停等待更新:

我已成功认证,但我注意到你的 Looker 用户账户缺少所需的 develop 和 manage_project_connections 权限(或 Admin 角色)。

没有这些开发者权限,我将无法创建数据库连接、项目或编写 LookML。请在 Looker 控制台中为我的用户账户授予这些权限,并在完成后告知我,以便我们继续!

适用场景

适用于需要以 OAuth 方式将 Looker CLI 连接到 Looker 实例的开发者入门流程,尤其是后续需要创建数据库连接、项目或编写 LookML 的场景。

限制

  • 必须在完成 CLI 安装验证之后执行。
  • 需要已知 Looker 实例主机与 API 端口。
  • OAuth 登录需要用户在浏览器中交互授权;无头环境需手动复制重定向 URL。
  • 后续开发操作依赖用户账户具备 develop 和 manage_project_connections 权限(或 Admin 角色)。