本文介绍如何将 SAP Fiori 与 Microsoft Entra ID 集成。 将 SAP Fiori 与 Microsoft Entra ID 集成后,可以:
- 在 Microsoft Entra ID 中控制谁有权访问 SAP Fiori。
- 让用户能够使用其 Microsoft Entra 帐户自动登录到 SAP Fiori。
- 在一个中心位置管理帐户。
先决条件
本文中概述的方案假定你已具备以下先决条件:
- 已启用 SAP Fiori 单一登录 (SSO) 的订阅。
方案说明
本文中,您将在测试环境中配置并测试 Microsoft Entra SSO。
- SAP Fiori 支持 SP 发起的 SSO
注释
对于 SAP Fiori 启动的 iFrame 身份验证,我们建议在 SAML AuthnRequest 中使用 IsPassive 参数进行无提示身份验证。 有关 IsPassive 参数的详细信息,请参阅 Microsoft Entra SAML 单一登录信息。
从库中添加 SAP Fiori
若要配置 SAP Fiori 与 Microsoft Entra ID 的集成,需要从库中将 SAP Fiori 添加到托管 SaaS 应用列表。
- 至少以云应用程序管理员身份登录到 Microsoft Entra 管理中心。
- 请导航到 Entra ID>企业应用>新应用。
- 在“从库中添加”部分的搜索框中,键入“SAP Fiori” 。
- 从结果面板中选择“SAP Fiori”,然后添加该应用 。 请稍等几秒钟,应用程序将被添加到您的租户中。
或者,也可以使用企业应用配置向导。 在此向导中,还可以将应用程序添加到租户、将用户/组添加到应用、分配角色以及演练 SSO 配置。 了解有关 Microsoft 365 助手的更多信息。
配置并测试 SAP Fiori 的 Microsoft Entra SSO
使用名为 B.Simon 的测试用户配置并测试 SAP Fiori 的 Microsoft Entra SSO。 若要使 SSO 正常工作,需要在 Microsoft Entra 用户与 SAP Fiori 中的相关用户之间建立关联。
若要配置并测试 SAP Fiori 的 Microsoft Entra SSO,请执行以下步骤:
-
配置 Microsoft Entra SSO - 使用户能够使用此功能。
- 创建 Microsoft Entra 测试用户 - 使用 B.Simon 测试 Microsoft Entra 单一登录。
- 分配 Microsoft Entra 测试用户 - 使 B.Simon 能够使用 Microsoft Entra 单一登录。
-
配置 SAP Fiori SSO - 在应用程序端配置单一登录设置。
- 创建 SAP Fiori 测试用户 - 在 SAP Fiori 中创建与 B.Simon 对应的账户,该账户链接到 Microsoft Entra 用户。
- 测试 SSO - 验证配置是否正常工作。
配置 Microsoft Entra SSO
按照以下步骤启用 Microsoft Entra SSO。
打开新的 Web 浏览器窗口,以管理员身份登录 SAP Fiori 公司站点。
请确保“http”和“https”服务处于活动状态,并且已对事务代码 SMICM 分配相关端口 。
登录适用于 SAP 系统 T01 的 SAP Business Client(需要单一登录) 。 然后,激活 HTTP 安全会话管理。
转到事务代码“SICF_SESSIONS” 。 所有具有当前值的相关配置文件参数都将显示。 这些参数应与以下示例类似:
login/create_sso2_ticket = 2 login/accept_sso2_ticket = 1 login/ticketcache_entries_max = 1000 login/ticketcache_off = 0 login/ticket_only_by_https = 0 icf/set_HTTPonly_flag_on_cookies = 3 icf/user_recheck = 0 http/security_session_timeout = 1800 http/security_context_cache_size = 2500 rdisp/plugin_auto_logout = 1800 rdisp/autothtime = 60注释
根据组织要求调整参数。 上述参数仅作为示例。
如有必要,请在 SAP 系统的实例(默认)配置文件中调整参数并重启 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 (This is only to enable / disable trace)
转到 SAP 系统 [T01/122] 的 Business Client 中的事务代码“SAML2” 。 配置 UI 将在新浏览器窗口中打开。 在本示例中,我们使用适用于 SAP 系统 122 的 Business Client。
输入用户名和密码,然后选择“登录” 。
在“提供程序名称”框中,将“T01122”替换为“”,然后选择“保存”。
注释
默认情况下,提供程序名称的格式为 <sid><client>。 Microsoft Entra ID 要求的名称格式为 <protocol>://<name>。 我们建议将提供程序名称的格式保留为 https://<sid><client>,以便可在 Microsoft Entra ID 中配置多个 SAP Fiori ABAP 引擎。
选择“本地提供程序”选项卡“元数据” 。
在“SAML 2.0 元数据”对话框中,下载生成的元数据 XML 文件并将其保存在计算机上 。
至少以云应用程序管理员身份登录到 Microsoft Entra 管理中心。
浏览到 Entra ID>企业应用程序>SAP Fiori>单点登录。
在“选择单一登录方法”页上选择“SAML” 。
在 “使用 SAML 设置单一登录 ”页上,选择 基本 SAML 配置的 铅笔图标以编辑设置。
在 基本 SAML 配置 部分中,如果您拥有 服务提供商的元数据文件,请执行以下步骤:
选择“上传元数据文件”。
选择 文件夹徽标 以选择元数据文件,然后选择“ 上传”。
成功上传元数据文件后,“标识符”和“回复 URL”值会自动填充在“基本 SAML 配置”窗格中 。 在“登录 URL” 框中,输入具有以下模式的 URL:。
注释
某些客户遇到了为其实例配置的回复 URL 不正确的错误。 如果你收到了任何此类错误,请使用这些 PowerShell 命令。 首先使用回复 URL 更新应用程序对象中的回复 URL,然后更新服务主体。 使用 Get-MgServicePrincipal 获取服务主体 ID 值。
$params = @{ web = @{ redirectUris = "<Your Correct Reply URL>" } } Update-MgApplication -ApplicationId "<Application ID>" -BodyParameter $params Update-MgServicePrincipal -ServicePrincipalId "<Service Principal ID>" -ReplyUrls "<Your Correct Reply URL>"
SAP Fiori 应用程序需要特定格式的 SAML 断言。 为此应用程序配置以下声明。 要管理这些属性值,请在“设置 SAML 单一登录”窗格中,选择“编辑” 。
在 “用户属性和声明 ”窗格中,配置 SAML 令牌属性,如上图中所示。 然后完成以下步骤:
选择“编辑”以打开“管理用户声明”窗格 。
在“转换”列表中,选择“ExtractMailPrefix()” 。
在“参数 1”列表中,选择“user.userprincipalname” 。
选择“保存”。
在“使用 SAML 设置单一登录”页的“SAML 签名证书”部分中找到“联合元数据 XML”,选择“下载”以下载该证书并将其保存在计算机上 。
在“设置 SAP Fiori”部分中,根据要求复制相应 URL 。
创建和分配 Microsoft Entra 测试用户
请遵循创建和分配用户帐户快速指南中的指引,创建一个名为 B.Simon 的测试用户帐户。
配置 SAP Fiori 单一登录
登录到 SAP 系统并转到事务代码 SAML2 。 将打开显示 SAML 配置页面的新浏览器窗口。
若要为受信任的身份提供者(Microsoft Entra ID)配置端点,请选择“受信任的提供者”选项卡。
选择“添加”,然后从上下文菜单选择“上传元数据文件” 。
上传已下载的元数据文件。 选择“下一步”。
在下一页的“别名”框中,输入别名 。 例如:aadsts 。 选择“下一步”。
确保“摘要算法”框中的值为 SHA-256 。 选择“下一步”。
在“单一登录终结点”下,选择“HTTP POST”,然后选择“下一步” 。
在“单一注销终结点”下,选择“HTTP 重定向”,然后选择“下一步” 。
在“项目终结点”下,选择“下一步”以继续 。
在“身份验证要求”下,选择“完成” 。
选择“受信任的提供程序”“联合身份验证”(页面底部) 。 选择 编辑。
选择 并添加。
在“支持的 NameID 格式”对话框中,选择“未指定” 。 选择“确定”。
用户 ID 源和用户 ID 映射模式的值确定 SAP 用户与 Microsoft Entra 声明之间的链接。
方案 1:SAP 用户到 Microsoft Entra 用户映射
在 SAP 中的“NameID 格式的详细信息 “未指定””下,请注意以下详细信息 :
在 Azure 门户中的用户 属性和声明下,记下Microsoft Entra ID 中所需的声明。
场景 2:根据 SU01 中配置的电子邮件地址选择 SAP 用户 ID。 在这种情况下,应在 SU01 中为每个需要 SSO 的用户配置电子邮件 ID。
在 SAP 中的“NameID 格式的详细信息 “未指定””下,请注意以下详细信息 :
在 Azure 门户中的用户 属性和声明下,记下Microsoft Entra ID 中所需的声明。
选择“保存”,再选择“启用”以启用标识提供程序 。
出现提示时选择“确定” 。
创建 SAP Fiori 测试用户
在本部分,我们将在 SAP Fiori 中创建名为 Britta Simon 的用户。 与内部 SAP 专家团队或组织 SAP 合作伙伴合作,以便在 SAP Fiori 平台中添加用户。
测试 SSO
在 SAP Fior 中激活身份提供程序 Microsoft Entra ID 后,请尝试访问以下一个 URL 以测试单一登录(不应看到输入用户名和密码的提示):
https://<sap-url>/sap/bc/bsp/sap/it00/default.htmhttps://<sap-url>/sap/bc/bsp/sap/it00/default.htm
注释
将
<sap-url>替换为实际的 SAP 主机名。测试 URL 应将你转到 SAP 中的如下测试应用程序页面。 如果页面打开,则表明已成功设置 Microsoft Entra 单一登录。
如果系统提示输入用户名和密码,请启用跟踪以帮助诊断问题。 使用以下 URL 进行跟踪:
https://<sap-url>/sap/bc/webdynpro/sap/sec_diag_tool?sap-client=122&sap-language=EN#。
相关内容
配置 SAP Fiori 后,可强制实施会话控制,实时防止组织的敏感数据外泄和渗透。 会话控制是条件访问的延伸。 了解如何通过 Microsoft Defender for Cloud Apps 强制实施会话控制。