SP 发起的单点登录 (SSO)
SP 发起的单点登录 (SSO) 是默认且比 IdP 发起的 SSO 更安全的方法,允许企业用户从 Logto 登录页面发起 SSO 登录流程。Logto 支持 邮箱域名提示 SSO 和 直接登录参数 SSO。
企业 SSO 用户不支持绑定或使用 密钥登录。
设置 SP 发起的 SSO
-
在你的身份系统中启用企业单点登录 (SSO)
要激活企业单点登录 (SSO),请前往 控制台 > 登录与账户 > 注册与登录,并开启“启用企业单点登录 (SSO)”设置。启用后,你的登录页面将出现“单点登录 (Single Sign-On)”按钮。拥有启用 SSO 邮箱域名的企业用户可以通过他们的企业身份提供商访问你的服务。
-
为不同客户创建企业连接器
接下来,你需要为每个客户集成其企业身份提供商。与社交登录类似,在 Logto 中创建新的企业连接器并配置所需设置。前往 控制台 > 企业单点登录 (SSO),点击“添加企业连接器”按钮,并按照指引完成连接器设置。参考 企业 SSO 连接器设置。
-
为企业连接器设置邮箱域名
企业 SSO 身份通常通过公司邮箱域名识别。在每个企业连接器详情页的 SSO 体验标签页中,你可以指定关联的邮箱域名。
拥有指定邮箱域名的用户将只能通过该企业 SSO 连接器登录,其他登录方式(如邮箱验证码、邮箱密码认证 (Authentication) 或社交登录)将对这些用户禁用。该 SSO 连接器仅对拥有指定邮箱域名的用户可见。
备注:公共邮箱域名(如 gmail.com、yahoo.com)不能绑定到企业连接器。
SP 发起的 SSO 体验
当用户尝试使用为 SSO 配置的企业邮箱域名登录时,SSO 会被激活。此过程会跳过密码等标准验证方式。
-
单点登录按钮:
启用企业 SSO 登录方式后,登录页面会出现“单点登录 (Single Sign-On)”按钮作为可选登录方式。点击该链接后,用户会被提示输入企业邮箱地址以发起 SSO 流程。
- 单一连接器:如果用户邮箱域名只关联了一个企业 SSO 连接器,用户会被直接重定向到 IdP 登录页面。
- 多个连接器:如果用户邮箱域名关联了多个企业 SSO 连接器,用户会先从列表中选择所需的 IdP,然后再被重定向到 IdP 登录页面。
-
通用邮箱登录:
在通用标识符登录表单(启用邮箱登录方式)中,企业 SSO 邮箱域名检测默认开启。当用户输入邮箱地址时,Logto 会自动识别该域名是否关联企业 SSO 连接器。如果匹配,默认登录表单会更新:“登录”按钮变为“单点登录 (Single Sign-On)”按钮,用户只能通过企业 SSO 连接器登录。
常见问题
我可以用组织名称 / 域名而不是邮箱域名来重定向到 IdP 吗?
目前,Logto 预设的登录体验仅支持 邮箱域名提示 SSO,不支持 组织域名提示 SSO。
你可以在客户端自定义路由页面,结合认证参数 directSignIn:'sso:{connectorId} 使用。该页面可根据组织域名将大型企业客户重定向到对应的 IdP。了解更多 直接登录参数。
我可以在登录页面显示特定企业连接器按钮吗?
不同企业客户使用不同的身份提供商管理员工,并请求不同的权限 (OIDC) 或属性 (SAML)。因此,不建议在通用登录页面上显示为特定客户准备的企业连接器按钮。
但如果你正在开发 B2E 产品,并希望为某个特定企业客户显示按钮,可以自定义登录页面并使用 directSignIn:sso 进行路由。了解更多 直接登录参数。
如何启用仅 SSO 登录和注册?
要启用仅 SSO 登录和注册,请按以下步骤操作:
- 在 控制台 > 登录与账户 > 注册与登录 配置
- 注册:不适用
- 登录:无
- 社交登录:无
- 企业单点登录 (SSO):启用
- 用户注册:禁用
- 在 控制台 > 用户管理 手动添加用户企业邮箱地址,或通过 Management API 导入。
- 当用户首次通过 SSO 登录时,Logto 会 自动关联 其现有邮箱地址与 SSO 账户。