Okta SAML 实施
对应的官方文档地址
本文是专门针对 Okta 用于配置 SAML 2.0 方式的 SSO 登录的帮助。有关其他 IdP 方式配置 SSO 登录的帮助,请参阅 SAML 2.0 配置。
配置需要在 Bitwarden 网页密码库和 Okta 管理门户中同时进行。在您继续进行操作时,我们建议您随时准备好并按照记录的顺序完成步骤。
已经是 SSO 专家?跳过本文中的说明,然后下载示例配置,将里面的屏幕截图与您自己的配置进行比较。
⬇️下载示例
在网页密码库中打开 SSO
如果你是直接从 SAML 2.0 配置过来的,你应该已经创建了一个组织 ID 并打开了 SSO 配置界面。如果你没有,请参考那篇文章,为 SSO 创建一个组织 ID。
导航到您组织的管理 → 单点登录界面:
你不需要编辑此界面上的任何内容,但要保持打开以方便引用。
如果您是自托管 Bitwarden,您可以选择性使用成员解密选项。此功能默认情况下被禁用,因此现在继续使用主密码解密,并了解如何在配置完成并成功运行后开始使用 Key Connector。
创建 Okta 应用程序
在 Okta 管理门户中,从导航中选择 Applications → Applications。在应用程序界面,选择 Add Application 按钮:
选择 Create New App 按钮:
在 Create a New Application Integration 对话框中,从 Platform 下拉列表中选择 Web 然后选择 SAML 2.0 单选按钮:
选择 Create 按钮以继续进行配置。
常规设置
在 General Settings 界面,为应用程序指定一个唯一的、专用于 Bitwarden 的名称,然后选择 Next。
配置 SAML
在 Configure SAML 界面,配置以下字段:
字段 | 描述 |
---|---|
Single sign on URL | 将此字段设置为从 Bitwarden SSO 配置界面预先生成的 Assertion Consumer Service (ACS) URL。
对于云托管客户,其始终为 |
Audience URI (SP Entity ID) | 将此字段设置为从 Bitwarden SSO 配置界面预先生成的 SP Entity ID。
对于云托管客户,其始终为 |
Name ID format | 选择在 SAML 声明中使用的 SAML NameID format。默认为 Unspecified。 |
Application username | 选择用户用于登录 Bitwarden 的 Okta 属性。 |
高级设置
选择 Show Advanced Settings 链接并配置以下字段:
字段 | 描述 |
---|---|
Response | SAML 响应是否由 Okta 签名。 |
Assertion Signature | SAML 声明是否由 Okta 签名。 |
Signature Algorithm | 用于对响应和/或声明进行签名的签名算法,具体取决于设置为 Signed 的算法。默认为 |
Digest Algorithm | 用于对响应和/或声明进行签名的摘要算法,具体取决于设置为 Signed 的算法。此字段必须与已选择的 Signature Algorithm 匹配。 |
属性声明
在 Attribute Statements 部分,构建以下 SP → IdP 属性映射:
配置完成后,选择 Next 按钮进入 Feedback 界面然后选择 Finish。
获取 IdP 值
应用程序创建后,选择应用程序的 Sign On 选项卡,然后选择 View Setup Instructions 按钮:
保留此页面以备将来使用,或复制 Identity Provider Single Sign-On URL 和 Identity Provider Issuer 并下载 X.509 Certificate:
分配
导航到 Assignments 选项卡然后选择 Assign 按钮:
您可以使用 Assign to People 选项逐个用户地分配对应用程序的访问权限,或使用 Assign to Groups 选项来批量分配。
回到网页密码库
至此,您已经在 Okta 管理门户中配置了所需的一切。回到 Bitwarden 网页密码库来完成配置。
单点登录界面将配置分为两个部分:
SAML 服务提供程序配置将决定 SAML 请求的格式。
SAML 身份提供程序配置将决定用于 SAML 响应的预期格式。
服务提供程序配置
根据在 Okta 管理门户设置期间所选择的选项配置以下字段:
字段 | 描述 |
---|---|
Name ID Format | 将其设置为在 Okta 中指定的 NameID 格式。否则,请保留为 Unspecified。 |
Outbound Signing Algorithm | Bitwarden 用于签名 SAML 请求的算法。 |
Signing Behavior | SAML 请求是否/何时将被签名。 |
Minimum Incoming Signing Algorithm | 将其设置为在 Okta 中指定的 签名算法。 |
Want Assertions Signed | 如果您在 Okta 中将 Assertion Signature 字段设置为 Signed,请选中此框。 |
Validate Certificates | 通过受信任的 CA 使用来自 IdP 的受信任和有效证书时,请选中此框。除非在 Bitwarden SSO 登录 docker 镜像中配置了适当的信任链,否则自签名证书可能会失败。 |
完成服务提供程序配置部分后,Save(保存)您的工作。
身份提供程序配置
身份提供程序配置通常需要你返回 Okta 管理门户以获取应用程序的值:
字段 | 描述 |
---|---|
Entity ID | 输入您的 Identity Provider Issuer,这可以从 Okta 的 Sign On 设置界面选择 View Setup Instructions 按钮来获取。 |
Binding Type | 设置为 Redirect。Okta 目前不支持 HTTP POST。 |
Single Sign On Service URL | 输入您的 Identity Provider Single Sign-On URL,这可以从 Okta 的 Sign On 设置界面获取。 |
Single Log Out Service URL | SSO 登录当前还不支持 SLO。该选项计划用于将来的开发。但是您可以根据需要预先配置它。 |
Artifact Resolution Service URL | 对于 Okta 实现,您可以将此字段留空。 |
X509 Public Certificate | 黏贴已下载的证书,移除 |
Outbound Signing Algorithm | 选择在 Okta 应用程序配置期间选择的签名算法。如果您没有更改签名算法,请将其保留为默认 ( |
Allow Unsolicited Authentication Response | SSO 登录当前不支持未经请求(由 IdP 发起)的 SAML 声明。该选项计划用于将来的开发。 |
Disable Outbound Logout Requests | SSO 登录当前还不支持 SLO。该选项计划用于将来的开发。 |
Want Authentication Requests Signed | Okta 是否要求 SAML 请求被签名。 |
完成身份提供程序配置部分后,Save(保存)您的工作。
您可以通过激活单点登录身份验证策略来要求用户使用 SSO 登录。请注意,这需要先激活单一组织政策。了解更多。
测试配置
配置完成后,通过导航到 https://vault.bitwarden.com 并选择 Enterprise Single Sign-On 按钮来进行测试:
输入已配置的组织标识符,然后选择 Log In。如果您的实施已成功配置,您将被重定向到 Okta 的登录界面:
使用您的 Okta 凭据进行身份验证后,输入您的 Bitwarden 主密码来解密您的密码库!
最后更新于