将 Microsoft Entra ID 与 SAP NetWeaver 集成
将 SAP NetWeaver 与 Microsoft Entra ID 集成具有以下优势:
- 在 Microsoft Entra ID 中可以控制谁有权访问 SAP NetWeaver。
- 可以让用户使用其 Microsoft Entra 帐户自动登录到 SAP NetWeaver(单一登录)。
- 可在中心位置(即 Azure 门户)管理帐户。
若要配置 Microsoft Entra 与 SAP NetWeaver 的集成,需要以下项:
- 一个 Microsoft Entra 订阅
- 已启用 SAP NetWeaver 单一登录的订阅
- 至少需要 SAP NetWeaver V7.20
SAP NetWeaver 支持 SP 启动的 SSO。
从库中添加 SAP NetWeaver
若要配置 SAP NetWeaver 与 Microsoft Entra ID 的集成,请首先将 SAP NetWeaver 从库中添加到托管 SaaS 应用列表。
配置并测试 Microsoft Entra 单一登录
若要配置 SAP NetWeaver 的 Microsoft Entra 单一登录,需要使用以下步骤:
- 配置 Microsoft Entra 单一登录 - 使用户能够使用此功能。
- 配置 SAP NetWeaver 单一登录 - 在应用程序端配置单一登录设置。
- 将 Microsoft Entra ID 测试用户分配给 Microsoft Entra 应用程序。
- 创建链接到其 Microsoft Entra 用户帐户的 SAP NetWeaver 用户。
配置 Microsoft Entra 单一登录
若要配置 SAP NetWeaver 的 Microsoft Entra 单一登录,请执行以下步骤:
打开新的 Web 浏览器窗口,以管理员身份登录到 SAP NetWeaver 公司站点。
请确保 http 和 https 服务处于活动状态,并确保已在 SMICM T-Code 中分配相应的端口。
登录到需要在其中进行 SSO 的 SAP 系统 (T01) 的业务客户端,并激活 HTTP 安全会话管理。
转到“事务代码 SICF_SESSIONS”。 查看所有配置文件参数。 根据组织要求进行调整,然后重启 SAP 系统。
双击相关客户端以启用 HTTP 安全会话。
激活以下 SICF 服务:
- /sap/public/bc/sec/saml2
- /sap/public/bc/sec/cdc_ext_service
- /sap/bc/webdynpro/sap/saml2
- /sap/bc/webdynpro/sap/sec_diag_tool(仅用于启用/禁用跟踪)
转到 SAP 系统 T01/122 的业务客户端中的“事务代码 SAML2”。 这将在浏览器中打开用户界面。
提供用户名和密码以进入用户界面,然后选择“编辑”。
将 T01122 中的“提供程序名称”更改为 ,然后选择“保存”
<http://T01122>
。默认情况下,提供程序名称的格式设置为 [sid][client] 格式,但 Microsoft Entra ID 预期的名称采用 protocol://[sid][client] 格式。 建议将提供程序名称保留为 https://[sid][client],以便在 Microsoft Entra ID 中配置多个 SAP NetWeaver ABAP 引擎。
生成服务提供商元数据:在 SAML 2.0 用户界面上配置完“本地提供者和受信任的提供者”设置后,下一步涉及生成服务提供商的元数据文件(此文件将包含 SAP 中的所有设置、身份验证上下文和其他配置)。
在“本地提供者”选项卡上,选择“元数据”。
将生成的元数据 XML 文件保存在计算机上,并将其上传到“基本 SAML 配置”部分,以自动填充 Azure 门户中的“标识符”和“回复 URL”值。
在 Azure 门户中的“SAP NetWeaver 应用程序集成”页上,选择“单一登录”。
在“选择单一登录方法”对话框中,选择“SAML/WS-Fed”模式以启用单一登录。
在“设置 SAML 单一登录”页上,选择“编辑”图标以打开“基本 SAML 配置”对话框。
在“基本 SAML 配置”部分中,按照以下步骤操作:
- 选择“上传元数据文件”以上传之前获取的服务提供商元数据文件。
- 在文件夹徽标上选择以选择元数据文件,然后选择“上传”。
- 成功上传元数据文件后,“标识符”和“回复 URL”值会自动填充在“基本 SAML 配置”部分的文本框中,如下所示:
- 在“登录 URL”文本框中,键入使用以下模式的 URL:https://[你的 SAP NetWeaver 公司实例]
SAP NetWeaver 应用程序需要特定格式的 SAML 断言。 声明包括姓氏、名字、电子邮件地址、名称和唯一用户标识符。 可以从应用程序集成页上的“用户属性”部分管理其值。
在“设置 SAML 单一登录”页上,选择“编辑”按钮以打开“用户属性”对话框。
在“用户属性”对话框中的“用户声明”部分,配置 SAML 令牌属性并执行以下步骤:
- 选择“编辑”图标以打开“管理用户声明”对话框。
- 从“转换”列表中,选择“ExtractMailPrefix()” 。
- 从“参数 1”列表中,选择“user.userprinicipalname”。
- 选择“保存” 。
在“设置 SAML 单一登录”页的“SAML 签名证书”部分,选择“下载”,以根据要求从给定选项下载联合元数据 XML 并将其保存在计算机上。
在“设置 SAP NetWeaver”部分中,根据要求复制相应的 URL。
- 登录 URL
- Microsoft Entra 标识符
- 注销 URL
配置 SAP NetWeaver 单一登录
登录到 SAP 系统并转到事务代码 SAML2 。 它会打开一个新的浏览器窗口并显示 SAML 配置屏幕。
若要为受信任的标识提供者 (Microsoft Entra ID) 配置终结点,请转到“受信任的提供者”选项卡。
按“添加”,然后从上下文菜单选择“上传元数据文件”。
上传已从 Azure 门户下载的元数据文件。
在下一屏幕中,键入任意“别名”。 请确保“摘要算法”应为“SHA-256”且无需进行任何更改,然后按“下一步”。
在“单一登录终结点”上使用“HTTP POST”,然后选择“下一步”以继续操作。
在“单一注销终结点”上选择“HTTP 重定向”,然后选择“下一步”以继续操作。
在“项目终结点”上,按“下一步”以继续。
接受“身份验证要求”上的默认设置,然后选择“完成”。
转到“受信任的提供者”选项卡,然后转到“联合身份验证”。
选择“编辑”。
在“联合身份验证”选项卡下选择“添加”。
从弹出窗口的“支持的 NameID”格式中选择“未指定”,然后选择“确定”。 用户 ID 源和用户 ID 映射模式值决定了 SAP 用户与 Microsoft Entra 声明之间的链接。
有两种可能的方案:
- 方案:SAP 用户到 Microsoft Entra 用户映射。
- 方案:根据 SU01 中配置的电子邮件地址选择 SAP 用户 ID。 在这种情况下,应在 su01 中为每个需要 SSO 的用户配置电子邮件 ID。
选择“保存”,然后选择“启用”,以启用标识提供者。
分配 Microsoft Entra 用户
在 Azure 门户中,依次选择“企业应用程序”、“所有应用程序”和“SAP NetWeaver”。 在应用程序列表中,选择“SAP NetWeaver” 。
创建 SAP NetWeaver 用户
- 若要使 Microsoft Entra 用户能够登录到 SAP NetWeaver,必须在 SAP NetWeaver 中预配它们。 与内部 SAP 专家团队或组织 SAP 合作伙伴合作,将用户添加到 SAP NetWeaver 平台中。
- 若要验证结果,请在激活标识提供者 Microsoft Entra ID 后访问
<https://sapurl/sap/bc/bsp/sap/it00/default.htm>
(将sapurl
替换为实际的 SAP 主机名)以检查 SSO。 系统不会提示你输入用户名和密码。