ADFS OIDC 实施
最后更新于
最后更新于
对应的官方文档地址
本文是专门针对 Active Directory Federation Services (AD FS) 用于配置 OpenID 连接(OIDC) 方式的 SSO 登录的帮助。有关其他 OIDC IdP 方式配置 SSO 登录,或配置 SAML 2.0 方式的 Azure 的帮助,请参阅 OIDC 配置或 ADFS SAML 实施。
配置需要在 Bitwarden 网页密码库和 AD FS 服务器管理器中同时进行。在您继续进行操作时,我们建议您随时准备好并按照记录的顺序完成步骤。
如果您是直接从 OIDC 配置过来的,你应该已经创建了一个组织 ID 并打开了 SSO 配置界面。如果你没有,请参考那篇文章,为 SSO 创建一个组织 ID。
导航到您组织的管理 → 单点登录界面:
你不需要编辑此界面上的任何内容,但要保持打开以方便引用。
如果您是自托管 Bitwarden,您可以选择性使用成员解密选项。此功能默认情况下被禁用,因此现在继续使用主密码解密,并了解如何在配置完成并成功运行后开始使用 Key Connector。
在服务器管理器中,导航到 AD FS Management 并创建一个新的应用程序组:
1、在控制台树中,选择 Application Groups,然后从 Actions 列表中选择 Add Application Group。
2、在 Welcome 向导界面上,选择 Server application accessing a web API。
3、在 Server Application 界面上:
为服务器应用程序起一个 Name。
记下 Client Identifier。在后续步骤中需要此值。
指定一个 Redirect URI。对于云托管的客户,这始终是 https://sso.bitwarden.com/oidc-signin
。对于自托管实例,这取决于您配置的服务器 URL,例如 https://your.domain.com/sso/oidc-signin
。
4、在 Configure Application Credentials 界面上,记下 Client Secret。在后续步骤中需要此值。
5、在 Configure Web API 界面上:
为 Web API 起一个 Name。
将 Client Identifier 和 Redirect URI(参见步骤 3)添加到 Identifier list 中。
6、在 Apply Access Control Policy 界面上,为应用程序组设置适当的访问控制策略。
7、在 Configure Application Permissions 界面上,允许范围勾选 allatclaims
和 openid
。
8、完成添加应用程序组向导。
在服务器管理器中,导航到 AD FS Management 然后编辑已创建的应用程序组:
1、在控制台树中,选择 Application Groups。
2、在 Application Groups 列表中,右键单击已创建的应用程序组然后选择 Properties。
3、在 Applications 部分,选择 Web API 并选择 Edit... 。
4、导航到 Issuance Transform Rules 选项卡然后选择 Add Rule... 按钮。
5、在 Choose Rule Type 界面上,选择 Send LDAP Attributes as Claims。
6、在 Configure Claim Rule 界面上:
给规则起一个 Claim rule name。
从 LDAP Attribute 下拉列表中,选择 E-Mail-Addresses。
从 Outgoing Claim Type 下拉列表中,选择 E-Mail Address。
至此,您已经配置好了 AD FS 服务器管理器所需要的一切。回到 Bitwarden 网页密码库以配置以下字段:
完成这些字段的配置后,Save(保存)您的工作。
您可以通过激活单点登录身份验证策略来要求用户使用 SSO 登录。请注意,这需要先激活单一组织政策。了解更多。
配置完成后,通过导航到 https://vault.bitwarden.com 并选择 Enterprise Single Sign-On 按钮来进行测试:
输入已配置的组织标识符,然后选择 Log In。如果您的实施已成功配置,您将被重定向到 AD FS SSO 登录界面。使用 AD FS 凭据进行身份验证后,输入您的 Bitwarden 主密码以解密您的密码库!
字段 | 描述 |
---|---|
Authority
输入附加了 /adfs
的 AD FS 服务器的主机名称,例如 https://adfs.mybusiness.com/adfs
。
Client ID
Client Secret
Metadata Address
输入附加了 /.well-known/openid-configuration
的指定 Authority 值,例如 https://adfs.mybusiness.com/adfs/.well-known/openid-configuration
。
OIDC Redirect Behavior
选择 Redirect GET。
Get Claims From User Info Endpoint
如果您在 SSO 期间收到 URL 太长错误 (HTTP 414)、截断的 URL 和/或失败,请启用此选项。
Custom Scopes
定义要添加到请求中的自定义范围(逗号分隔)。
Custom User ID Claim Types
为用户标识(逗号分隔)定义自定义声明类型键。定义后,会在返回标准类型之前搜索自定义声明类型。
Custom Email Claim Types
为用户的电子邮件地址(逗号分隔)定义自定义声明类型键。定义后,会在返回标准类型之前搜索自定义声明类型。
Custom Name Claim Types
为用户的全名或显示名称(逗号分隔)定义自定义声明类型键。定义后,会在返回标准类型之前搜索自定义声明类型。
Requested Authentication Context Class Reference values
定义身份验证上下文类引用标识符(acr_values
)(以空格分隔)。按优先顺序列出 acr_values
。
Expected “acr” Claim Value in Response
定义 Bitwarden 在响应中期望和验证的 acr
声明值。