安装或升级到 vSphere 8.0 Update 1 或更高版本后,可以为 Okta(作为外部身份提供程序)配置 vCenter Server 身份提供程序联合。

vCenter Server 仅支持一个已配置的外部身份提供程序(一个源)和 vsphere.local 标识源(本地源)。不能使用多个外部身份提供程序。用户登录到 vCenter Server 时,vCenter Server 身份提供程序联合使用 OpenID Connect (OIDC)。

可以在 vCenter Server 中使用 Okta 组和用户通过全局权限或对象权限配置特权。有关添加权限的详细信息,请参见《vSphere 安全性》文档。

前提条件

Okta 要求:

  • 您正在使用 Okta,并具有专用域空间,例如 https://your-company.okta.com。
  • 要执行 OIDC 登录并管理用户和组权限,必须创建以下 Okta 应用程序。
    • 以 OpenID Connect 作为登录方法的 Okta 本机应用程序。本机应用程序必须包含以下授权类型:授权代码、刷新令牌和资源所有者密码。
    • 具有 OAuth 2.0 持有者令牌的跨域身份管理系统 (SCIM) 2.0 应用程序,用于在 Okta 服务器与 vCenter Server 之间执行用户和组同步。

    请参见 VMware 知识库文章,网址为 https://kb.vmware.com/s/article/90835

  • 您已确定要与 vCenter Server 共享的 Okta 用户和组。此共享是一种 SCIM 操作(而不是 OIDC 操作)。

Okta 连接要求:

  • vCenter Server 必须能够连接到 Okta 发现端点,以及在发现端点元数据中通告的授权、令牌、JWKS 和任何其他端点。
  • Okta 还必须能够与 vCenter Server 连接,以发送用于 SCIM 置备的用户和组数据。

vCenter Server 要求:

  • vSphere 8.0 Update 1 或更高版本
  • 在要创建 Okta 标识源的 vCenter Server 上,确认已激活 VMware Identity Services。
    注: 安装或升级到 vSphere 8.0 Update 1 或更高版本时,默认激活 VMware 身份服务器。可以使用 vCenter Server 管理界面确认 VMware Identity Services 的状态。请参见 停止和启动 VMware Identity Services

vSphere 特权要求:

  • 您必须具有 VcIdentityProviders.管理特权,才能创建、更新或删除联合身份验证所需的 vCenter Server 身份提供程序。要限制用户只能查看身份提供程序配置信息,请分配 VcIdentityProviders.读取特权。

增强型链接模式要求:

  • 可以在增强型链接模式配置中为 Okta 配置 vCenter Server 身份提供程序联合。在增强型链接模式配置下配置 Okta 时,可以将 Okta 身份提供程序配置为使用单个 vCenter Server 系统上的 VMware Identity Services。例如,如果增强型链接模式配置包含两个 vCenter Server 系统,则仅使用一个 vCenter Server 及其 VMware Identity Services 实例与 Okta 服务器进行通信。如果此 vCenter Server 系统变得不可用,可以在 ELM 配置中的其他 vCenter Server 上配置 VMware Identity Services,以便与 Okta 服务器进行交互。有关详细信息,请参见增强型链接模式配置中的外部身份提供程序激活过程
  • 将 Okta 配置为外部身份提供程序时,增强型链接模式配置中的所有 vCenter Server 系统必须至少运行 vSphere 8.0 Update 1。

网络连接要求:

  • 如果您的网络不对外公开,则必须在 vCenter Server 系统和 Okta 服务器之间创建一个网络隧道,然后使用适当的可公开访问 URL 作为基本 URI。

