文档管理系统/SAML SSO约 8 分钟阅读

ENTERPRISE · SAML 2.0

让团队登录
使用他们已有的账号。

SAML SSO 让您的客服使用公司已有的身份提供商(Okta、Microsoft Entra、Google Workspace、JumpCloud、OneLogin)登录 EasyLiveChat。无需额外密码,员工离职时也无需单独撤销访问权限。

§ 00什么是 SAML SSO

SAML SSO 将 EasyLiveChat 接入贵公司已有的身份提供商 —— Okta、Microsoft Entra、Google Workspace 或其他任何 SAML 2.0 IdP。当客服在 IdP 控制面板里点击 EasyLiveChat 图标(或访问书签)时,会被跳转到 IdP,使用其平常登录用的密码登录,然后回到 EasyLiveChat 收件箱。无需输入 EasyLiveChat 密码。

如果您曾在网站上点击过 "使用 Google 登录",您已经使用过这一模式的消费版。SAML 是其企业版 —— 网站(我们)信任身份提供商(您的 Okta / Microsoft / Google)对用户身份的判断。

EasyLiveChat 从不运行身份提供商。您自带 IdP,我们负责接收端。

§ 01套餐可用性

SAML SSO 是 Enterprise 套餐功能。在 14 天免费试用期间同样解锁,方便您在决定之前评估整套配置。

套餐SAML SSO
免费试用试用期间解锁
Starter锁定
Growth锁定
Enterprise包含

§ 02需要交给 IdP 管理员的值

这些是 IdP 需要了解的 EasyLiveChat 端标识。请将 <slug> 替换为您的工作区 slug。/settings/sso 页面会以可复制按钮的形式列出全部值。

单点登录 / ACS URLhttps://api.livechattools.com/api/saml/<slug>/callback
受众 / SP 实体 IDhttps://api.livechattools.com/api/saml/<slug>/metadata
Name ID 格式电子邮箱地址
必需属性email(或 NameID = email)
签名断言必需(签名响应可选)

大多数 IdP 也支持直接导入 XML 元数据文档 —— 元数据 URL 与实体 ID 相同,返回我们后端构建的 XML。

§ 03设置 Okta

以下步骤假设您拥有 Okta 工作区的管理员权限。Okta 开发者套餐免费,可用于评估。

  1. 登录 Okta 管理后台 → Applications → Create App Integration → SAML 2.0。
  2. 为应用命名(例如 "EasyLiveChat")并点击 Next。
  3. 在 Configure SAML 步骤,使用 EasyLiveChat /settings/sso 页面提供的值填写以下字段:
    • Single sign-on URL → 我们提供的 ACS URL。
    • 勾选 "Use this for Recipient URL and Destination URL"。
    • Audience URI (SP Entity ID) → 我们提供的 entity ID。
    • Name ID format → EmailAddress.
    • Application username → Email.
    • Attribute Statements → 添加一行: emailuser.email — Name format Basic.
  4. 点击 Next → "I'm an Okta customer adding an internal app" → Finish。
  5. 在新应用的 Sign On 标签下 → "View SAML setup instructions"。复制 IdP Single Sign-On URL、IdP Issuer 和 X.509 证书(PEM 格式,包含 BEGIN/END 标记)。
  6. 将该应用分配给邮箱与 EasyLiveChat 工作区现有客服匹配的用户(People → Assignments)。

§ 04设置 Microsoft Entra (Azure AD)

以下步骤假设您在 Microsoft Entra 中拥有 Global Administrator 或 Application Administrator 角色。

  1. Entra 管理后台 → Enterprise applications → New application → Create your own application → 命名(如 "EasyLiveChat")→ Non-gallery app。
  2. 打开新应用 → Single sign-on → SAML。
  3. Basic SAML Configuration → 将 Identifier (Entity ID) 和 Reply URL (ACS) 设为您 /settings/sso 页面提供的值。
  4. Attributes & Claims → 确保有一个 claim 携带用户邮箱。可以使用默认的 emailaddress claim,并将其 URI 粘贴到 EasyLiveChat 的 "Email claim" 字段;或者新增一个名为 email 的 claim,值设为 user.mail。
  5. SAML Signing Certificate → 下载 "Certificate (Base64)" .cer 文件。用文本编辑器打开,将完整 PEM 内容(包含 BEGIN/END 标记)粘贴到 EasyLiveChat 的签名证书字段。
  6. 在 "Set up <app name>" 部分,复制 Login URL(→ EasyLiveChat 中的 IdP entry URL)和 Microsoft Entra Identifier(→ IdP issuer)。通过 Users and groups 分配用户。

