设置 Okta 单点登录 (SSO)
通过极少的配置,这个连接器可以让你集成 Okta,实现企业单点登录 (SSO)。
有关 SSO 和如何在 Logto 中配置 SSO 的更多信息,请查看 企业单点登录 (SAML & OIDC) 文档以开始使用。
步骤 1:在 Okta 管理后台创建 OIDC 应用
- 访问 Okta 管理门户,并以管理员身份登录。
- 使用侧边菜单导航到
Applications
/Applications
页面。 - 点击
Create App Integration
按钮以创建一个新的 OIDC 应用程序。 - 选择
OIDC - OpenID Connect
选项作为Sign-in method
。 - 选择
Web Application
选项作为Application type
。

点击 Next
按钮继续。
步骤 2:配置应用设置
- 提供一个
App integration name
。它将用作你的 OIDC 应用程序的标识符。 - 使用 Logto SSO 连接器的回调 URL 添加一个新的
Sign-in redirect URIs
。
这是 Okta 在成功认证 (Authentication) 后将用户浏览器重定向到的 URI。当用户成功通过 IdP 认证 (Authentication) 后,IdP 会将用户浏览器重定向回这个指定的 URI,并附带一个授权 (Authorization) 代码。Logto 将根据从此 URI 接收到的授权 (Authorization) 代码完成认证 (Authentication) 过程。

- 将用户分配给应用程序。
根据 Assignments
设置,你可以选择将应用程序分配给所有用户或特定用户 / 组。

点击 Save
按钮以保存应用程序设置。
步骤 3:使用客户端凭据设置 Logto 连接器
成功创建 OIDC 应用程序后,你将被重定向到应用程序详情页面。

复制 client ID
和 client secret
,并在 Logto SSO 连接器的 Connection
选项卡中填写相应字段。
使用你的 Okta 域作为 issuer
。例如:https://dev-12345678.okta.com
。填写完所有字段后,点击 Save
按钮保存连接器设置。
如果你提供的 issuer
链接有效,你将会看到在 issuer
字段下方显示的解析后的 Okta IdP 配置完整列表。
步骤 4:附加权限 (Scopes)(可选)
Scope(权限)定义了你的应用从用户处请求的权限,并控制你的应用可以从他们的 Okta 账户访问哪些数据。请求额外的 Okta 权限需要在双方进行配置:
在 Okta 管理控制台中:
- 导航到 Applications > Applications 并选择你的 OIDC 应用。
- 前往 Assignments 标签页,确保你的应用有权访问所需的用户和组。
- 对于自定义 Scope(权限),导航到 Security > API > Authorization Servers 并选择你的授权服务器。
- 如有需要,添加自定义 Scope(权限):
- 点击 Scopes,然后点击 Add Scope
- 定义 Scope(权限)名称,如
okta.users.read
或okta.groups.read
,用于访问 Okta API - 为每个 Scope(权限)配置同意要求
有关可用 Scope(权限)及其说明的完整列表,请参阅 Okta OIDC 文档。
在 Logto Okta 连接器中:
- Logto 会自动包含
openid
、profile
和email
Scope(权限),以获取基本的用户身份信息。如果你只需要基本的用户信息,可以将Scopes
字段留空。 - 如果你计划存储令牌以实现持久的 API 访问,请在
Scopes
字段中添加offline_access
。此 Scope(权限)可启用刷新令牌(Refresh token),用于长期 API 访问。 - 在
Scopes
字段中添加额外的 Scope(权限)(以空格分隔),以请求更多 Okta 数据。例如:okta.users.read okta.groups.read
如果你的应用请求这些 Scope(权限)以访问 Okta API 并执行操作,请确保在 Logto Okta 连接器中启用 为持久 API 访问存储令牌。详情请参见下一节。
步骤 5:存储令牌以访问 Okta API(可选)
如果你想访问 Okta 权限 (Scopes) 并在用户授权 (Authorization) 下执行操作,Logto 需要获取特定的权限 (Scopes) 并存储令牌。
- 在你的 Okta 开发者控制台 API 权限配置和 Logto Okta 连接器中添加所需的权限 (Scopes)。
- 在 Logto Okta 连接器中启用 为持久 API 访问存储令牌。Logto 会将 Okta 访问令牌 (Access token) 和刷新令牌 (Refresh token) 安全地存储在 Secret Vault 中。
- 为确保返回刷新令牌 (Refresh token),请在你的 Okta 应用权限中添加
offline_access
权限 (Scope),并将其包含在 Logto Okta 连接器的权限 (Scopes) 中。此权限 (Scope) 允许你的应用长时间访问资源。
步骤 6:设置邮箱域并启用 SSO 连接器
在 Logto 的连接器 SSO 体验
标签页中填写你组织的 电子邮件域名
。这将为这些用户启用 SSO 连接器作为认证 (Authentication) 方法。
拥有指定域名电子邮件地址的用户将被重定向,仅能使用你的 SSO 连接器进行认证 (Authentication)。
关于如何与 Okta 创建 OIDC 集成的更多详情,请参阅 创建 OIDC 应用集成。