mcpField
A
authenticating-looker-cli

authenticating-looker-cli

github.com/looker-open-source数据与数据库43102 次安装2 周前更新
代码仓库

关于 authenticating-looker-cli

指导用户通过 OAuth 将 Looker CLI 连接到 Looker 实例,并将会话凭据保存到命名配置文件。适用于需要配置 CLI 认证并核验用户权限的 Looker 使用者。

主要功能

  1. 01创建并切换命名配置文件
  2. 02通过 OAuth 登录
  3. 03处理本地及无头环境授权
  4. 04验证 CLI 身份与权限

适用场景

  1. 01首次连接 Looker 实例
  2. 02在无头环境完成 OAuth 授权
  3. 03确认账号具备项目与连接管理权限

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/looker-open-source/looker-skills --skill authenticating-looker-cli

安装后在 Claude Code 中输入/authenticating-looker-cli确认已加载。

详细介绍

对 Looker CLI 进行身份验证

使用 OAuth 对 Looker CLI 进行身份验证,以连接到 Looker 实例,并将会话配置保存到指定名称的配置文件中。

前提条件

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

操作说明

1. 配置命名配置文件

创建一个名为 default 的新配置文件,用于保存连接详细信息:

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

将此新配置文件设为默认配置:

looker-cli profile use default
2. 触发 OAuth 登录

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

looker-cli session login --oauth
3. 获取授权 URL

监控后台登录任务日志或标准输出,提取生成的登录 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 中的 default 配置文件。

6. 验证身份验证

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

looker-cli user me

这应该会返回一个包含已验证用户详细信息的 JSON 对象。

7. 预检查:Looker 用户权限

验证已通过身份验证的用户账户是否拥有所需的开发和连接管理权限:

  1. 检查 looker-cli user me 输出中的角色和权限。
  2. 确认该账户拥有包含 develop 和 manage_project_connections 权限的角色(或将 Admin 角色作为备用方案)。
  3. 如果权限不足:向用户发出警告并暂停,等待权限更新:> “我已成功完成身份验证,但发现您的 Looker 用户账户缺少所需的 ‘develop’ 和 ‘manage_project_connections’ 权限(或 ‘Admin’ 角色)。> > 如果没有这些开发权限,我将无法创建数据库连接、项目或编写 LookML。请在 Looker 控制台中为我的用户账户授予这些权限,并在完成后告知我,以便我们继续操作!”

评论

支持 Markdown