注意:
- 本教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure 免费套餐。
- 它对 Oracle Cloud Infrastructure 身份证明、租户和区间使用示例值。完成实验室后,请使用特定于云环境的那些值替换这些值。
将 vCenter Server Identity Provider Federation 与 OCI IAM for Oracle Cloud VMware Solution 集成
简介
在当今快速发展的 IT 环境中,系统之间的无缝集成对于增强安全性和简化管理至关重要。借助 VMware vCenter Server Appliance (VCSA) 8.0 U2,管理员现在可以利用 Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 实现身份联盟。此功能之所以成为可能,是因为 Oracle Cloud VMware Solution 客户可以完全控制其环境,允许他们无限制地实施更改。通过启用此集成,您可以简化身份验证流程并建立统一的访问控制机制,以确保您的 VMware 环境保持安全、合规并与现代身份管理实践保持一致。
本教程旨在重点介绍使用 VCSA 8.0 U2 的组织采用外部身份提供者的优势。通过与 OCI IAM 等外部身份提供商集成,企业可以利用现有身份基础设施,简化单点登录 (SSO) 流程,并通过多因素身份验证增强安全性。此外,此集成支持基础设施与身份管理之间的职责分离,并符合安全性和管理效率的最佳实践。
体系结构
外部身份提供者联合的体系结构在 vCenter 中保持一致,由 VMware Identity Services 提供支持。在本教程中,我们将重点利用 OCI IAM 身份域。
此集成有 2 个阶段:
-
用户验证:OAuth
当用户尝试登录到 VCSA 时,验证请求将通过 VMware Identity Services 启动的 OAuth 令牌请求无缝重定向到 OCI IAM。OCI IAM 成功验证和验证后,将向 VMware Identity Services 返回一个安全令牌,然后根据用户分配的权限授予用户访问权限。
-
用户/组推送:跨域身份管理系统 (System for Cross-Domain Identity Management,SCIM)
OCI IAM 负责管理 Oracle Cloud Infrastructure 环境中的用户和组,而 vCenter 则负责管理 VMware 环境中的虚拟基础设施。为了确保正确用户在 vCenter 中具有正确的访问权限,可使用 SCIM 协议将用户从 OCI IAM 自动预配、更新或取消预配到 vCenter。在 OCI IAM 中创建、修改或删除用户或组时,SCIM 会自动在 vCenter 中同步这些更改。这样可以确保两个系统中的用户身份保持最新,而无需手动干预。
注:在 OCI IAM SCIM 应用程序中分配组时,会在 VCSA 中预配组成员,但不会创建组本身。
目标读者
OCI IAM 专业人员、Oracle Integration 管理员、Oracle Cloud VMware Solution 管理员和 VMware 管理员。
先决条件
-
OCI IAM 要求:
-
访问 OCI 租户。
-
OCI IAM 中的用户需要具有 sAMAccountName 格式(不是电子邮件或 UPN 格式)的用户名值,因为当 OCI IAM 中的 SCIM 预配流程在 vCenter 中创建用户账户时,用户的 sAMAccountName(例如
jdoe
)用作主标识符。在验证过程中,VCSA 会自动将域名附加到 sAMAccountName 以形成全限定用户标识符。例如,如果jdoe
是用户名且域是corp.example.com
,则 VCSA 中使用的生成身份将成为jdoe@corp.example.com
。 -
您必须有权在 OCI IAM 上创建集成应用程序。有关更多信息,请参见 Understanding Administrator Roles 。
-
需要在 OCI IAM 的域设置中的访问签名证书下启用配置客户端访问。
-
具有公共子网的 VCN。
-
用于创建证书颁发机构 (Certificate Authority,CA) 捆绑包和 OCI API 网关的适当 OCI IAM 策略。
-
-
OCI IAM 和 vCenter 连接要求:
-
vCenter 服务器必须能够访问 OCI IAM OAuth 端点。默认情况下,在 Oracle Cloud VMware Solution 部署期间,vSphere VLAN(部署了 vCenter)已连接到 NAT 网关。
-
确保 OCI IAM 可以访问 vCenter SCIM API。此连接是使用 OCI API 网关服务建立的,该服务用作代理,以促进 OCI IAM 与 vCenter SCIM API 之间的安全通信。
-
API 网关需要有适当的路由才能达到 VCSA。在本教程中,API 网关子网和 vSphere VCSA VLAN 都位于同一 CIDR 上。
注:如果 vSphere VLAN 路由表不包含 NAT 网关路由,则需要在 VCN 中创建新的 NAT 网关,并添加相应的路由规则以启用 Internet 访问。
-
任务 1:在 OCI IAM 域中注册机密应用程序
我们将在相应的 OCI IAM 域中注册机密应用程序。使用此机密应用程序,我们将使用 OAuth 2.0 授权代码流来获取访问令牌。
-
登录到 OCI 控制台,转到身份与安全,然后单击域。
-
选择域。
-
单击集成的应用程序,选择用于 OAuth 的机密应用程序,然后单击启动工作流。
-
输入应用程序的名称,然后单击下一步。
-
在客户端配置部分中,选择客户端身份证明。
注:保存应用程序而不启用授权代码和重定向 URL 。从任务 2 中获取重定向 URL 后,再次更新应用程序。请参阅下文
-
完成应用程序工作流并激活它。复制客户端 ID 和客户端密钥。
-
从域信息页复制域 URL 。
任务 2:在 vCenter 服务器中配置身份提供者 (IdP) 并下载 VCenter 证书
我们将 vCenter Server 与 OCI IAM 集成,以便为用户启用 SSO。在此任务中,在 VCSA 中配置 IdP。配置 IdP 后,我们需要下载 vCenter 证书以在 IdP 配置中使用,以便在 vCenter 和 OCI API 网关之间建立信任。
-
以管理员身份登录到 vCenter 服务器,然后导航到主页、管理、单点登录、配置、身份提供者、身份源。从下拉菜单中,选择 Okta 到更改提供程序。
注:我们将使用 Okta IdP 模板,但将使用 OCI IAM 详细信息对其进行修改。
-
确认满足先决条件,然后选择下一步。
-
输入目录名称、域名,然后单击下一步。
-
从下拉菜单中选择 Token Lifespan 值,然后单击 Next 。
-
在 OpenID Connect 部分中,复制重定向 URI ,输入在任务 1 中复制的身份提供者名称、客户端标识符和密钥。
在 OpenID 地址中,使用在任务 1 中复制的域 URL 并将其附加到
/.well-known/openid-configuration
。保存详细信息后,单击下一步。注:请记下重定向 URI ,并按照任务 1 步骤 5 中所述在 OCI IAM 中更新机密应用程序。
-
查看身份提供者详细信息部分后,单击完成。
-
单击下载可信根 CA 证书可从 vCenter 下载可信根 CA 证书。
任务 3:在 OCI IAM 中创建 SCIM 应用
在本任务中,我们将在 OCI IAM 中创建一个 SCIM 2.0 应用程序,通过该应用程序,我们可以指定应将 OCI IAM 中的哪些用户推送到 vCenter 服务器。
-
登录到 OCI 控制台,导航到身份和安全,选择您的域并导航到集成的应用程序,然后选择应用程序目录以添加新应用程序。
-
在搜索栏中输入 GenericSCIM - Bearer 令牌 并选择磁贴。
-
输入应用程序的名称,然后单击下一步。
-
选择启用设置。
-
由于 vCenter URL 不是公共 URL,因此 OCI IAM 将无法访问 vCenter SCIM API。为了公开 vCenter SCIM API,我们将配置公共 OCI API 网关并添加 vCenter SCIM API 路由。让我们暂时将预配配置连接详细信息留空,并完成属性映射部分。
注:
- 缺省情况下,使用 externalId 映射 user.id 。将
user.id
替换为$(user.userName)
。 - 已在任务 6 中更新预配部分。
如先决条件中所述,OCI IAM 需要具有 sAMAccountName 格式的用户名值(不是电子邮件或 UPN 格式),因为当 OCI IAM 中的 SCIM 预配流程在 vCenter 中创建用户账户时,用户的 sAMAccountName(例如
jdoe
)用作主标识符。请参阅以下示例属性映射。 - 缺省情况下,使用 externalId 映射 user.id 。将
-
在选择预配操作部分中,选择创建帐户、删除帐户、推送用户更新、推送用户激活/停用状态,启用启用同步并使用默认配置。
任务 4:创建 CA 包
要在 OCI API 网关与 VCenter 之间建立可信连接,我们需要在 OCI API 网关中提供 VCenter 可信根 CA 证书。
-
登录到 OCI 控制台,导航到身份与安全、证书和 CA 捆绑包。
-
在创建 CA 包页中,选择一个适当的区间并为捆绑包提供有效的名称,然后粘贴在任务 2 中下载的证书的内容。
任务 5:配置 OCI API 网关
为了安全地使 OCI IAM 能够访问未公开互联网的 vCenter SCIM API,OCI API 网关充当代理,从而确保 OCI IAM 与 vCenter SCIM API 之间的无缝安全通信。
-
登录到 OCI 控制台,导航到 Developer Services 、 API Management 和 Gateways 。
-
在创建网关页中,输入适当的名称,选择所需的虚拟云网络和公共子网。使用默认证书并单击完成。等待网关完全部署。
-
单击添加证书颁发机构以添加在任务 4 中创建的 CA 包。
-
单击部署和创建部署。
-
在基本信息部分中,输入以下信息。
- 名称:输入有效名称。
- 路径前缀:输入
/
。 - 执行日志级别:选择信息。
-
选择 No Authentication 。
-
在路由部分中,将相应的 vCenter SCIM API 端点添加为不同的路由(路由 1、路由 2、路由 3、路由 4 和路由 5),然后单击下一步。
-
路由 1:路径为
/usergroup/t/CUSTOMER/scim/v2
,URL 为https://<VSCA URL>
-
路由 2:路径为
/usergroup/t/CUSTOMER/scim/v2/Users
,URL 为https://<VSCA URL>/usergroup/t/CUSTOMER/scim/v2/Users
-
路由 3:路径为
/usergroup/t/CUSTOMER/scim/v2/Groups
,URL 为https://<VSCA URL>/usergroup/t/CUSTOMER/scim/v2/Groups
-
路由 4:路径为
/usergroup/t/CUSTOMER/scim/v2/Groups/{object*}
,URL 为https://<VSCA URL>/usergroup/t/CUSTOMER/scim/v2/Groups/${request.path[object]}
-
路由 5:路径为
/usergroup/t/CUSTOMER/scim/v2/Users/{object*}
,URL 为https://<VSCA URL>/usergroup/t/CUSTOMER/scim/v2/Users/${request.path[object]}
-
-
等待部署完成并复制端点 URL。
任务 6:在 OCI IAM 中更新 SCIM 应用程序
-
登录到 OCI 控制台,导航到身份和安全,选择您的域并导航到集成应用程序,选择您的通用 SCIM 持有者令牌应用程序,粘贴 OCI API 网关部署端点 URL。
注:确保仅使用主机名。
-
输入基本 URI 。
-
添加 vCenter 访问令牌。为此,您需要登录到 vCenter Server ,选择 vCenter 配置,生成并复制令牌。
-
将访问令牌粘贴到 SCIM 应用程序中,然后单击测试连接。
任务 7:将用户从 OCI IAM 同步到 vCenter
要指定将 OCI IAM 中的哪些用户推送到 vCenter 服务器,我们将将这些用户分配给 SCIM 应用程序。
-
登录到 OCI 控制台,导航到身份和安全,选择您的域并导航到集成的应用程序,选择您的 SCIM 应用程序,单击用户和分配用户。
-
现在在 vCenter 中为推送的用户验证并分配相应的权限。登录到 vCenter Server ,选择 vCenter 配置,单击单点登录中的用户和组,选择添加的域并验证用户。
任务 8:测试
-
在隐身浏览器中输入 vSphere URL,然后单击 LAUNCH VSPHERE CLIENT 。
-
在 vSphere 登录页面中,单击使用 OCI-IAM 登录。
-
请求将重定向到 OCI IAM 登录页。输入用户名和口令。
验证成功后,它将转到 vSphere 主页。
后续步骤
在本教程中,我们演示了如何将 OCI IAM 与 vSphere 集成以进行联合验证,允许用户通过集中身份提供者登录,以及 SCIM 预配,从而确保用户账户在两个系统之间高效同步。此集成可简化身份管理、增强安全性并提高管理员的运营效率。
相关链接
确认
- Authors — Gautam Mishra(首席云架构师)、Nikhil Verma(首席云架构师)
更多学习资源
浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Integrate vCenter Server Identity Provider Federation with OCI IAM for Oracle Cloud VMware Solution
G15242-02
September 2024