使用 OpenID Connect 设置单点登录
标签页
PlatoForms 可以与任何支持 OpenID Connect 的身份提供商一起使用,例如 Auth0、Keycloak、OneLogin 或 Ping Identity。当您的提供商没有自己的指南时,请使用此指南。
有关单点登录页面的概述,请参阅单点登录 (SSO)。有针对 Okta 和 Microsoft Entra ID 的单独指南。
开始之前
- 您可以在您的身份提供商处创建一个 OpenID Connect 应用程序。
- 在 PlatoForms 中,您是团队所有者或具有 管理成员 访问权限的成员。
- 在 PlatoForms 中,打开您的团队菜单并选择 单点登录。在 连接 选项卡中,选择 其他(OpenID Connect)。
您的身份提供商的值
在您的提供商处创建一个使用 授权代码 流的 Web 应用程序,并输入 2. 您的身份提供商的值 中的值:
- 登录重定向 URI: 您的提供商将用户发送回的位置。其他名称:重定向 URI,回调 URL。
- 启动登录 URI(启动 URL): 可选。将其用作应用程序图块的登录 URL,以便单击图块即可在 PlatoForms 开始登录。
允许 openid、profile 和 email 范围。
您的身份提供商的值
在 3. 来自您的身份提供商的值 下,输入:
- 发行者 URL: 您的提供商的发行者地址。PlatoForms 从此地址下的
/.well-known/openid-configuration读取提供商的设置,因此请按照您的提供商显示的内容准确粘贴发行者。 - 客户端 ID 和 客户端密钥: 从您创建的应用程序中获取。密钥是加密存储的,不会再次显示。
点击 保存连接。
如果您的提供商使用的声明名称与 email、given_name 和 family_name 不同,请在 高级:范围和声明名称 下输入它们。
验证您的域,测试并开启
-
在 电子邮件域 选项卡上,添加您的公司域,在您的 DNS 提供商处创建 PlatoForms 显示的 TXT 记录,然后点击 验证。
-
在状态卡中,点击 测试连接。一个窗口通过您的提供商登录并显示 PlatoForms 接收到的电子邮件、名称和声明名称。如果名称或电子邮件缺失,请使用这些名称来纠正映射。
-
点击 开启单点登录。
请参阅登录规则以要求单点登录或允许新成员自动加入。
技术细节
- PlatoForms 使用带有 PKCE 和客户端密钥的授权代码流。
- ID 令牌根据您的发行者发布的签名密钥进行验证。
- 发行者 URL 必须是公共的
https地址。 - PlatoForms 在登录后不保留访问令牌或刷新令牌。
故障排除
| 消息 | 检查内容 |
|---|---|
| 您的提供商显示有关重定向 URI 的错误 | 您的提供商处的重定向 URI 与 PlatoForms 页面上的 登录重定向 URI 不同。比较方案、主机和尾部斜杠。 |
| “身份提供商返回了我们无法验证的令牌。” | 发行者 URL、客户端 ID 或客户端密钥错误,或者密钥已过期。 |
| “身份提供商未发送电子邮件地址。” | email 范围未被允许,或者声明有其他名称。检查 高级:范围和声明名称。 |
| “身份提供商发送的电子邮件为 @example.com,这不是您验证的域之一。” | 账户的电子邮件位于您尚未验证的域上。 |