过程

  1. 在 Okta 中创建 OpenID Connect 应用程序,并将组和用户分配给 OpenID Connect 应用程序。
    要创建 OpenID Connect 应用程序并分配组和用户,请参见 VMware 知识库文章,网址为: https://kb.vmware.com/s/article/90835。按照标题为“创建 OpenID Connect 应用程序”部分中的步骤进行操作。创建 Okta OpenID Connect 应用程序后,将以下信息从 Okta OpenID Connect 应用程序复制到文件,以便在下一步配置 vCenter Server 身份提供程序时使用。
    • 客户端标识符
    • 客户端密钥(在 vSphere Client 显示为共享密钥)
    • Active Directory 域信息或 Okta 域信息(如果未运行 Active Directory)
  2. 要在 vCenter Server 上创建身份提供程序,请执行以下操作:
    1. 使用 vSphere Client 以管理员身份登录到 vCenter Server
    2. 导航到主页 > 系统管理 > Single Sign On > 配置
    3. 单击更改提供程序并选择 Okta
      此时将打开 配置主身份提供程序向导。
    4. 必备条件面板中,查看 Okta 要求和 vCenter Server 要求。
    5. 单击运行预检查
      如果预检查发现错误,请单击 查看详细信息,然后按照指示采取措施,解决错误。
    6. 如果预检查通过,请单击确认复选框,然后单击下一步
    7. 目录信息面板中,输入以下信息。
      • 目录名称:要在 vCenter Server 上创建的本地目录的名称,该目录用于存储从 Okta 推送的用户和组。例如,vcenter-okta-directory
      • 域名:输入 Okta 域名,其中包含要与 vCenter Server 同步的 Okta 用户和组。

        输入 Okta 域名后,单击加号图标 (+) 进行添加。如果输入多个域名,请指定默认域。

    8. 单击下一步
    9. OpenID Connect 面板中,输入以下信息。
      • 重定向 UI:自动填写。您可以将重定向 UI 交给 Okta 管理员,以便在创建 OpenID Connect 应用程序时使用。
      • 身份提供程序名称:自动填写为 Okta。
      • 客户端标识符:在步骤 1 中在 Okta 中创建 OpenID Connect 应用程序时获得。(Okta 将客户端标识符称为客户端 ID。)
      • 共享密钥:在步骤 1 中在 Okta 中创建 OpenID Connect 应用程序时获得。(Okta 将共享密钥称为客户端密钥。)
      • OpenID 地址:采用 https://Okta domain space/oauth2/default/.well-known/openid-configuration 形式。

        例如,如果 Okta 域空间为 example.okta.com,则 OpenID 地址为:https://example.okta.com/oauth2/default/.well-known/openid-configuration

        有关详细信息,请参见https://developer.okta.com/docs/reference/api/oidc/#well-known-openid-configuration

    10. 单击下一步
    11. 检查信息,然后单击完成
      vCenter Server 创建 Okta 身份提供程序并显示配置信息。
    12. 如有必要,向下滚动,然后单击“重定向 URI”对应的复制图标,并将其保存到文件中。
      将在 Okta OpenID Connection 应用程序中使用重定向 URI。
    13. 单击“租户 URL”对应的复制图标,并将其保存到文件中。
      注: 如果您的网络不对外公开,则必须在 vCenter Server 系统和 Okta 服务器之间创建一个网络隧道。创建网络隧道后,使用适当的可公开访问 URL 作为基本 URI。
    14. 用户置备下,单击生成以创建密钥令牌,从下拉列表中选择令牌使用期限,然后单击复制到剪贴板。将令牌保存到安全位置。
      将在 Okta SCIM 2.0 应用程序中使用租户 URL 和令牌。Okta SCIM 2.0 应用程序使用该令牌将 Okta 用户和组同步到 VMware Identity Services 中。要将 Okta 用户和组从 Okta 推送到 vCenter Server,必须提供此信息。
  3. 返回到 VMware 知识库文章 (https://kb.vmware.com/s/article/90835),了解如何更新 Okta 重定向 URI。
    按照标题为“更新 Okta 重定向 URI”部分中的步骤进行操作。
  4. 要创建 SCIM 2.0 应用程序,请继续查看 VMware 知识库文章 (https://kb.vmware.com/s/article/90835)。
    按照标题为“创建 SCIM 2.0 应用程序并将用户和组推送到 vCenter Server”部分中的步骤进行操作。
    按照知识库文章所述创建 SCIM 2.0 应用程序后,继续执行下一步。
  5. 为 Okta 授权配置 vCenter Server
    您可以将 Okta 用户分配给 vCenter Server 组,也可以为 Okta 用户分配清单级别和全局权限。登录所需的最低权限为只读。
    要将 Okta 用户分配给组,请参见 向 vCenter Single Sign-On 组添加成员。要为 Okta 用户分配清单级别权限和全局权限,请参见 《vSphere 安全性》文档中有关“管理 vCenter Server 组件的权限”的主题。
  6. 确认以 Okta 用户身份登录到 vCenter Server