§ 05设置 Google Workspace

以下步骤假设您是 Workspace 超级管理员。

  1. Google 管理后台 → Apps → Web and mobile apps → Add app → Add custom SAML app。命名为 "EasyLiveChat" 之类。
  2. 在 IdP details 步骤,下载 X.509 证书并复制 SSO URL 和 Entity ID。
  3. 在 Service provider details 步骤,粘贴 /settings/sso 页面提供的 ACS URL 和 Entity ID。将 Name ID format 设为 EMAIL,Name ID 设为 Basic Information > Primary email。
  4. Attribute mapping → 将 Primary email 映射到应用属性 email。
  5. 完成后,为需要登录的组织单位启用该应用。将证书 + URL 保存到 EasyLiveChat。

§ 06在 EasyLiveChat 中配置

打开 https://app.livechattools.com/settings/sso. 粘贴您刚刚从 IdP 拷贝的四个值:

  • IdP entry URLIdP 提供的单点登录 URL(例如 https://yourcompany.okta.com/app/exk.../sso/saml)。
  • IdP issuerIdP 的实体标识符(在 IdP 端有时称为 Issuer URL 或 Entity ID)。
  • IdP 签名证书 (PEM)粘贴 X.509 证书(含 BEGIN CERTIFICATE / END CERTIFICATE 标记)。
  • Email claim(可选)留空将使用 NameID。如果您的 IdP 在特定属性名下发送邮箱,请粘贴 claim URI。

点击 Save。状态徽章变为 CONFIGURED,SP-initiated 登录 URL 出现在页面底部。

§ 07客服如何登录

两条路径 — 都到达同一地点(您的收件箱),并使用新的会话令牌完成认证。

  • SP-initiated让客服访问 https://api.livechattools.com/api/saml/<slug>/login。该 URL 适合保存为书签,会跳转到您的 IdP 再返回。
  • IdP-initiated客服从 IdP 的应用面板(Okta dashboard、Microsoft 365 app launcher、Google Workspace app launcher)点击 EasyLiveChat 图标,直接进入 EasyLiveChat 收件箱。

§ 08客服匹配

EasyLiveChat 通过邮箱将 SAML 用户与现有 Agent 行匹配 —— IdP 验证的用户必须已存在于您的工作区作为客服。我们在首次 SSO 登录时不会自动创建客服(暂无 "just-in-time" 自动配置),以免 SSO 绕过您团队的邀请治理。

如果 SAML 用户没有对应的客服,callback 会带着 reason=agent_not_found 重定向回 EasyLiveChat 登录页。请在 Settings → Team 中用 IdP 发送的精确邮箱邀请该用户,然后重试。

§ 09故障排除

如果登录失败,EasyLiveChat 会重定向到 /login?saml_error=1&reason=<code>。代码告诉您发生了什么:

reason=发生了什么解决方法
missing_responseIdP 没有向我们的 callback 发送 SAMLResponse。再次检查 IdP 端的 ACS / Single Sign-On URL — 必须与我们提供的 callback URL 完全一致,包括工作区 slug。
validation_failed我们收到了 SAMLResponse,但签名未通过验证。粘贴到 /settings/sso 的签名证书必须与 IdP 实际的签名证书一致。请从 IdP 重新复制 PEM(包含 BEGIN/END 标记)。
no_email签名验证通过,但 assertion 中没有邮箱字段。确保 IdP 发送用户邮箱 —— 作为 NameID(格式 EmailAddress)或作为 claim。如果是 claim,请将其 URI 粘贴到 Email claim 字段。
agent_not_foundIdP 声明的邮箱不在您的客服列表中。在 Settings → Team 中用相同邮箱邀请该用户,然后重试登录。