前页 | 后页 |
演练:使用 Azure 的OpenID
本演练帮助您设置Enterprise Architect以使用 Azure 用户通过OpenID log到具有单点登录 (SSO) 的模型。
细节将详细介绍获得工作示例所需的最低设置。 Azure 中提供了许多额外的选项,可以根据组织的要求进行自定义。
本指南需要Enterprise Architect版本 16 或更高版本才能处理 ID 令牌中的声明,并允许根据其组成员身份自动创建新用户。
为Enterprise Architect添加应用注册
- 登录到 Azure 门户: https ://portal.azure.com/。
- 单击侧面菜单下拉菜单,然后单击“Azure活动目录”。
- 单击“应用程序注册”和“新注册”按钮。
- 填写表格。
- 为应用程序命名 - 当最终用户同意应用程序时,这将对他们可见(如果适用,管理员可以为应用程序提供全局同意)。
- 选择“单租户”单选按钮(除非您了解“多租户”的用法)。
- 重定向 URI:
- 从下拉选项中选择“公共客户端/本机(移动和桌面)”选项
-类型in 'http:// localhost :8888/openid/callback'
- 点击注册按钮。
应用程序详细信息:URL、客户端 ID
创建新的应用程序注册后,您应该会看到应用程序的详细信息。复制“应用程序(客户端)ID”。这将被粘贴到Enterprise Architect (此过程中的第 6 步)。
- 打开Enterprise Architect并打开模型;假设模型已设置为使用模型安全性。
- 使用有权编辑用户和组的帐户(例如“admin”)登录。
- 单击“设置 > 安全 > 用户”功能区选项。
- 在“全局选项”面板中选择“接受OpenID身份验证”复选框。
- 单击配置OpenID按钮。
- 粘贴复制的 'Application (client) ID' 到 'Client ID' 场地。
- 将“配置文件”添加到“范围” 字段以允许传回用户的全名。
- 将“offline_access”添加到“范围” 字段以允许用户使用“刷新令牌”自动刷新他们的身份验证令牌。
- 在本演练中,我们将匹配“upn”;在“声明与本地用户匹配”字段中输入“用户”。
- (可选)将“groups”添加到“Claim to Match to Local Groups”字段。请参阅本主题后面的“自动创建或修改窗口或OpenID用户”选项部分,了解如何使用组根据其OpenID组成员身份自动创建或修改用户。
- 选中“用于声明的使用ID 令牌”复选框。取消选中“使用用户信息进行声明”复选框。
(注记:在版本 16 或更高版本中,可以直接从 ID 令牌而不是通过用户信息现在获取声明。这有很多优点,包括更符合标准(用户现在信息端点中的声明是可选的并且不可在 Azure 中自定义)以及减少对OpenID提供程序的 Internet 调用次数。)
- 在 Azure 中,单击“端点” 。这列出了应用程序可以连接到 Azure 的 URL“端点”。
- 复制“ OpenID 连接元数据文档”的 URL,但排除“.well-known/openid-configuration”部分。
- 在Enterprise Architect中,将 URL 粘贴到“ OpenID URL”字段中。
添加 API 权限
- 单击“API 权限”。
- 点击“添加权限”。
- 单击“Microsoft Graph”。
- 单击“委派权限”。
- 选择“OpenId 权限”下的所有权限:“电子邮件”、“offline_access”、“openid”和“个人资料”。
声称与本地用户匹配
如果从OpenID提供者返回的声明与Enterprise Architect模型中的用户登录匹配, Enterprise Architect将log用户。应注意使用安全声明;也就是说,最终用户不能修改,只能由 Azure 系统的管理员修改。默认情况下,普通用户无法修改 UPN。
应该考虑使用哪个声明来匹配Enterprise Architect中的本地用户登录。 Microsoft 建议应使用稳定的GUID (例如“sub”或“oid”)以避免任何可能影响电子邮件、用户名或 UPN 的名称更改问题。但是,UPN 允许人类可读的用户登录,这可能更可取。
无需进一步配置,您就可以匹配 'oid' 或 'sub' 声明(由 Microsoft 推荐),因为它们总是在 ID 令牌中传回。要启用与用户的 UPN 或电子邮件地址的匹配,需要进一步配置。
如果要使用允许在Enterprise Architect中自动创建用户的选项,则还需要用户具有名字和姓氏,并将这些在令牌中传递回Enterprise Architect 。这些是需要手动选择的可选声明。
- 单击“令牌配置”。
- 单击“添加可选声明”。
- 选择“身份证”。
- 选择“family_name,given_name”。
- (可选)选择将用于匹配Enterprise Architect中的用户登录名的另一个声明。公共选项为“upn”、“email”、“verified_primary_email”。
对于本演练,选择“upn”。 - 点击“添加”。
将用户添加到 Azure
本演练将添加一个用户来演示OpenID身份验证。完整的用户设置不在本指南的范围内。
- 返回主“活动目录”部分,单击“用户”。
- 点击“新用户”。
- 填写新用户的详细信息。这里我们创建一个简单的测试用户:
-注记下密码
- 点击“创建”
在Enterprise Architect中测试配置
这足以在Enterprise Architect中获得一个简单的示例。
- 返回Enterprise Architect ,单击配置OpenID ... 窗口中的测试按钮。
- 点击“使用OpenID登录”。
这将弹出您的互联网浏览器并要求您log到您的 Microsoft账户(适用于 Azure)。 - 以新创建的用户身份登录。 (请注记,您的凭据可能已被浏览器log ;在执行此测试之前,请退出所有 Microsoft 服务并关闭您的浏览器。)
- 系统可能会提示您创建新密码。再次,为注记的登录记录新密码。
- 系统将提示您同意允许新的 Azure 应用访问您的个人资料。
(注记,Azure 中的管理员可以代表所有用户同意应用程序。)
- 浏览器现在将显示成功消息。您可以关闭浏览器并返回Enterprise Architect 。
- Enterprise Architect将显示一条成功消息,其中包含声明中匹配的详细信息。
- 单击成功消息上的确定按钮。
- 点击确定按钮 在配置OpenID窗口中保存设置。
将匹配用户添加到Enterprise Architect
使用匹配的“登录”字段将新用户添加到Enterprise Architect 。
- 选择“设置 > 安全 > 用户”功能区选项。
- 复制 Azure 用户的用户主体名称(UPN) 并将其粘贴到“登录”字段中。
- 名称中的类型(这不需要与 Azure 用户的名称匹配)。
- 单击保存按钮。
测试登录模型
- 关闭并重新打开Enterprise Architect 。
- 打开模型。
- 显示相同的OpenID身份验证屏幕;点击“使用OpenID登录”。
注意:如果出现标准登录 EA存储库对话框而不是OpenID身份验证对话框,请取消选择隐藏OpenID登录窗口选项:
- 如果需要,请在 Internet 浏览器中log Azure,然后关闭浏览器并返回到您现在以新用户身份登录的Enterprise Architect 。
- 您还可以在Enterprise Architect的右上角确认登录用户。登录用户的名称与用户安全选项的下拉菜单一起出现。
- 系统输出窗口将细节说明您尝试的登录。请注记“组”不匹配,因为在演练中此时尚未配置。
如果要启用“自动创建或修改窗口或OpenID用户”选项,请继续下一个 部分。
'自动创建或修改窗口或OpenID用户' 选项
此选项允许您在 Azure 中设置组,并将组链接到Enterprise Architect中的本地组。然后可以在用户首次尝试log时自动创建用户。新用户和现有用户将在log时更新其组成员身份,以匹配 Azure 中的链接组。
将组声明添加到 ID 令牌
与添加 UPN 和名称声明的方式类似,将组声明添加到 ID 令牌。
- 单击“Azure > Azure活动目录> 应用注册”选项。
- 单击您的新应用程序。
- 从侧边栏中选择“令牌配置”。
- 点击“添加群组声明”。
- 选择“安全组”。
- 展开 ID 部分。
- [可选] 与选择与Enterprise Architect登录名匹配的声明一样,应考虑用于将组与Enterprise Architect中的本地组匹配的声明。此处的默认选择是“组 ID”。这是一个可以轻松复制的GUID string ,即使组名更改也将保持不变。但是,在Enterprise Architect中查看链接时,不太清楚哪个组匹配,因此 sAMAccountName 设置之一可能更合适。在本指南中,我们将使用默认选择“组 ID” 。
- 单击添加按钮。
加新Azure Group
在‘青色活动目录’中:
- 从侧边栏菜单中选择“组”。
- 单击“新组”。
- 将“组类型”设置为“安全”。
- 组名称中的类型,例如“EA 用户”、“EA管理员”或“EA 只读”。
- 单击“未选择成员”以将测试用户添加到组中。
- 选择测试用户并单击“选择”。
- 点击“创建” 完成创建新组。
- 刷新组列表(最多可能需要 30 秒)。
- 复制组的“物件Id”以供下一步使用。
- 请参阅前面的应用程序详细信息:URL、客户端 ID部分。
Enterprise Architect中的链接组
- 开放Enterprise Architect 。
- 打开模型;取消OpenID登录并以管理员身份登录。
- 选择“设置 > 安全 > 组”功能区选项。
- 创建新组。名称和描述不需要与 Azure 中的名称匹配。
- 将粘贴组的“物件ID”粘贴到“ OpenID Group”字段中。
- 单击“保存”按钮以创建新组。
启用“自动创建或修改窗口或OpenID用户”选项:
- 关闭“组”选项卡。
- 选择“设置 > 安全 > 用户”功能区选项。
- 选择“自动创建或修改窗口或OpenID用户”选项。
现在是重新测试OpenID配置以检查 ID 令牌中是否存在组声明以及组链接是否正确的好时机。
- 单击“配置OpenID ...”选项。
- 如果 'groups' 尚未显示在 'Claim to Match to Local Groups' 字段中,请输入。
- 点击测试按钮。
- 点击“使用OpenID登录”。
- 如果浏览器需要,请登录到 Azure。
终点测试
测试“自动创建或修改窗口或OpenID用户” 选项:
- 关闭并重新打开Enterprise Architect 。
- 使用OpenID登录模型。系统输出窗口将指示任何用户的自动创建,以及基于链接的OpenID组的任何组分配。