JumpCloud SAML 实施

对应的官方文档地址

本文是专门针对 JumpCloud 用于配置 SAML 2.0 方式的 SSO 登录的帮助。有关其他 IdP 方式配置 SSO 登录的帮助,请参阅 SAML 2.0 配置

配置需要在 Bitwarden 业务门户和 JumpCloud 门户网站中同时进行。在您继续进行操作时,我们建议您随时准备好并按照记录的顺序完成步骤。

是 SSO 专业人士?请跳过本文中的说明,然后下载配置示例的截图以与您自己的配置进行比较。

📥 下载示例

打开业务门户

如果你是直接从 SAML 2.0 配置过来的,你应该已经创建了一个组织 ID 并打开了 SSO 配置界面。如果没有,请打开业务门户并导航到 SSO 配置界面:

SAML 2.0 配置

你不需要编辑此界面上的任何内容,但要保持打开以方便参考。

创建 JumpCloud SAML 应用程序

在 JumpCloud 门户网站中,从菜单中选择 SSO 并选择 🞤Add 图标:

添加 JumpCloud 应用程序

在搜索框中输入 Bitwarden 并选择 configure 按钮:

如果您更喜欢 SAML,或者想要更多地控制 NameID 格式和签名算法等内容,请改为创建 Custom SAML App

基本信息

General Info 部分,配置以下信息:

字段

描述

Display Label

为应用程序指定一个专用于 Bitwarden 的名称。

单点登录(SSO)配置

Single Sign-On Configuration 部分,配置以下信息:

字段

描述

IdP Entity ID

将此字段设置为唯一的、专用于 Bitwarden 的值,例如 bitwardensso_yourcompany.

SP Entity ID

将此字段设置为从 Bitwarden SSO 配置界面预先生成的 SP Entity ID。 对于云托管客户,其始终为 https://sso.bitwarden.com/saml2。对于自托管实例,这由您配置的服务器 URL 决定,例如为 https://your.domain.com/sso/saml2

ACS URL

将此字段设置为从 Bitwarden SSO 配置界面预先生成的 Assertion Consumer Service (ACS) URL。 对于云托管客户,其始终为 https://sso.bitwarden.com/saml2/your-org-id/Acs。对于自托管实例,这由您配置的服务器 URL 决定,例如为 https://your.domain.com/sso/saml2/your-org-id/Acs

仅对于自定义 SAML 应用程序

如果您创建了自定义 SAML 应用程序,您还需要配置以下 Single Sign-On Configuration 字段:

字段

描述

SAMLSubject NameID

指定将在 SAML 响应中作为 NameID 发送的 JumpCloud 属性。

SAMLSubject NameID Format

指定在 SAML 响应中发送的 NameID 的格式。

Signature Algoritm

选择用于签名 SAML 声明或响应的算法。

Sign Assertion

默认,JumpCloud 将对 SAML 响应进行签名。选中此框以签名 SAML 声明。

Login URL

指定用户通过 SSO 登录 Bitwarden 的 URL。 对于云托管客户,其始终为 https://vault.bitwarden.com/#/sso。对于自托管实例,这由您配置的服务器 URL 决定,例如为 https://your.domain.com/#/sso

属性

Single Sign-On ConfigurationAttributes 部分,构建以下 SP → IdP 属性映射。如果您在 JumpCloud 中选择了 Bitwarden App,则这些应该已经构建:

属性映射

完成后,选择 activate 按钮。

下载证书

应用程序激活后,再次使用 SSO 菜单选项打开已创建的 Bitwarden 应用程序。选择 IDP Certificate 下拉菜单并 Download certificate

下载证书

绑定用户群组

在 JumpCloud 门户网站中,从菜单中选择 User Groups

用户群组

创建一个专用于 Bitwarden 的用户群组,或打开所有用户默认用户群组。在任一情况下,选择 Applications 选项卡并对该用户群组创建的 Bitwarden SSO 应用程序开启访问权限:

绑定应用重新访问权限

或者,您可以直接从 SSO → Bitwarden Application 界面绑定对用户群组的访问。

回到业务门户

至此,您已经在 JumpCloud 门户网站中配置了所需的一切。回到 Bitwarden 业务门户以完成配置。

业务门户将配置分为两个部分:

  • SAML Service Provider Configuration(SAML 服务提供程序配置):确定 SAML 请求的格式。

  • SAML Identity Provider Configuration(SAML 身份提供程序配置):确定期望 SAML 响应的格式。

服务提供程序配置

根据在 JumpCloud 门户网站设置期间所选择的选项配置以下字段:

字段

描述

Name ID Format

如果您创建了自定义 SAML 应用程序,请将其设置为指定的 SAMLSubject NameID 格式内容。否则,请保留为 Unspecified

Outbound Signing Algorithm

Bitwarden 用于签名 SAML 请求的算法。

Signing Behavior

SAML 请求是否/何时将被签名。默认,JumpCloud 不要求对请求进行签名。

Minimum Incoming Signing Algorithm

如果您创建了自定义 SAML 应用程序,请将其设置为您选择的签名算法。否则,保留为 rsa-sha256

Want Assertions Signed

如果您创建了自定义 SAML 应用程序,并且您在 JumpCloud 中设置了 Sign Assertion 选项,请选中此框。否则,保留为未选中。

Validate Certificates

通过受信任的 CA 使用来自 IdP 的受信任和有效证书时,请选中此框。除非在 Bitwarden SSO 登录 docker 镜像中配置了适当的信任链,否则自签名证书可能会失败。

完成服务提供程序配置部分后,Save(保存)您的工作。

身份提供程序配置

身份提供程序配置通常需要你返回 JumpCloud 门户网站以获取应用程序的值:

字段

描述

Entity ID

输入您的 JumpCloud IdP Entity ID,这可以从 JumpCloud 单点登录(SSO)配置部分来获取。

Binding Type

设置为 Redirect

Single Sign On Service URL

输入您的 JumpCloud IdP URL,这可以从 JumpCloud 单点登录(SSO)配置部分来获取。

Single Log Out Service URL

SSO 登录当前还不支持 SLO。该选项计划用于将来的开发。

Artifact Resolution Service URL

对于 JumpCloud 实现,您可以将此字段留空。

X509 Public Certificate

黏贴已获取的证书,移除 -----BEGIN CERTIFICATE----------END CERTIFICATE-----。 多余的空格、回车符和其他多余的字符将导致证书验证失败

Outbound Signing Algorithm

如果您创建了自定义 SAML 应用程序,请将其设置为您选择的签名算法。否则,保留为 rsa-sha256

Allow Unsolicited Authentication Response

SSO 登录当前不支持未经请求(由 IdP 发起)的 SAML 声明。该选项计划用于将来的开发。

Disable Outbound Logout Requests

SSO 登录当前还不支持 SLO。该选项计划用于将来的开发。

Want Authentication Requests Signed

JumpCloud 是否要求 SAML 请求被签名。

完成身份提供程序配置部分后,Save(保存)您的工作。

测试配置

配置完成后,通过导航到 https://vault.bitwarden.com 并选择 Enterprise Single Sign-On 按钮来进行测试:

Enterprise Single Sign-On 按钮

输入已配置的组织标识符,然后选择 Log In。如果您的实现已成功配置,您将被重定向到 JumpCloud 的登录界面:

使用您的 JumpCloud 凭据进行身份验证后,输入您的 Bitwarden 主密码来解密您的密码库!