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

注: 这些说明适用于 vSphere 8.0 Update 1 及更高版本。对于 vSphere 8.0,请参见 《vSphere 身份验证》文档中有关“为 AD FS 配置 vCenter Server 身份提供程序联合”的主题,文档网址: https://docs.vmware.com/cn/VMware-vSphere/8.0/vsphere-documentation-80.zip

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

此任务介绍如何将 AD FS 组添加到 vSphere 管理员组,以便控制权限。此外,您还可以通过 vCenter Server 中的全局或对象权限使用 AD FS 授权配置特权。有关添加权限的详细信息,请参见《vSphere 安全性》文档。

小心:

如果使用之前添加到 vCenter Server 的 Active Directory 标识源作为 AD FS 标识源,请不要从 vCenter Server 中删除该现有标识源。如果删除,会导致之前分配的角色和组成员资格出现回归问题。具有全局权限的 AD FS 用户和添加到管理员组的用户将无法登录。

解决办法:如果您不需要之前分配的角色和组成员资格,并且希望移除以前的 Active Directory 标识源,请在创建 AD FS 提供程序并在 vCenter Server 中配置组成员资格之前移除标识源。

前提条件

注: 此 AD FS 身份提供程序配置过程要求您对 vCenter Server 和 AD FS 服务器具有管理访问权限。在配置过程中,请首先在 vCenter Server 输入信息,然后在 AD FS 服务器中输入信息,再在 vCenter Server 中输入信息。

Active Directory 联合身份验证服务要求:

  • 必须已经部署适用于 Windows Server 2016 或更高版本的 AD FS。
  • AD FS 必须已连接到 Active Directory。
  • 在配置过程中,必须在 AD FS 中创建 vCenter Server 的应用程序组。请参见 VMware 知识库文章,网址为 https://kb.vmware.com/s/article/78029
  • 添加到可信根证书存储的 AD FS 服务器证书(或者对 AD FS 服务器证书进行签名的 CA 或中间证书)。
  • 您已在 AD FS 中创建了一个 vCenter Server 管理员组,其中包含您要向其授予 vCenter Server 管理员特权的用户。

有关配置 AD FS 的详细信息,请参见 Microsoft 文档。

vCenter Server 和其他要求:

  • vSphere 7.0 或更高版本
  • vCenter Server 必须能够连接到 AD FS 发现端点,以及在发现端点元数据中通告的授权、令牌、注销、JWKS 和任何其他端点。
  • 您需要 VcIdentityProviders.管理特权,才能创建、更新或删除联合身份验证所需的 vCenter Server 身份提供程序。要限制用户只能查看身份提供程序配置信息,请分配 VcIdentityProviders.读取特权。

