vCenter Single Sign-On 允许 vSphere 组件通过安全的令牌机制相互通信。
- 通过外部身份提供程序联合或 vCenter Server 内置身份提供程序对用户进行身份验证。内置身份提供程序支持本地帐户、Active Directory 或 OpenLDAP、集成 Windows 身份验证 (IWA) 和其他身份验证机制(智能卡和 RSA SecurID)。
- 通过证书对解决方案用户进行身份验证。
- Security Token Service (STS)。
- 用于确保安全流量的 SSL。
vCenter Server 内置身份提供程序
vCenter Server 包含内置身份提供程序。默认情况下,vCenter Server 使用 vsphere.local 域作为标识源(但可以在安装过程中进行更改该域)。可以使用 LDAP/S、OpenLDAP/S 或集成 Windows 身份验证 (IWA),将 vCenter Server 内置身份提供程序配置为使用 Active Directory (AD) 作为其标识源。此类配置允许客户使用其 AD 帐户登录到 vCenter Server。
vCenter Server 和外部身份提供程序
在 vSphere 7.0 及更高版本中,可以使用联合身份验证为 vCenter Server 配置外部身份提供程序。在此类配置中,将替换 vCenter Server 作为身份提供程序。
vSphere 支持以下身份提供程序。
- vSphere 7.0 及更高版本:Active Directory 联合身份验证服务 (AD FS)
- vSphere 8.0 Update 1 及更高版本:Okta
- vSphere 8.0 Update 2 及更高版本:Microsoft Entra ID(以前称为 Azure AD)
- 从 vSphere 8.0 Update 3 开始:PingFederate
将 vSphere 配置为使用外部身份提供程序时,外部身份提供程序将代表 vCenter Server 与标识源进行交互。
用户使用 vCenter Server 身份提供程序联合身份验证登录
使用外部身份提供程序对 vCenter Server 进行身份验证时,vCenter Server 会将登录请求重定向到外部身份提供程序。外部身份提供程序使用其目录服务对用户进行身份验证,然后颁发令牌,供 vCenter Server 执行用户登录。
例如,下图详细展示了使用 AD FS 的 vCenter Server 身份提供程序联合的用户登录流程。
vCenter Server、AD FS 和 Active Directory 按以下方式进行交互:
- 用户首先在 vCenter Server 登录页输入用户名。
- 如果用户名用于联合域,vCenter Server 会将身份验证请求重定向到 AD FS。
- (如果需要)AD FS 提示用户使用 Active Directory 凭据登录。
- AD FS 使用 Active Directory 对用户进行身份验证。
- AD FS 发出包含 Active Directory 中组信息的安全令牌。
- vCenter Server 使用令牌登录用户。
如果外部身份提供程序不可访问,登录过程将回退到 vCenter Server 登录页,并显示相应的信息消息。用户仍可以使用 vsphere.local 标识源中的本地帐户登录。
vCenter Server 和 Okta、Microsoft Entra ID 或 PingFederate 之间的交互类似于与 AD FS 的交互,但 vCenter Server 使用 VMware Identity Services。请参见VMware Identity Services 身份验证过程。
用户使用 vCenter Server 内置身份提供程序登录
下图显示了 vCenter Server 作为身份提供程序时的用户登录流程。
- 用户使用用户名和密码登录 vSphere Client 以访问 vCenter Server 系统或其他 vCenter 服务。
- vSphere Client 将登录信息传递到 vCenter Single Sign-On 服务,该服务将检查 vSphere Client 的 SAML 令牌。如果 vSphere Client 具有有效令牌,vCenter Single Sign-On 随后会检查用户是否位于已配置的标识源中(例如,Active Directory)。
- 如果仅使用用户名,则 vCenter Single Sign-On 将在默认域中执行检查。
- 如果域名随用户名一起提供(DOMAIN\user1 或 user1@DOMAIN),则 vCenter Single Sign-On 将检查该域。
- 如果用户可以对此标识源进行身份验证,则 vCenter Single Sign-On 会返回表示 vSphere Client 的用户的令牌。
- vSphere Client 将令牌传递到 vCenter Server 系统。
- vCenter Server 与 vCenter Single Sign-On 服务器确认令牌是否有效且未过期。
- vCenter Single Sign-On 服务器将令牌返回到 vCenter Server 系统,从而使用 vCenter Server 授权框架以允许用户访问。
解决方案用户登录
解决方案用户是 vCenter Server 基础架构中使用的一组服务,例如 vCenter Server 扩展。VMware 扩展及潜在的第三方扩展也可能对 vCenter Single Sign-On 进行身份验证。
下图显示了解决方案用户的登录流程。
- 解决方案用户尝试连接到 vCenter Server 服务。
- 解决方案用户被重定向到 vCenter Single Sign-On。如果解决方案用户是 vCenter Single Sign-On 的新用户,则必须提供有效的证书。
- 如果证书有效,vCenter Single Sign-On 将向解决方案用户分配 SAML 令牌(持有者令牌)。令牌由 vCenter Single Sign-On 签名。
- 然后,解决方案用户被重定向到 vCenter Single Sign-On,并可以基于其权限执行任务。
下次解决方案用户必须进行身份验证时,可以使用 SAML 令牌登录到 vCenter Server。
默认情况下,此握手将自动执行,因为 VMCA 会在启动期间为解决方案用户置备证书。如果公司策略要求使用第三方 CA 签名证书,则可以将解决方案用户证书替换为第三方 CA 签名的证书。如果这些证书有效,vCenter Single Sign-On 将向解决方案用户分配 SAML 令牌。请参见使用 Certificate Manager 将解决方案用户证书替换为自定义证书。
vSphere 中支持的加密
支持 AES 加密,即最高级别的加密。支持的加密会在 vCenter Single Sign-On 使用 Active Directory 作为标识源时影响安全性。
它还会在 ESXi 主机或 vCenter Server 加入 Active Directory 时影响安全性。