前页 | 后页 |
配置OpenID
此特征可从Enterprise Architect Release 14. 1中获得。
要使用户能够使用OpenID帐户log ,必须有支持“ OpenID 连接”标准的OpenID服务器。
Enterprise Architect 、专业云服务器和WebEA将使用这些设置。
访问
功能区 |
设置 > 安全 > 用户 > 接受OpenID身份验证 设置 > 安全 > 用户 >配置OpenID |
设置
字段 |
行动 |
---|---|
OpenID网址 |
输入OpenID服务器的发现 URL 的完整路径,减去标准的“/.well-known/openid-configuration”(这将自动附加)。 包括协议(http:// 或https ://),以及如果在端口端口(即不是 80 或 443)上运行的 https 端口。 您应该能够复制附加了“/.well-known/openid-configuration”的地址并在浏览器中打开它并查看基于文本的响应。 现在按下测试按钮并单击“使用OpenID登录”以打开浏览器并访问正确的地址。如果 URL 不正确或OpenID返回格式错误的配置响应,则会显示错误消息。 |
客户编号 |
OpenID需要配置客户端以允许Enterprise Architect使用其服务。在此处输入客户 ID。 OpenID提供商将允许您添加新客户端。建议将其命名为“ Enterprise Architect ”或“ WebEA ”或类似名称,以便于识别。 创建客户端后, OpenID提供者将向您提供客户端 ID,或允许您指定一个。 |
客户端密码 - (可选) |
一些OpenID客户端需要客户端密码来进一步保护请求。如果客户端需要密码,请在此处输入。它将被保存为加密值。 |
范围 |
输入返回包含所需信息的响应所需的OpenID范围。 A标准,'其它' 的范围是强制性的。其他常见的范围包括 'profile' 或 'email'。 |
声称与本地用户匹配 |
输入查询OpenID 'user_info' 时将返回的声明,该声明将用于将OpenID用户与现有模型用户登录进行匹配。 'Claims' 是OpenID服务器声称关于已验证用户的信息字段。大多数OpenID服务器允许对其进行自定义,因此可以将其设置为返回一个专门用于Enterprise Architect的声明字段(如果需要)。 注记:唯一保证对用户唯一的声明是“sub”。这是索赔的“主题”。对于新模型,这将是声明字段中的一个很好的默认设置。 对于模型中已经存在与OpenID匹配的用户的现有模型,建议使用某种“用户名”字段。在这种情况下,标准的 'preferred_username'、'email'(如果使用电子邮件,建议启用电子邮件验证)或自定义的 'EA 用户名' 都是有意义的。 如果使用“sub”以外的声明,则由OpenID服务器的维护者负责确保声明的唯一性和安全性,并确保用户不能编辑声明。 |
声称与本地组匹配 |
如果启用了附加设置“自动创建或修改窗口或OpenID用户”,则使用此选项。否则不使用。请参阅单点登录 (SSO) 选项帮助主题。 输入查询OpenID 'id_token' 或 'user_info' 时将返回的声明,该声明将用于将OpenID用户组与现有模型组进行匹配。 'Claims' 是OpenID服务器声称关于已验证用户的信息字段。大多数OpenID服务器允许对其进行自定义,因此可以将其设置为返回一个专门用于Enterprise Architect的声明字段(如果需要)。 OpenID标准没有指定任何关于用户组的内容。一些OpenID服务器内置了此功能,但仍需要启用,以便可以在“id_token”或“user_info”中返回组。返回的组可以是单个 JSON 字段,也可以是包含多个组名的 JSON 数组。 |
测试连接
完成所有字段后,按测试按钮。将弹出一个带有“登录到OpenID ”按钮A窗口。单击该按钮以打开 Web 浏览器以访问OpenID服务器身份验证页面。
提供有效的凭据并允许Enterprise Architect访问OpenID服务器帐户(这可能需要也可能不需要,具体取决于OpenID环境)。
如果成功,浏览器将自动关闭, Enterprise Architect将显示一个成功窗口,其中包含OpenID用户的详细信息,包括返回的任何组以及它们链接到的模型组。
注记Web 浏览器经常缓存用户会话或凭据,因此它们可能不会在随后的尝试中提示登录。
有效的“示例”响应示例
这是“KeyCloak” OpenID服务器的示例响应。
Claim to Match to Local User: username
Claim to Match to Local Groups: groups
{
“子”:“6da812c4-8f2c-400f-b602-13bab1d4605e”,
"address" :{},
“名称”:“示例Person ”,
"groups" :[
"EA 特殊用户",
《EA管理员》
],
"示例": "示例",
“family_name”:“ Person ”,
“电子邮件”:“[email protected]”,
"username" :“人”
}