过程

  1. 使用 vSphere Client 登录 vCenter Server
  2. 将 AD FS 服务器证书(或者对 AD FS 服务器证书进行签名的 CA 或中间证书)添加到可信根证书存储。
    注: 要了解更多信息,请参见 使用 vSphere Client 将可信根证书添加到证书存储
    1. 导航到管理 > 证书 > 证书管理
    2. 可信根存储旁边单击添加
    3. 浏览 AD FS 证书,然后单击添加
      证书将添加到 可信根证书下的面板中。
  3. 开始在 vCenter Server 上创建身份提供程序。
    1. 使用 vSphere Client 以管理员身份登录到 vCenter Server
    2. 导航到主页 > 系统管理 > Single Sign On > 配置
    3. 单击更改提供程序并选择 ADFS
      此时将打开 配置主身份提供程序向导。
    4. 必备条件面板中,查看 AD FS 要求和 vCenter Server 要求。
    5. 单击运行预检查
      如果预检查发现错误,请单击 查看详细信息,然后按照指示采取措施,解决错误。
    6. 如果预检查通过,请单击确认复选框,然后单击下一步
    7. 用户和组面板中,输入基于 LDAP 的 Active Directory 连接的用户和组信息,以搜索用户和组。
      vCenter Server 从用户的基本标识名中派生用于授权和权限的 AD 域。只能为此 AD 域中的用户和组添加对 vSphere 对象的权限。 vCenter Server 身份提供程序联合不支持 AD 子域中或 AD 林中其他域中的用户或组。
      选项 描述
      用户的基本标识名 用户的基本识别名。
      组的基本标识名 组的基本识别名。
      用户名 域中用户的 ID,该用户对用户和组的基本 DN 只具有最小只读权限。
      密码 域中用户的 ID,该用户对用户和组的基本 DN 只具有最小只读权限。
      主服务器 URL: 域的主域控制器 LDAP 服务器。

      请使用 ldap://hostname:portldaps://hostname:port 格式。该端口通常为 389 用于 LDAP 连接,而 636 用于 LDAPS 连接。对于 Active Directory 多域控制器部署,该端口通常为 3268 用于 LDAP,而 3269 用于 LDAPS。

      在主 LDAP URL 或辅助 LDAP URL 中使用 ldaps:// 时,需要一个证书为 Active Directory 服务器的 LDAPS 端点建立信任。

      辅助服务器 URL 用于故障切换的辅助域控制器 LDAP 服务器的地址。
      SSL 证书 如果要将 LDAPS 与 Active Directory LDAP 服务器或 OpenLDAP 服务器标识源配合使用,请单击浏览选择证书。
    8. 单击下一步
    9. OpenID Connect 面板中,复制“重定向 URI”和“注销重定向 URI”。
      其他字段暂时留空。将在下一步中创建 OpenID Connection 配置后,返回到 OpenID Connect 面板。
  4. 在 AD FS 中创建 OpenID Connect 配置,并对其进行配置以用于 vCenter Server
    要在 vCenter Server 和身份提供程序之间建立依赖方信任,必须在它们之间建立标识信息和共享密钥。为此,在 AD FS 中,需要创建称为“应用程序组”的 OpenID Connect 配置,该配置由服务器应用程序和 Web API 组成。这两个组件指定 vCenter Server 用于信任和与 AD FS 服务器通信的信息。要在 AD FS 中启用 OpenID Connect,请参见 VMware 知识库文章,网址为 https://kb.vmware.com/s/article/78029

    在创建 AD FS 应用程序组时,请注意以下事项。

    • 需要使用在上述步骤中获取的两个 vCenter Server 重定向 URI。
    • 将以下信息从 AD FS 应用程序组复制到一个文件中,或将其记下,以供在下一步中完成 vCenter Server 身份提供程序的创建时使用。
      • 客户端标识符
      • 共享密钥
      • AD FS 服务器的 OpenID 地址
    注: 如有必要,请以 AD FS 管理员身份运行以下 PowerShell 命令以获取 AD FS 服务器的 OpenID 地址。
    Get-AdfsEndpoint | Select FullUrl | Select-String openid-configuration

    复制返回的 URL(只选择 URL 本身,不要选择右括号或开头的 "@{FullUrl=" 部分)。

  5. vCenter Server OpenID Connect 面板中:
    1. 输入在上一步中创建 AD FS 应用程序组时获取的以下信息:
      • 客户端标识符
      • 共享密钥
      • OpenID 地址

      “身份提供程序名称”会自动填写为“Microsoft ADFS”。

    2. 单击下一步
  6. 检查信息,然后单击完成
    vCenter Server 将创建 AD FS 身份提供程序并显示配置信息。
  7. vCenter Server 中为 AD FS 授权配置组成员资格。
    1. 主页菜单中,选择系统管理
    2. Single Sign On 下,单击用户和组
    3. 单击选项卡。
    4. 单击管理员组,然后单击添加成员
    5. 从下拉菜单中选择域。
    6. 在下拉菜单下方的文本框中,输入要添加的 AD FS 组的前几个字符,然后等待下拉选项显示。
      可能需要几秒钟时间才能显示所选内容,因为 vCenter Server 需要建立与 Active Directory 的连接并进行搜索。
    7. 选择 AD FS 组,然后将其添加到管理员组。
    8. 单击保存
  8. 确认以 Active Directory 用户身份登录到 vCenter Server