注意:
- 本教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure 免费套餐。
- 它对 Oracle Cloud Infrastructure 身份证明、租户和区间使用示例值。完成实验室后,请使用特定于云环境的那些值替换这些值。
设置 Oracle Cloud Infrastructure Identity and Access Management 与 PingOne 之间的单点登录
简介
通过在 PingOne 与 Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 之间设置单点登录 (SSO),OCI 管理员可以使用其 PingOne 凭证无缝登录到 OCI 控制台。
PingOne 充当身份提供者 (IdP),对用户进行身份验证并将安全身份验证令牌传递给 OCI IAM,该服务提供者 (SP)。通过此集成,管理员无需管理单独的 OCI 凭证,从而增强安全性并简化访问管理。
本教程介绍如何将 OCI IAM(充当服务提供商 (service provider,SP) 与 PingOne(充当 IdP)相集成。通过在 PingOne 和 OCI IAM 之间设置联盟,您可以通过 SSO 允许用户访问 OCI 中的服务和应用程序。
注:本教程特定于具有身份域的 OCI IAM。
目标
- 在 OCI IAM 和 PingOne 之间设置 SSO。
先决条件
-
访问 OCI 租户。有关详细信息,请参阅 Oracle Cloud Infrastructure 免费套餐。
-
OCI IAM 身份域的身份域管理员角色。有关更多信息,请参阅了解管理员角色。
-
启用了 PingOne SSO 服务的 PingOne 环境。您还需要以下角色之一:
- 组织管理员。
- 环境管理员。
- 客户端应用程序开发人员。
任务 1:从 OCI IAM 获取服务提供商元数据
您需要 OCI IAM 身份域中的 SP 元数据以导入您创建的安全断言标记语言 (Security Assertion Markup Language,SAML) PingOne 应用程序。OCI IAM 提供了一个直接 URL 来下载您使用的身份域的元数据。
要下载元数据,请执行以下步骤。
-
打开浏览器选项卡并输入 URL:
https://cloud.oracle.com
。 -
输入您的云账户名称(也称为租户名称),然后选择下一步。
-
选择要登录到的身份域。这是用于配置 SSO 的身份域。例如,
Default
。 -
使用您的用户名和密码登录。
-
打开 navigation(导航)菜单,然后选择 Identity & Security(身份和安全)。在身份下,选择域。
-
单击要在其中工作的身份域的名称。您可能需要更改区间以查找所需的域。依次单击设置和域设置。
-
在 "Access"(访问)签名证书下,检查 Configure client access(配置客户端访问)。选择 Save Changes 。这样,客户端无需登录域即可访问身份域的签名认证。
-
通过在面包屑导航线索中选择身份域名,返回到身份域概览。然后,依次单击安全性和身份提供者。单击导出 SAML 元数据。
-
确保选择了 Metadata file(元数据文件)。在具有自签名证书的元数据下,单击下载 XML 。将此项保存在您的计算机本地,这是 SP 元数据。
任务 2:创建 PingOne SAML 应用程序
在本任务中,我们将使用 PingOne 管理控制台在 PingOne 中创建 SAML 应用程序。
-
在浏览器中,使用以下 URL 登录到 PingOne:
https://console.pingone.com/index.html?env=<your_environment_ID>
-
在应用程序下,单击应用程序和 + 以添加新应用程序。
-
输入 Application name(应用程序名称)(例如
OCI Admin Console
),选择 Application Type(应用程序类型)作为 SAML Application(SAML 应用程序)并单击 Configure(配置)。 -
选择导入元数据,然后单击选择文件。选择保存在任务 1.9 中的 SP 元数据文件。如果看到 ACS URL 和 Entity ID 自动填充,则 XML 已正确解析。单击保存。
任务 3:配置 SAML 应用程序
为 PingOne SAML 应用程序设置 SSO,并下载 IdP 元数据。
在此任务中,我们将使用您之前保存的 SP 元数据文件,并设置属性映射。
-
单击应用程序 Configuration(配置),然后单击右上角的编辑符号。
-
在主题 NameID 格式中,将所选内容更改为
urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
,然后单击保存。 -
单击属性映射,然后单击右上角的编辑符号。
-
在 Attributes(属性)中,输入
saml_subject
,将 PingOne Mappings 更改为 Email Address(电子邮件地址),然后单击 Save(保存)。 -
单击概览,滚动到底部,然后单击下载元数据。将此项保存在您的计算机本地,这是 IdP 元数据。
-
打开或激活应用程序。
注:默认情况下,NameID 的值映射到 OCI IAM 中的用户名。
任务 4:设置验证策略和用户访问
对于联盟,我们建议设置 MFA 以及基于组或角色的访问控制。
-
单击策略,然后单击右上角的编辑符号。
-
单击 + 添加策略,分配与体系结构相关的策略,然后单击保存。
-
单击访问和右上角的编辑符号。
-
选择将有权访问应用程序的组。如果不想强制执行此限制,请跳过此步骤。
任务 5:为 OCI IAM 启用 PingOne 作为 IdP
对于这些步骤,您正在使用 OCI IAM。在此部分中,您将使用之前保存的 IdP 元数据文件,并设置属性映射。
-
在 OCI 控制台中,对于正在使用的域,依次选择安全性和身份提供者。
-
选择添加 IdP ,然后选择添加 SAML IdP 。
-
输入 SAML IdP 的名称,例如
PingOne
。选择下一步。 -
确保选择了导入身份提供者元数据。选择先前保存在身份提供者元数据中的
PingOnemetadata.xml
文件。选择下一步。 -
在映射用户身份中,设置以下各项:
- 在请求的 NameID 格式下,选择
Email address
。 - 在身份提供者用户属性下,选择
SAML assertion Name ID
。 - 在身份域用户属性下,选择
Username
。
- 在请求的 NameID 格式下,选择
-
选择下一步。
-
在复查并创建下,验证配置并选择创建 IdP 。
-
在 Activate IdP 下,单击 Activate ,然后在底部单击 Close 。
-
在安全性下,转到 IdP 策略并单击创建 IdP 策略。
-
提供名称并单击添加策略。例如:
PingOne IdP
-
单击添加 IdP 规则并输入名称。例如,
Default
。 -
在 Assign identity provider 中,选择 PingOne 。此外,您可以针对此 IdP 的特定组或排除用户。单击添加 IdP 规则和下一步。
-
(可选)如果需要将此策略限制为仅应用于某些应用程序,请在添加应用程序下添加它们。
-
选择关闭。
任务 6:测试 PingOne 与 OCI 之间的 SSO
注:要使此功能正常工作,SSO 用户必须同时存在于 OCI IAM 和 PingOne 中,并且具有有效的电子邮件地址。
在此任务中,您可以测试 OCI IAM 和 PingOne 之间的联合验证是否有效。
-
打开浏览器选项卡并输入 OCI 控制台 URL:
https://cloud.oracle.com
。 -
输入您的云账户名称(也称为您的租户名称),然后单击下一步。
-
选择已在其中配置 PingOne 联合的身份域。
-
在登录页中,您可以看到使用 PingOne 登录的选项。单击 PingOne 并将您重定向到 PingOne 登录页。
-
提供您的 PingOne 身份证明。
验证成功后,您将登录到 OCI 控制台。
确认
- 作者 — Tonmendu Bose(高级云工程师)
更多学习资源
浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Set up Single Sign-On Between Oracle Cloud Infrastructure Identity and Access Management and PingOne
G27812-01
March 2025
Copyright ©2025, Oracle and/or its affiliates.