通过 OIDC Provider 登录 Harbor

299 阅读2分钟

通过 OIDC Provider 登录 Harbor

当 Harbor 系统管理员将 Harbor 配置为通过 OIDC 进行身份验证时,Harbor 登录页面上会出现通过 OIDC Provider 登录按钮。

oidc_login

注意: 当 Harbor 通过 OIDC 配置身份验证时,用户名密码字段保留供本地 Harbor 系统管理员登录。

  1. 作为 Harbor 用户,单击通过 OIDC Provider登录按钮。

    这会将您重定向到 OIDC Provider进行身份验证。

  2. 如果这是您第一次使用 OIDC 登录 Harbor,请指定一个用户名,以便 Harbor 与您的 OIDC 用户名关联。

    为 OIDC 指定 Harbor 用户名

    这是您在 Harbor 中的身份识别用户名,用于将您添加到项目、分配角色等。如果用户名已被使用,系统会提示您选择其他用户名。

  3. 在 OIDC Provider对您进行身份验证后,您将被重定向回 Harbor。

从 Docker 或 Helm CLI 使用 OIDC

通过 OIDC 进行身份验证并首次登录 Harbor 界面后,您可以使用 Docker 或 Helm CLI 访问 Harbor。

Docker 和 Helm CLI 无法处理 OIDC 的重定向,因此 Harbor 提供了一个 CLI secret,供从 Docker 或 Helm 登录时使用。这仅在 Harbor 使用 OIDC 身份验证时可用。

  1. 使用 OIDC 用户账户登录 Harbor。

  2. 单击屏幕顶部的用户名并选择User Profile

    访问用户个人资料

  3. 单击剪贴板图标复制与您的帐户关联的 CLI 密码。

    复制 CLI 机密

  4. (可选)单击用户配置文件中的 ...图标以显示用于自动生成或手动创建新 CLI 密钥的按钮。

    复制 CLI 机密

    一个用户只能拥有一个 CLI 密钥,因此当生成或创建新密钥时,旧密钥将失效。

  5. 如果您生成了新的 CLI 机密,请单击剪贴板图标来复制它。

现在,您可以从 Docker 或 Helm CLI 登录 Harbor 时使用您的 CLI 密钥作为密码。

docker login -u 测试用户 -p cli_secret jt-test.local.goharbor.io

CLI 密钥与 OIDC ID 令牌相关联。Harbor 将尝试刷新令牌,因此 CLI 密钥在 ID 令牌过期后仍然有效。但是,如果 OIDC 提供商未提供刷新令牌或刷新失败,CLI 密钥将失效。在这种情况下,请注销并通过 OIDC 提供商重新登录 Harbor,以便 Harbor 可以获取新的 ID 令牌。然后 CLI 密钥将再次起作用。