单点登录(SSO) API 接入文档
概述
本文档描述如何通过跳转链接的方式实现用户身份鉴权及单点登录,适用于第三方应用快速接入登录验证。接入流程
- 在您的网站或应用中生成带时间戳、用户名与签名的跳转链接。
- 引导用户访问该链接。
- 系统验证签名与时间戳有效性后,自动完成登录。
链接格式
参数说明
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| timestamp | int | 是 | 当前时间戳(Unix 时间戳,精确到秒),链接有效期为 10 分钟 |
| username | string | 是 | 用户的登录标识,支持 手机号 或 邮箱 |
| sign | string | 是 | 根据 timestamp 和 username 及 Secret 计算得到的 MD5 签名,用于安全校验 |
签名生成规则
- 将参数
timestamp与username按timestamp=值&username=值的格式拼接。- 示例:
timestamp=1770372682&username=13800138000
- 示例:
- 在拼接后的字符串末尾加上您的 Secret 密钥(由系统提供)。
- 示例:
timestamp=1770372682&username=13800138000YourSecretKey
- 示例:
- 将最终字符串进行 MD5 加密(32位小写),得到签名。
- 示例:
sign = md5("timestamp=1770372682&username=13800138000YourSecretKey")
- 示例:
示例代码(签名计算)
以下为 Python 示例代码:注意事项
- 链接必须在 timestamp 对应时间起的 10 分钟内使用,否则失效。
- 签名验证失败或参数错误将跳转至登录失败页。
- 请确保服务器时钟与接入系统时钟同步,避免时间戳偏差。
- username 需使用 URL 编码(如果包含特殊字符)。
返回结果
用户访问链接后,系统将自动完成登录并跳转至指定首页(或原请求页),无需额外页面操作。如遇到问题,请联系系统管理员获取 Secret 密钥或协助调试。