跳到正文

SSO & SCIM

连接公司的身份管理平台
(SSO、SCIM)

Aiyori 的企业培训组织,可以与公司的身份管理平台连接。学员用公司账号登录(SSO,采用 OpenID Connect),入职、调动和离职会自动同步(SCIM 2.0)。

本页和各身份管理平台的步骤,面向公司的 IT 负责人,以及 Aiyori 组织的管理员(创建组织的人)。开始之前,可以先确认连接的方法。

各身份管理平台的步骤

  • Okta:SSO(OpenID Connect)和 SCIM。
  • Microsoft Entra ID:SSO(OpenID Connect)和 SCIM。SCIM 需要 Entra ID P1 或更高版本。
  • Google Workspace:SSO(OpenID Connect)。无法使用 SCIM,改用自动登记和名单的批量登记。

其他支持 OpenID Connect 的身份管理平台,也可以用本页的值连接。

先要决定的事

  1. 让谁加入。只有在身份管理平台中分配给 Aiyori 应用的人员和组才能加入(不是全员)。使用 SCIM 时,分配的部门、入职年份等组,会直接成为 Aiyori 的小组。
  2. 登录方式。只允许公司账号,还是也允许用密码登录。大公司建议只允许公司账号(已离职的人就无法再用密码登录)。
  3. 名单的导入方式。用 SCIM 自动导入(Okta、Microsoft Entra ID),在首次用公司账号登录时自动登记,或每月用表格(CSV)批量登记,三者选一。Google Workspace 没有 SCIM,所以使用后两种。

填入身份管理平台的 Aiyori 的值

重定向 URI 和 SCIM 基础 URL,也显示在讲师画面的“设置”→“连接公司的身份管理平台”中(带复制按钮)。只有组织的管理员(创建组织的人)才能更改设置。

重定向 URI
https://app.aiyori.app/api/web/sso/callback
在身份管理平台的 Aiyori 应用中注册。哪怕只差 1 个字符,也无法登录。
SCIM 基础 URL
https://app.aiyori.app/api/scim/v2
在 Okta 中填入 SCIM connector base URL,在 Entra ID 中填入 Tenant URL。
SCIM 密钥
在“连接公司的身份管理平台”中用“创建密钥”创建。只在创建时显示 1 次(每个组织最多 5 个)。在 Okta 中作为 Bearer 令牌填入,在 Entra ID 中填入 Secret Token。
登录入口(用于公司门户的磁贴)
https://app.aiyori.app/api/web/sso/start?code=(组织代码)
在 Okta 中填入 Initiate login URI,在 Entra ID 中填入 Home page URL。这样,从公司门户的磁贴就能直接进入公司的登录,不用输入组织代码。

填入 Aiyori 的值

在“连接公司的身份管理平台”的“SSO”中填入,然后按“保存”。

颁发者 URL(Issuer)
因身份管理平台而异。Okta 为 https://(组织).okta.com,Microsoft Entra ID 为 https://login.microsoftonline.com/(租户 ID)/v2.0,Google Workspace 为 https://accounts.google.com。
客户端 ID
身份管理平台中应用的 ID。
客户端密钥
身份管理平台中应用的密钥。加密保存,保存后不再在画面上显示。
允许的邮箱域名
公司邮箱的域名(如 example.com),每行 1 个。请务必填写。不填写的话,凡是身份管理平台放行的人都能加入(Google Workspace 不填写则无法保存)。
自动登记
不使用 SCIM 时(如 Google Workspace),开启“尚未登记的人员登录时,将其登记为学员”。只登记域名匹配的人。
停用密码登录,仅允许使用公司账号
先由 1 个人确认能用公司账号登录,再开启。

保存时,Aiyori 会读取颁发者的配置信息(颁发者 URL 后加 /.well-known/openid-configuration)。无法读取时,不能保存。颁发者只能是以 https 开头的公开 URL(不能使用内部名称或 IP 地址)。

保存后,可以在“自己试着登录”中用“用我的公司账号试一下”,以管理员的公司账号登录,确认能否回到 Aiyori(不会登记为学员)。

学员如何登录

  • 在培训链接的登录画面按“使用公司账号登录”,输入组织代码 → 公司的登录画面 → 回到 Aiyori。
  • 在公司门户(Microsoft 的 My Apps、Okta 的仪表板)中放置磁贴时,使用上面的登录入口 URL。不用输入组织代码就能进入。
  • 按以下顺序查找对应的人:之前已用公司账号关联的人 → 公司邮箱地址相同的学员(Entra ID 还包括 SCIM 的 userName 与 UPN 相同的学员)。两者都没有时,只有在开启自动登记的情况下,才会登记域名匹配的人。
  • 无法登录时,画面上会显示原因(域名不符、尚未登记、因公司设置停用、已终止使用)。

SCIM 带来的变化

在身份管理平台中的操作在 Aiyori 中的结果
把人员分配给应用创建学员。ID 为公司邮箱地址中 @ 前面的部分(重复时加 -2)。姓名使用显示名称,没有时由姓和名组成。
更改了姓名或邮箱地址学员的姓名和公司邮箱地址随之更改。
分配了组、添加或移除了成员创建 Aiyori 的小组,成员随之加入或退出。
取消分配、禁用或已离职无法再登录(停用)。培训记录会保留。不计入使用费的人数,并在所有设备上退出登录。
恢复了可以再次登录。
取消了组的分配小组会被归档(培训记录会保留)。

SCIM 不使用部门(department)和员工编号(employeeNumber)属性(用组来区分)。如果想按员工编号识别同一个人,请使用表格(CSV)批量登记。

是否让学员终止使用(30 天后记录会被删除),不由身份管理平台决定,而由讲师在学员页面中决定。

密钥泄露时,在 Aiyori 的画面上把该密钥设为“停用”,再创建新密钥,重新填入身份管理平台。停止的只是同步,学员的登录不受影响。

遇到问题时

现象要检查的地方
在 Aiyori 中无法保存 SSO 设置画面上会显示原因:颁发者 URL 输入有误(Entra ID 末尾的 /v2.0 或租户 ID),Entra ID 使用了 common 或 organizations(不能使用),Google Workspace 的允许域名为空(请填写)。另请在浏览器中确认,颁发者 URL 后加 /.well-known/openid-configuration 能否打开。
公司登录之后,显示无法验证客户端 ID 或客户端密钥抄错,客户端密钥已过期(Entra ID 最长 2 年),或重定向 URI 有哪怕 1 个字符不同。
显示未能获取邮箱地址身份管理平台中的该用户没有邮箱地址。Entra ID 请在 Token configuration 中添加 email。
显示此域名无法加入请检查 Aiyori 的允许域名中是否有公司的域名。子域名请另起一行。Google Workspace 还需要 Workspace 的主域名。Entra ID 的令牌中没有 email 时,会用 UPN 的域名来检查。
显示尚未登记请检查 SCIM 的分配是否已完成,或者开启自动登记。
SCIM 连接测试返回 401密钥抄错,或是已停用的密钥。密钥前面加不加 Bearer 都可以。
SCIM 连接测试返回 403(HTML 的 403 Forbidden)被 Aiyori 前置的防护(WAF)拦截了。请通过咨询页面告诉我们。
SCIM 没有增加人员请检查是否已分配给应用(Entra ID 默认只同步已分配的用户和组)。Entra ID 约每 40 分钟同步一次,着急时请按需单独发送。