ProtoPie AI 已上线——现已进入 Beta 版。了解更多

ProtoPie AI 已上线——现已进入 Beta 版。了解更多

菜单

配置单点登录(SSO)

服务管理员可以为其 ProtoPie Enterprise 环境配置 SSO。

借助 SSO,成员可以通过所选的身份验证来源访问 ProtoPie,例如 Okta、Auth0 或 OneLogin。这些也称为身份提供商(IdP)。通过这种方式,公司可以集中管理对 ProtoPie Enterprise 的访问权限。

SSO 是一种身份验证方案,允许用户使用一组凭据登录应用和网站——无需管理多个用户名和密码。许多组织和企业已在其内部策略中纳入 SSO,以确保安全性和便利性。

ProtoPie Enterprise 支持两种 SSO 协议:

  • SAML 2.0

  • OpenID Connect(OIDC)——基于 OAuth 2.0

设置 SAML SSO

在 SAML 术语中,ProtoPie 是服务提供商(SP),需要与您的身份提供商(IdP)通信以进行身份验证。

要进行此设置,请将 ProtoPie 添加到您的 IdP。核心就是:在您的 IdP 中输入 ProtoPie 的 assertion consumer service URL(spAcsUrl),并在 ProtoPie 中输入您的 IdP 的 IdP Metadata URL。

  1. 前往 Service Admin Settings 中的 Authentication

  2. 启用 SAML。

  3. 复制 assertion consumer URL。


{'_type': 'localeString', 'en': 'sso saml', 'ja': 'sso saml', 'ko': 'sso saml', 'zh': 'sso saml'}

如何将应用添加到您的 IdP 会因 IdP 不同而有所差异。下面我们概述了使用 Okta 的步骤。

使用 Okta 的 SAML SSO

按照 ProtoPie School 的这个简单分步视频教程,使用 Okta 设置单点登录(SSO)。

或者,您也可以按照以下说明操作:

  1. 登录 Okta 并前往 Applications 页面。

  2. 点击左上角的 Add Application

  1. 点击右上角的 Create New App

  2. 选择 SAML 2.0 作为 Sign on method,然后点击 Create

  3. General Settings 下输入 ProtoPie 作为应用名称。为方便起见,上传 ProtoPie logo。然后点击 Next

  4. 针对 SAML Settings 执行以下操作。

    1. 将复制的 assertion consumer URL 粘贴到 Single sign on URLAudience URI (SP Entity ID) 两个字段中。

    2. Name ID format 选择为 EmailAddress

    3. Name 输入 firstNameValue 输入 user.firstName。然后点击 Add Another

    4. Name 输入 lastNameValue 输入 user.lastName

    5. 点击 Next

  5. 选择 I'm a software vendor. I'd like to integrate my app with Okta 并点击 Finish

  6. 在 Okta 的 ProtoPie 应用中分配用户。前往 ProtoPie 应用并点击 Assignments 选项卡。点击 Assign 按钮分配用户。

  7. 点击 Sign On 选项卡,然后点击 View Setup Instructions

  8. Identity Provider Single Sign-On URL 基本上就是您所需的 IdP Metadata URL。复制它。

  9. 返回 Service Admin Settings 中的 Authentication

  10. 如果您尚未启用,请启用 SAML。

  11. 将您复制的 IdP Metadata URL 粘贴到您的 IdP 中。

  12. 点击 Update

使用其他 IdP 的 SAML SSO

要使用其他 IdP 设置 SAML SSO,与 Okta 一样,请使用来自 ProtoPie 的 assertion consumer service URL(spAcsUrl)以及来自您的 IdP 的 IdP Metadata URL。关于如何添加新应用,请参考您所选 IdP 的文档。

使用 Azure AD 的 SAML SSO

  1. 登录 Azure 并访问 Azure Active Directory

  2. 在左侧选择 Enterprise applications


{'_type': 'localeString', 'en': 'Select Enterprise applications on the left.'}
  1. 选择 All applicationsNew application

{'_type': 'localeString', 'en': 'Select All applications → New application.'}
  1. Azure AD Gallery 中搜索并选择 Azure AD SAML Toolkit 以添加它。

  • 在 Name 字段中输入 ProtoPie。此外,您还可以选择上传 ProtoPie logo

{'_type': 'localeString', 'en': 'In Azure AD Gallery, search and select Azure AD SAML Toolkit to add it.'}
  1. 添加应用后,您可以按如下方式查看已添加应用的 Overview。然后可在 Getting Started 菜单中完成设置。

