将 Azure AD SSO 添加到 西门子Mendix 应用程序
您可能已经通过单点登录访问了应用程序。但是您知道它是如何集成的以及它是如何让您登录应用程序的吗?
在本次分享中,我将解释什么是 SSO,它是如何工作的,并指导您完成将 Azure AD 与 Mendix 应用程序集成以实现此 SSO 机制的步骤。
作为用户,我们希望不必记住访问每个应用程序的凭据。这就是我们可以实现 SSO 的地方,它解决了记住每个应用程序凭据的压力。
什么是SSO?
SSO 代表单点登录,它允许用户使用一组凭据访问多个服务。
在这里,我们将了解 Azure AD 与 西门子Mendix 应用程序的集成,该应用程序为用户提供 SSO 功能。
如果您想了解更多关于 SSO 的信息,请看下图:
这是其中涉及的过程
-
当用户尝试访问应用程序时,它会创建一个 SAML 请求并将其发送到身份提供者,例如:Azure Active Directory。
-
现在 IP 将验证用户并返回 SAML 响应。
-
西门子Mendix 应用程序验证 SAML 响应并允许用户登录应用程序。认证机制如上图所示。
下面我将借助SAML 模块在 西门子Mendix 应用程序中配置 身份提供者和服务提供者信息,以在 西门子Mendix 应用程序中实现上述过程。
只需按照以下步骤在您的应用中使用它
要开始集成过程,我们需要一个帐户来访问 Azure Active Directory。在 Microsoft 365 开发人员计划成员的帮助下创建具有完全管理员访问权限的开发人员帐户。
单击此处developer.microsoft.com/en-us/micro…以设置新的 Microsoft 365 E5 订阅。
要针对 Azure AD 对 Mendix 应用程序中的用户进行身份验证,我们需要在 Azure AD 管理控制台以及 Mendix 应用程序中进行基本设置。
在 Azure AD 中完成的基本设置步骤
步骤 1:使用开发人员帐户登录portal.azure.com/并打开 Azure Active Directory 概述。
第 2 步: 从菜单中单击企业应用程序, 然后单击创建自己的应用程序。
第 3 步: 单击设置单点登录选项并从单点登录方法中选择SAML。
第 4 步: 在基本 saml 配置部分输入沙盒 URL,不要忘记复制App Federation Metadata URL。
例如:
Identifier https ://yourappname-sandbox.mxapps.io/
Reply URL: https ://yourappname-sandbox.mxapps.io/SSO/
第 5 步: 单击用户和组以向用户提供此企业应用程序的访问权限。点击添加用户按钮选择用户如下图
西门子Mendix 应用程序中的基本设置步骤
第 1 步: 创建一个新的 Mendix 应用程序并下载 Saml Module 和 MxModelReflection Module。不要忘记在运行时设置下映射 Saml 启动微流程。
第 2 步:在导航中调用 Saml Configuration并输入 SP 配置详细信息。复制应用程序的 URL并将其粘贴到组织 URL。然后更新组织和联系人的详细信息并保存。
第 3 步: 单击新建按钮在 IDP 配置下输入 IDP 详细信息。将应用App Federation Metadata URL 粘贴到 URL 字段中,然后单击下一步。
第 4 步: 选择 “Allow IdP Initiated Authentication”,然后选择“Use Name ID”作为断言类型,如下所示。
第 5 步: 选择 account entity 和respected attribute.
第 6 步: 在用户配置部分,选择是以创建用户并映射用户角色。
第 7 步: 在 Just In time Provisioning 部分中,通过单击new 添加 2 个声明,然后搜索,如下所示****
1. Claim 1
Name :http: //schemas.xmlsoap.org/ws/2005/05/identity/claims/name
Name format: string
Friendly name: Email
2. Claim 2
Name: schemas.microsoft.com/identity/cl…
Name format: string
Friendly name: DisplayName
第 8 步:按照描述 创建上述声明并映射属性,如下所示:
第 9 步: 单击保存,然后单击切换激活以激活新的 IDP 配置。
第 10 步: 用户现在可以访问 SSO 登录 URL https://{yourappname}-sandbox.mxapps.io/SSO/ ,并且能够使用他们的 Azure AD 凭据登录。