# Typesense Cloud 中的单点登录 (SSO)

在 Typesense Cloud 中,您可以集成任何基于 SAML 的单点登录平台,让组织内的指定用户使用他们现有的 SSO 凭证访问您的团队账户

我们的 SAML 集成与平台无关

我们已经测试了与主流 SSO 供应商的 SAML 集成,包括 Okta、Azure Active Directory、Microsoft Entra ID、JumpCloud、Google SSO 和 Rippling SSO, 但您可以将任何提供基于 SAML 的 SSO 的供应商与 Typesense Cloud 集成。

# SSO 的费用是多少?

我们认为良好的安全性不是可选功能,因此我们向所有团队免费提供 SSO 功能,不收取额外费用。

# 如何配置 SSO

以下是为 Typesense Cloud 中的团队设置 SSO 的步骤:

# 第一步:创建团队

  1. 使用常规的邮箱/密码认证方式在 Typesense Cloud (opens new window) 上注册账号。
  2. 点击页面右上角的邮箱地址(会打开账户切换器),然后点击"新建团队"。
  3. 为团队命名,填写联系邮箱,点击"创建团队"。
  4. 出于安全和验证目的,在团队账户配置SSO之前,我们需要记录有效的支付方式(即使SSO功能不会额外收费)。 因此创建团队后,请点击顶部导航栏的"account",滚动到"Billing"部分,为团队账户添加支付方式。

现在我们需要配置您的SSO平台以继续设置。

基于GitHub的认证

如果您已使用GitHub认证,并通过GitHub组织创建了Typesense Cloud团队,将无法在该团队上配置SSO。

您需要使用邮箱/密码认证方式注册新账号,然后在该登录下创建新团队并为该团队配置SSO。 如果您联系客服支持,在为新账户添加支付方式后,我们可以将现有团队账户中的集群迁移至您的新团队账户。

# 第二步:配置您的 SSO 平台

  1. 根据 SSO 平台的文档创建一个新"应用",并将应用命名为"Typesense Cloud - <您的团队名称>"。如果您只有一个团队,也可以直接命名为"Typesense Cloud"。

    注意:您在 SSO 平台中授予此应用访问权限的任何用户,都将能够登录 Typesense Cloud 并自动访问您上面创建的团队。

  2. 在 SSO 平台中为以下值使用任意占位符(我们稍后会回来填写这些内容):

    • SP 单点登录 URL(在某些 SSO 平台中也称为回复 URL 或断言消费者服务 URL)
    • SP 实体 ID(在某些 SSO 平台中也称为受众 URI)
  3. 使用此图片作为 SSO 应用的徽标,以便您的用户可以在 SSO 门户中轻松识别该应用。

  4. 在您的 SSO 应用中启用响应断言签名。该选项通常位于"高级"设置下,且通常默认已启用。

  5. 创建应用后,您的 SSO 平台应提供以下信息:

    • IdP 单点登录 URL(在某些 SSO 平台中也称为身份提供商单点登录 URL 或登录 URL)
    • IdP 实体 ID(在某些 SSO 平台中也称为身份提供商颁发者或 AD 标识符)
    • IdP 证书(在某些 SSO 平台中也称为身份提供商 X.509 证书或令牌签名证书)- 采用 base64 格式(应以 -----BEGIN CERTIFICATE----- 开头并以 -----END CERTIFICATE----- 结尾)

我们现在将继续在 Typesense Cloud 中进行设置。

# 步骤3:配置Typesense Cloud使用您的SSO平台

  1. 在步骤1中为团队账户添加付款方式后,再次点击顶部导航栏的"account"页面,滚动至"Team Management"部分,点击"Configure SSO"。
  2. 点击"Setup New Identity Provider"。
  3. 将您在步骤2中从SSO平台获得的值,填入Typesense Cloud对应的字段中。
  4. 点击"Create"
  5. Typesense Cloud现在会提供实际值,用于替换您在步骤2中使用的占位值。这些值需要在您的SSO平台中使用。

现在我们将完成SSO平台的最终配置。

# 步骤4:将SSO平台与Typesense Cloud关联

  1. 将Typesense Cloud中显示的"Service Provider Entity ID"复制粘贴到SSO平台的SP Entity ID字段(在某些SSO平台中也称为Audience URI)。
  2. 将Typesense Cloud中显示的"Assertion Consumer Service URL"复制粘贴到SP Single Sign-On URL字段(在某些SSO平台中也称为Reply URL)。
  3. 根据SSO平台的文档,配置您的SSO应用发送以下属性及其对应的数据类型:
    • email(格式:未指定,命名空间:空)
    • first_name(格式:未指定,命名空间:空)
    • last_name(格式:未指定,命名空间:空)

针对Rippling SSO

请设置:

  • "Disable automatic standardization of attributes"为"Yes"。
  • "Use SAML standard namespaces for xml metadata/attributes"为"Yes"。

一次性配置至此完成。

# 如何通过SSO登录

配置SSO后,有两种方式可以登录Typesense Cloud。

# 选项1:Typesense Cloud 发起的登录

这通常也被称为服务提供商(SP)发起的SSO。

你可以在Typesense Cloud中找到一个唯一的SSO登录链接,可以将该链接分享给你的团队(或在SSO平台中设置为书签),以便团队成员登录并访问你们的Typesense Cloud团队:

  1. 作为管理员,使用右上角的账户切换器切换到你的团队账户
  2. 滚动到"团队管理"部分,点击"配置SSO"
  3. 点击你之前配置的SSO平台
  4. 滚动到"面向用户的信息"部分,你会找到"单点登录URL",你的用户可以使用该URL登录

访问此链接会将用户重定向到你配置的SSO平台,如果SSO平台允许,则会自动登录用户。

# 选项2:SSO平台发起的登录

这通常也被称为身份提供商(IdP)发起的SSO。

你的用户可以直接访问组织的SSO门户,然后点击Typesense Cloud应用进行登录。

# 访问控制

# 如何授予用户访问权限

在 Typesense Cloud 中为团队配置 SSO 后,要添加新用户,您只需在您的 SSO 平台中授予他们对 SSO 应用的访问权限。

当您在 SSO 平台授权访问 Typesense Cloud 的用户首次登录 Typesense Cloud 时,我们将自动为他们创建新用户账户,并将其账户添加到您的 Typesense Cloud 团队中。 因此您无需每次都显式地在 Typesense Cloud 中配置用户。

TIP

通过 SSO 创建的账户与使用邮箱/密码登录的账户相互独立,即使它们使用相同的邮箱地址。

因此当用户通过 SSO 登录时,他们之前基于邮箱/密码的账户(如果创建过)仍将保持活跃。 但您可以从团队的账户页面移除这些账户对团队账户的访问权限。 您会看到他们的 SAML 账户和基于邮箱/密码的账户,需要移除的是后者。

完成此操作后,用户将只能通过 SSO 访问您的团队账户。

# 如何移除用户

从您的 SSO 平台移除用户的访问权限将在_下次会话_时移除他们对 Typesense Cloud 的访问权限。 如果您需要立即撤销访问权限,您还需要前往 Typesense Cloud 的团队账户页面,在"团队管理"部分移除该用户。

# 基于角色的访问控制

您可以为团队中的每个用户分配具有不同权限的角色,但这需要在 Typesense Cloud 内部完成。

阅读这篇关于基于角色的访问控制的专门指南文章获取更多信息。

# 有问题?

如有任何疑问或遇到问题,请发送邮件至 support@typesense.org 联系我们。