{'_type': 'localeString', 'en': 'Finalize the settings in the Getting Started menu'}
  1. 选择 Assign users and groups 菜单以设置用户或用户组。

{'_type': 'localeString', 'en': 'Select the Assign users and groups menu.'}
  1. 选择 Set up single sign-on 菜单开始配置 SSO。选择 SAML method

{'_type': 'localeString', 'en': 'Select SAML method.'}
  1. 选择 Basic SAML Configuration Edit 以输入数值。输入以下值。

  • Identifier(Entity ID):https://PROTOPIE_DOMAIN/sp

  • Reply URL(Assertion Consumer Service URL):https://PROTOPIE_DOMAIN/api/auth/callback/sso/saml

  • 这些值与 ProtoPie Admin Dashboard → Authentication → SAML → Assertion Consumer URL 中的值相同。

  • Sign on URL:https://PROTOPIE_DOMAIN/api/auth/login/sso/saml

{'_type': 'localeString', 'en': 'Set up SSO with SAML.'}
  1. 复制在 SAML Signing Certificate 中找到的 App Federation Metadata URL

{'_type': 'localeString', 'en': 'SAML Signing Certificate.'}
  1. 前往 ProtoPie Admin Dashboard 的 Authentication → SAML 菜单以启用 SAML,并输入以下值:

  • Authn Context:urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified

  • IdP URL(IdP Metadata URL):输入您在上一步复制的 App Federation Metadata URL

设置 OIDC SSO

OpenID Connect(OIDC)是一种构建在 OAuth 2.0 框架之上的身份验证协议。

按照 ProtoPie School 的这个简单分步视频教程来设置 OIDC SSO。

或者,您也可以按照以下说明操作。

要进行此设置,请将 ProtoPie 添加到您的 IdP。核心就是:在您的 IdP 中输入来自 ProtoPie 的回调 URL(loginUrl),并在 ProtoPie 中输入来自您的 IdP 的 authorization URL、token URL、client ID 和 client secret。

  1. 前往 Service Admin Settings 中的 Authentication

  2. 启用 OIDC。

  3. 复制回调 URL。

如何将应用添加到您的 IdP 会因 IdP 不同而有所差异。下面我们概述了使用 Okta 的步骤。

使用 Okta 的 OIDC SSO

  1. 登录 Okta 并前往 Applications 页面。

  2. 点击左上角的 Add Application

  3. 点击右上角的 Create New App 。

  4. 选择 OpenID Connect 作为 Sign on method 并点击 Create

  5. 在 General Settings 下输入 ProtoPie 作为应用名称。为方便起见,上传 ProtoPie logo。同时,将复制的 callback URL 粘贴到 Login redirect URIs 字段。然后点击 Save

  6. 在 Okta 的 ProtoPie 应用中分配用户。前往 ProtoPie 应用,并点击 Assignments 选项卡。点击 Assign 按钮分配用户。

  7. 点击 General 选项卡。复制这两项: client ID 和 client secret。

  8. 点击 Sign On 选项卡。您需要 Authorization URL 和 Token URL。这两个 URL 会因 IdP 而异。对于 Okta,Authorization URL 结构为 ${baseUrl}/oauth2/v1/authorize ,Token URL 结构为 ${baseUrl}/oauth2/v1/token 。将 OpenID Connect ID Token 下的 Issuer 用作 base URL。 了解更多 关于如何组合您的 base URL。

  9. 返回 Service Admin Settings 中的 Authentication

  10. 如果您尚未启用,请启用 OIDC。

  11. 输入 authorization URL、 token URL、 client ID 和 client secret。

  12. 点击 Update

使用其他 IdP 的 OIDC SSO

要使用其他 IdP 设置 OIDC SSO,与 Okta 一样,您需要来自 ProtoPie 的 Callback URL,以及来自您的 IdP 的 Authorization URL、Token URL、Client ID 和 Client Secret。关于如何添加新应用,请参考您所选 IdP 的文档。

管理成员

启用 SSO 后,仍需在 ProtoPie Enterprise 中管理您的成员。即使您在 IdP 中添加或移除用户,ProtoPie Enterprise 也不会自动反映这些更改。

如果您在 IdP 中更改了用户的电子邮件地址,请在 ProtoPie Enterprise 中进行相同更改。

常见问题

where-to-get-cert-data

我在哪里可以获取 Cert 数据?

