将 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 与 Microsoft Entra ID 的集成,请首先将 SAP NetWeaver 从库中添加到托管 SaaS 应用列表。

配置并测试 Microsoft Entra 单一登录

若要配置 SAP NetWeaver 的 Microsoft Entra 单一登录,需要使用以下步骤:

  1. 配置 Microsoft Entra 单一登录 - 使用户能够使用此功能。
  2. 配置 SAP NetWeaver 单一登录 - 在应用程序端配置单一登录设置。
  3. 将 Microsoft Entra ID 测试用户分配给 Microsoft Entra 应用程序。
  4. 创建链接到其 Microsoft Entra 用户帐户的 SAP NetWeaver 用户。

配置 Microsoft Entra 单一登录

若要配置 SAP NetWeaver 的 Microsoft Entra 单一登录,请执行以下步骤:

  1. 打开新的 Web 浏览器窗口,以管理员身份登录到 SAP NetWeaver 公司站点。

  2. 请确保 http 和 https 服务处于活动状态,并确保已在 SMICM T-Code 中分配相应的端口。

  3. 登录到需要在其中进行 SSO 的 SAP 系统 (T01) 的业务客户端,并激活 HTTP 安全会话管理。

  4. 转到“事务代码 SICF_SESSIONS”。 查看所有配置文件参数。 根据组织要求进行调整,然后重启 SAP 系统。

  5. 双击相关客户端以启用 HTTP 安全会话。

  6. 激活以下 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(仅用于启用/禁用跟踪)
  7. 转到 SAP 系统 T01/122 的业务客户端中的“事务代码 SAML2”。 这将在浏览器中打开用户界面。

  8. 提供用户名和密码以进入用户界面,然后选择“编辑”。

  9. 将 T01122 中的“提供程序名称”更改为 ,然后选择“保存”<http://T01122>

  10. 默认情况下,提供程序名称的格式设置为 [sid][client] 格式,但 Microsoft Entra ID 预期的名称采用 protocol://[sid][client] 格式。 建议将提供程序名称保留为 https://[sid][client],以便在 Microsoft Entra ID 中配置多个 SAP NetWeaver ABAP 引擎

  11. 生成服务提供商元数据:在 SAML 2.0 用户界面上配置完“本地提供者和受信任的提供者”设置后,下一步涉及生成服务提供商的元数据文件(此文件将包含 SAP 中的所有设置、身份验证上下文和其他配置)。

  12. 在“本地提供者”选项卡上,选择“元数据”。

  13. 将生成的元数据 XML 文件保存在计算机上,并将其上传到“基本 SAML 配置”部分,以自动填充 Azure 门户中的“标识符”和“回复 URL”值。

  14. 在 Azure 门户中的“SAP NetWeaver 应用程序集成”页上,选择“单一登录”。

  15. 在“选择单一登录方法”对话框中,选择“SAML/WS-Fed”模式以启用单一登录。

  16. 在“设置 SAML 单一登录”页上,选择“编辑”图标以打开“基本 SAML 配置”对话框。

  17. 在“基本 SAML 配置”部分中,按照以下步骤操作:

    1. 选择“上传元数据文件”以上传之前获取的服务提供商元数据文件。
    2. 在文件夹徽标上选择以选择元数据文件,然后选择“上传”。
    3. 成功上传元数据文件后,“标识符”和“回复 URL”值会自动填充在“基本 SAML 配置”部分的文本框中,如下所示:
    4. 在“登录 URL”文本框中,键入使用以下模式的 URL:https://[你的 SAP NetWeaver 公司实例]
  18. SAP NetWeaver 应用程序需要特定格式的 SAML 断言。 声明包括姓氏、名字、电子邮件地址、名称和唯一用户标识符。 可以从应用程序集成页上的“用户属性”部分管理其值。

  19. 在“设置 SAML 单一登录”页上,选择“编辑”按钮以打开“用户属性”对话框。

  20. 在“用户属性”对话框中的“用户声明”部分,配置 SAML 令牌属性并执行以下步骤:

    1. 选择“编辑”图标以打开“管理用户声明”对话框。
    2. 从“转换”列表中,选择“ExtractMailPrefix()” 。
    3. 从“参数 1”列表中,选择“user.userprinicipalname”
    4. 选择“保存” 。
  21. 在“设置 SAML 单一登录”页的“SAML 签名证书”部分,选择“下载”,以根据要求从给定选项下载联合元数据 XML 并将其保存在计算机上。

  22. 在“设置 SAP NetWeaver”部分中,根据要求复制相应的 URL

    • 登录 URL
    • Microsoft Entra 标识符
    • 注销 URL

配置 SAP NetWeaver 单一登录

  1. 登录到 SAP 系统并转到事务代码 SAML2 。 它会打开一个新的浏览器窗口并显示 SAML 配置屏幕。

  2. 若要为受信任的标识提供者 (Microsoft Entra ID) 配置终结点,请转到“受信任的提供者”选项卡。

  3. 按“添加”,然后从上下文菜单选择“上传元数据文件”

  4. 上传已从 Azure 门户下载的元数据文件。

  5. 在下一屏幕中,键入任意“别名”。 请确保“摘要算法”应为“SHA-256”且无需进行任何更改,然后按“下一步”

  6. 在“单一登录终结点”上使用“HTTP POST”,然后选择“下一步”以继续操作。

  7. 在“单一注销终结点”上选择“HTTP 重定向”,然后选择“下一步”以继续操作。

  8. 在“项目终结点”上,按“下一步”以继续

  9. 接受“身份验证要求”上的默认设置,然后选择“完成”。

  10. 转到“受信任的提供者”选项卡,然后转到“联合身份验证”。

  11. 选择“编辑”。

  12. 在“联合身份验证”选项卡下选择“添加”。

  13. 从弹出窗口的“支持的 NameID”格式中选择“未指定”,然后选择“确定”。 用户 ID 源和用户 ID 映射模式值决定了 SAP 用户与 Microsoft Entra 声明之间的链接。

  14. 有两种可能的方案:

    • 方案:SAP 用户到 Microsoft Entra 用户映射。
    • 方案:根据 SU01 中配置的电子邮件地址选择 SAP 用户 ID。 在这种情况下,应在 su01 中为每个需要 SSO 的用户配置电子邮件 ID。
  15. 选择“保存”,然后选择“启用”,以启用标识提供者。

分配 Microsoft Entra 用户

在 Azure 门户中,依次选择“企业应用程序”、“所有应用程序”和“SAP NetWeaver”。 在应用程序列表中,选择“SAP NetWeaver” 。

创建 SAP NetWeaver 用户

  1. 若要使 Microsoft Entra 用户能够登录到 SAP NetWeaver,必须在 SAP NetWeaver 中预配它们。 与内部 SAP 专家团队或组织 SAP 合作伙伴合作,将用户添加到 SAP NetWeaver 平台中。
  2. 若要验证结果,请在激活标识提供者 Microsoft Entra ID 后访问 <https://sapurl/sap/bc/bsp/sap/it00/default.htm>(将 sapurl 替换为实际的 SAP 主机名)以检查 SSO。 系统不会提示你输入用户名和密码。