# 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
快速跳转