ProtoPie(SP)目前不提供证书数据(X.509 证书)。

我们的服务会读取 IdP 提供的元数据,并在元数据中存在 X.509 证书时使用该证书。若不存在,则从作为 ACS URL 接收到的 SAML 响应中获取签名的 X.509 证书。

where-to-get-acs-url

我在哪里可以获取 ACS URL?

ProtoPie(SP)提供的 ACS URL 可以在管理员控制面板中按如下方式进行检查:“Assertion Consumer URL”。

i-signed-up-by-using-the-sso-can-i-log-in-by-using-email-password

我是通过 SSO 注册的。我可以使用电子邮件/密码登录吗?

如果未启用电子邮件/密码验证方式,则无法使用此方式登录。在服务管理设置的“身份验证”中启用电子邮件/密码后,您即可登录。

完成此流程后,成员可在“账户设置”中设置自己的密码。

does-protopie-enterprise-support-single-logout-slo

ProtoPie企业版是否支持单点注销(SLO)?

目前,ProtoPie企业版不支持单点注销(SLO)。

i-signed-up-to-protopie-but-my-first-and-last-names-are-different-from-those-in-idp

我注册了 ProtoPie,但我的名字和姓氏与 IdP 中的不一致。

如果您使用 SAML 或 OIDC 注册,名字和姓氏会自动加载到 IdP。

  • 如果 SAML 值显示不正确,请检查 IdP 中的 SAML 设置。

  • 对于 OIDC,如果该值显示不正确,请检查 IdP。

can-i-use-only-single-sign-on-instead-of-email-password

我可以只使用单点登录(SSO)而不使用电子邮件和密码吗?

如果需要,您可以使用两种验证方式中的任意一种。但是,您不能禁用所有验证方式。至少需要启用一种验证方式,即“电子邮件和密码”或 SSO。

若要仅启用 SSO 验证方式,需要将要更改配置的服务管理员设置为支持 SSO 登录。对于初始系统配置中采用“电子邮件和密码”方式设置的服务管理员,请参考以下步骤。

  1. 邀请一位将被设为服务管理员的新用户。

  2. 该用户通过 SSO 验证方式注册。

  3. 将受邀用户指定为服务管理员。

  4. 登录后,该用户禁用“电子邮件和密码”验证方式。

  5. (可选)将现有服务管理员角色更改为成员。

what-is-authn-context

什么是 AuthnContext(与 AuthnContextClassRef 相同)?

在 SAML 请求中,它是一种让 SP 请求 IDP 使用特定身份验证机制对用户进行身份验证的方式。这是可选的,取决于您的 IdP 的设置选项,并且需要您的 IdP 管理员确认。

  • urn:oasis:names:tc:SAML:2.0:ac:classes:X509

  • urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified

do-i-need-to-use-idp-not-protopie-enterprise-for-member-management

我是否需要使用 IdP 而不是 ProtoPie企业版来进行成员管理?

不,你不需要。即使你在 IdP 中添加或删除用户,这也不会自动反映到 ProtoPie 企业版。

what-is-the-entity-id-value

实体 ID 值是什么?

实体 ID 是 SAML 实体的全局唯一名称,即您的身份提供商(IdP)或服务提供商(SP)。实体 ID 就是名称。它不必是可解析的 Web 地址。 SAML 实体 ID 必须是一个 URI。

ProtoPie Enterprise 采用以下格式(ACS URL)

can-i-log-into-protopie-if-i-change-my-email-address-in-idp

如果我在 IdP 中更改了电子邮件地址,还能登录 ProtoPie 吗?

仅当 IdP 和 ProtoPie Enterprise 中注册的电子邮件地址相同时,系统才会将该用户识别为同一用户。因此,如果在 IdP 中更改电子邮件地址,您需要将 ProtoPie 中注册的电子邮件地址更改为与 IdP 中相同的地址。

当服务管理员更改所有成员的电子邮件地址时,请参考以下流程。

  1. 在 IdP 中更改除服务管理员账户之外的所有电子邮件地址。

  2. 由服务管理员在 ProtoPie 的管理仪表板中更改所有电子邮件地址。

  3. 服务管理员可前往 账户设置 → 个人资料,更改其自己的账户。

  4. 通过访问待更改电子邮件地址对应的邮件服务并查收确认邮件,完成电子邮件地址更改。

注意:如果服务管理员的验证方式设置为 SSO 登录,请按照此流程并更改 IdP 电子邮件地址。