跳转到主要内容

SSO / SAML

MarkdownChatGPTClaude

单点登录(SSO)让您组织内的成员可以使用其内部已经在用的相同企业凭据登录 Unico 的产品,而不需要单独的 Unico 用户名和密码。

这不是服务器到服务器的流程

本页介绍的是通过您公司身份提供商实现的人工登录。如果您要查找用于 API 调用的后端机器对机器认证,请参阅认证。

认证管理仍由您公司在自己的身份与访问管理系统中直接控制——无需向 Unico 提交支持请求来创建或停用单个用户登录账户。

SSO 通过 SAML(安全断言标记语言)实现,这是一种在身份提供商和服务提供商之间安全交换认证与授权数据的标准协议。

SAML 组件​

组件角色
身份提供商(IdP)负责认证用户的服务——您的企业目录(例如 Active Directory)或外部身份服务(例如 Okta、Microsoft Entra ID)。
服务提供商(SP)用户试图访问的应用程序。在本场景中,即 Unico 的认证平台,负责跨 Unico 产品门户对用户进行认证和授权。
断言(Assertions)在 IdP 和 SP 之间传递认证与授权数据的 XML 消息。
SAML 元数据描述 IdP 与 SP 应如何安全通信的 XML 文档(端点、证书)。
信息

SAML 仅处理认证——确认用户的身份。它并不控制用户在 Unico 产品内部有权访问的内容;访问权限仍需由您的 Unico 项目团队授予。

集成步骤​

1. 在您的 IdP 中注册服务提供商(SP)​

您的 IdP 需要两个值才能将 Unico 注册为服务提供商:实体 ID(Entity ID)(SP 的唯一标识符)和 ACS URL(断言消费者服务 URL)——接收 SAML 断言的端点。

环境实体 IDACS URL
生产环境https://identity.acesso.iohttps://identity.acesso.io/auth/saml/callback
沙箱环境https://identityhomolog.acesso.iohttps://identityhomolog.acesso.io/auth/saml/callback

2. 映射用户属性​

将您的 IdP 配置为在 SAML 断言中发送以下声明。这些声明用于在您的 IdP 与 Unico 之间映射用户属性(姓名、电子邮件、用户名)。

属性值是否必填
email用户的电子邮件地址是
user_name用户名是
given_name名是
family_name姓是
phone_number电话号码否

3. 获取您的 IdP 元数据​

您的 IdP 通常会提供一个包含其自身配置的 XML 文件——其公开证书、认证端点 URL 及相关设置。请将此文件发送给您的 Unico 支持联系人,以完成 Unico 侧的集成。

SP 的 SAML 元数据示例
<EntityDescriptor entityID="https://your-sp.example.com/"
xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
<SPSSODescriptor
AuthnRequestsSigned="true"
protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
<KeyDescriptor use="signing">
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<X509Data>
<X509Certificate>YourSigningCertificate</X509Certificate>
</X509Data>
</KeyInfo>
</KeyDescriptor>
<AssertionConsumerService
Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
Location="https://your-sp.example.com/acs"
index="1"/>
</SPSSODescriptor>
</EntityDescriptor>

首次访问​

一旦 SP 在您的 IdP 中完成注册和配置,用户即可直接通过以下地址进行认证:

环境登录 URL
生产环境https://identity.acesso.io
沙箱环境https://identityhomolog.acesso.io

用户在登录页面输入其公司和用户信息后,会被重定向到您的 IdP 进行认证。认证成功后,用户会被重定向回已配置的回调 URL,并在 Unico 的认证平台中创建其账户。

按身份提供商配置​

创建企业应用程序
  1. 在 Microsoft Entra ID 中,前往企业应用程序并选择新建应用程序。
  2. 选择创建您自己的应用程序,然后选择集成库中未找到的其他任何应用程序(非库)。
  3. 以正在配置的 Unico 产品命名该应用程序(例如"Unico IDCloud"),然后点击创建。
配置单点登录
  1. 在应用程序的管理菜单中,打开单点登录并选择 SAML。
  2. 编辑基本 SAML 配置,并使用步骤 1中对应所配置环境的值填写标识符(实体 ID)和回复 URL(断言消费者服务 URL)。
  3. 编辑属性与声明部分,使其与步骤 2中的属性表匹配。对您编辑的每一个声明,请清空**命名空间(Namespace)**字段——该字段必须为空。

最终的声明应如下所示:

声明名称类型值
Unique User Identifier (Name ID)SAMLuser.​userprincipalname(nameid-format:emailAddress)
emailSAMLuser.mail
family_nameSAMLuser.surname
given_nameSAMLuser.givenname
user_nameSAMLuser.mail

下一步​

  • 认证 — 用于服务器到服务器 API 调用的独立 OAuth2 流程
  • 环境 — 沙箱与生产主机