# COP作为统一登录认证中心
# 概述
COP平台提供统一登录认证服务,支持应用接入注册、已接入系统间统一登录、统一退出等能力。
# 集成架构图
##操作步骤
| 序号 | 步骤名称 | 责任方 | 使用场景 |
|---|---|---|---|
| 1 | 租户编码配置 | 致远 | 必须 |
| 2 | 提供应用注册信息 | 三方系统 | 必须,提供应用名称、可信重定向域名。 |
| 3 | 约定用户标识字段 | 致远 + 三方系统 | 必须,约定用户标识字段,比如手机号码、用户编码、登录名 |
| 4 | 新建接入应用 | 致远 | 必须,承载应用注册信息,配置重定向可信域名,分配 appId |
| 5 | 分配 appId | 致远 | 必须,应用注册成功后,分配 appId,接入应用内字段来源 APPKey |
| 6 | 启用接入应用 | 致远 | 必须,只有启用后的接入应用,应用配置才能生效 |
| 7 | 跳转至 COP 认证地址 | 三方系统 | 必须,访问三方系统但未登录时,三方系统按【认证地址拼接规范】跳转到 COP 认证页 |
| 8 | URL 重定向 | 隐性处理 | 必须,用户输入 COP 账号密码登录成功后,URL 自动重定向到三方系统目标地址,注意三方系统重定向地址的域名必须是可信重定向域名,否则重定向失败 |
| 9 | 登录态存储 | 隐性处理 | 必须,登录成功后,COP 平台将登录认证 token 写入 COP 根域名 Cookie 中,二次登录或其他三方系统登录时无需再次输入账号密码 |
| 10 | 解析 ticket, 模拟登录 | 三方系统 | 必须,三方系统根据 ticket 获取用户信息,模拟登录 |
| 11 | 调用接口,完成退出 | 三方系统 | 非必须,三方系统退出时,可调用 COP 退出接口,完成一键退出。 |
# 集成配置步骤
# 获取租户ID
select use_tenant_code from ctp_manager_tenant
# nocas租户标识配置
配置文件位置:ctp-user
配置文件修改内容:不配置,根据ticket获取用户信息接口会报错租户不存在
seeyon: user: naturalTenantCode: 租户的编号
# 新建接入应用


# 分配AppId

# 启用接入应用

# 配置重定向域名

# 认证地址拼接说明【待接入系统】
http://【COP平台域名:端口】+/login
?appId=【接入应用注册AppKey】
&service=encode(【应用系统重定向目标地址】)
# 接口说明
# 根据ticket获取用户信息
- 请求地址
http:// (opens new window)【COP平台域名】/service/ctp-user/auth/restore
- 请求方式
POST
- 请求入参(Body)
| 参数名 | 数据类型 | 是否必填 | 参数说明 |
|---|---|---|---|
| ticket | string | 是 | 用户登录后,由用户中心拼接在重定向地址最后的临时授权 ticket |
- 入参示例
{
"ticket": "ngkhgkgd16fdg96dg1d6fg498dfg615"
}
- 请求出参(Body)
| 参数名 | 数据类型 | 参数说明 |
|---|---|---|
| status | int | 网关回参状态标识 |
| code | string | 网关回参状态编码 |
| message | string | 网关回参提示信息 |
| data | object | 网关回参消息对象 |
| data.content | object | 用户认证信息对象 |
| data.content.loginName | string | 用户名 / 登录名 |
| data.content.code | string | 员工编码,useridCode |
| data.content.name | string | 人员姓名 |
| data.content.type | string | 用户类型(INTERNAL: 内部用户;NATURAL_MEMBER: 外部自然人;EXTERNAL:外部单位人员) |
| data.content.orgId | string | 当前登录内部机构 ID |
| data.content.orgName | string | 当前登录内部机构名称 |
| data.content.outsideOrgId | string | 当前登录外部单位 ID |
| data.content.outsideOrgName | string | 当前登录外部单位名称 |
| data.content.socialCreditCode | string | 当前登录外部单位统一社会信用代码 |
- 出参示例
{
"status": 0,
"code": "BOOT_0000",
"message": "SUCCESS",
"data": {
"content": {
"code": "MB202303220001",
"loginName": "15124965304",
"name": "张三"
}
}
}
# 根据用户标识一键退出
- 请求地址
http:// (opens new window)【COP平台域名】/service/ctp-user/auth/token/revoke-by-code
- 请求方式
POST
- 请求入参(Body)
| 参数名 | 数据类型 | 是否必填 | 参数说明 |
|---|---|---|---|
| code | string | 是 | COP 平台用户编号 |
- 入参示例
{
"code": "P202306090001"
}
- 请求出参(Body)
| 参数名 | 数据类型 | 参数说明 |
|---|---|---|
| status | int | 网关回参状态标识 |
| code | string | 网关回参状态编码 |
| message | string | 网关回参提示信息 |
| data | object | 网关回参消息对象 |
| data.content | object | 用户认证信息对象 |
- 出参示例
{
"status":0,
"code":"BOOT_0000",
"message":"SUCCESS",
"data":{
"content":null
}
# 能力比对
COP统一登录认证相较于传统的4A统一身份认证系统,功能更加专一,适配速度更快。
以下是COP统一登录认证与传统4A统一身份认证系统差异对比:
| COP 统一登录认证 | 4A 统一身份认证 | ||
|---|---|---|---|
| 用户管理 | 组织用户管理 | √ | √ |
| 完整的组织同步机制 | √ | √ | |
| 认证管理 | 应用注册 | √ | √ |
| 账号密码认证 | √ | √ | |
| 手机号验证码认证 | √ | √ | |
| Ukey、人脸认证、指纹、扫码、SDK 等 | × | √ | |
| 跨系统免登跳转 | √ | √ | |
| 多端适配 PC+移动 | √ | √ | |
| 一键退出 | √ | √ | |
| 授权管理 | 资源注册 | × | √ |
| 资源管理 | × | √ | |
| 跨应用授权 | × | √ | |
| 安全审计 | 登录留痕,留痕追溯 | × | √ |
| 交付周期 | ≈3 人天 | ≥10 人天 |
# 注意事项
编撰人:pengfx
快速跳转