接入说明
术语介绍与常见对接问题
基本术语表
术语 | 说明 |
---|---|
认证 | 用户或机器通过账号密码等,中望账号系统生成能够代表其身份的凭证(如token) |
授权 | 服务通过账号系统颁发的凭证,授予相关的访问或操作权限 |
资源 | 需要授权才能访问的服务,例如提供API接口的服务等 |
受信客户端 | “受信”是对于其需要访问的资源而言,此客户端代表的是机器或服务,而不是特定的用户。受信客户端可以请求资源的高权限接口,如批量访问\操作等 |
用户客户端 | 面向用户的服务,如网站前端、产品终端等。此 客户端代表用户向账号系统请求认证,并使用获取的用户凭证代表该用户请求资源。 |
作用域 | 资源对外提供的权限,注册客户端时必须申请其需要的作用域,仅拥有作用域的客户端可以请求相应的凭证,若客户端请求了未授予的作用域,将无法通过账号系统的认证获取凭证 |
常见对接问题
请按API资源保护注册资源,并在资源上使用JWT保护
请为服务A注册受信客户端,为服务B注册资源
请注册用户客户端
请在受信客户端中申请作用域:ZMS.Users.Read
请在受信客户端中申请作用域:ZMS.Users.Create
请联系负责人获取账号系统内网版本
请联系负责人进行修改和删除,注意删除资源将同时删除资源的所有作用域,作用域删除或修改后,所有使用该作用域的客户端在请求认证时必须移除原作用域
有两种方式:
(1) 引导用户至中望用户中心(https://me.zwsoft.cn)
(2) 客户端申请ZMS.UserBasic.Write或ZMS.UserDetails.Write,自行实现页面,通过账号系统API接口进行修改
有两种方式:
(1) 引导用户至中望用户中心(https://me.zwsoft.cn)
(2) 在客户端使用网页组件直接访问安全设置页面
概述与规范
中望统一账号概述
开发规范
方法: GET
权限:无(可通过IP进行限制)
参数:guid(QUERY参数,中望用户GUID), language(可选QUERY参数,用户语言代号,如:zh-CN)
返回示例:
{
"deletable": false,
"details": [
{
"message":"将显示在用户界面;请根据language返回相应语言的信息",
"url":"页面链接,可以是处理权益的页面,也可以是相应的帮助文档;统一账号将引导用户前往此链接",
"icon":"页面链接图标,可为null,但不能为空字符串"
}
]
}
deletable为true时,details请返回空数组
details中的url需要支持QUERY参数(redirectUrl),页面需要提供按钮引导用户返回redirectUrl
icon大小至少为26X34,显示的背景色为#f7f7f7
message中可使用一个<br/>标签分隔字符串,此标签前的字符串将黑色加粗显示,此标签后的字符串将换行灰显
权限说明
中望账号作用域列表
作用域 | 说明 | 备注 |
---|---|---|
openid | 获取用户全局唯一ID | 默认授予的作用域,不需要申请,仅限用户客户端 |
获取用户邮箱地址 | 对于非中望内部服务,手机号和邮箱信息需要用户在登录时确认同意 | |
phone | 获取用户手机号码 | 对于非中望内部服务,手机号和邮箱信息需要用户在登录时确认同意 |
offline_access | 获取刷新token | 默认授予的作用域,不需要申请 |
ZMS.Basic | 获取用户基本信息,包括用户GUID、姓氏、名字、显示名称、头像链接、偏好语言。 | 默认授予的作用域,不需要申请 |
ZMS.UserDetails.Read | 获取用户详细信息,包括用户GUID、姓氏、名字、显示名称、头像链接、偏好语言、资讯接收设置、出生日期、联系地址、工作信息、账号状态、用户名、第三方绑定信息 | 需要申请 |
ZMS.UserBasic.Write | 修改用户基本信息,包括用户头像、姓氏、名字、显示名称、偏好语言 | 需要申请 |
ZMS.UserDetails.Write | 修改用户详细信息,包括用户头像、姓氏、名字、显示名称、偏好语言、出生日期、联系地址、工作信息、资讯接收设置 | 需要申请 |
ZMS.Users.Read | 在不需要用户登录的情况下,批量查询用户信息 | 需要申请,仅限受信 客户端 |
ZMS.Users.Create | 批量创建用户 | 需要申请,仅限受信客户端 |
可提供服务的中望业务权限
业务模块 | 说明 | 资源部门 |
---|---|---|
产品服务 | 获取\查询产品信息 | 研发中台 |
订单服务 | 创建\查询订单,发起支付,发票\证书查看下载 | 研发中台 |
订阅授权服务 | 获取用户订阅产品信息、激活\查询产品授权 | 研发中台 |
统一云盘 | 获取空间信息、文件夹\文件操作 | 研发中台 |
云CAD | Web端图纸查看\协作 | 云CAD事业部 |
云3D | Web端3D建模仿真协作 | 云3D事业部 |
API资源保护
资源注册
材料 | 是否必须 | 说明 | 示例 |
---|---|---|---|
英文资源名称 | 必须 | ProductManageService | |
中文资源名称 | 可选 | 产品管理服务 | |
资源说明 | 必须 | 简要说明资源的作用 | 用于中望内部的产品管理后台,提供产品定义、价格策略、产品上下架等功能,为其它服务提供产品信息 |
作用域英文名称及其说明 | 必须 | 作用域即资源的权限划分,作用域名称全局唯一,请在名称中添加区别性的标识,以避免与其它作用域重复。 建议使用三段式命名:资源缩写.模块(或操作内容).权限 | PMS.Product.Read:获取产品信息 PMS.Product.Write:修改产品基本信息 |
测试服\正式服 | 必须 | 当前申请接入的环境 | 正式服 |
资源负责人 | 必须 | 张三(zhangsan@zwcad.com) | |
角色控制 | 可选 | 定义角色类型时,其名称全局唯一,请在名称中添加区别性的标识,以避免与其它服务的角色重复。 建议使用二段式命名:资源缩写.角色名称 | PMS.RoleManager:产品服务角色管理员,可以指定用户角色 PMS.ProductManager:产品管理员,可以创建\更新产品 |
资源保护
角色控制
获取认证与授权
受信客户端
客户端注册
材料 | 是否必须 | 说明 | 示例 |
---|---|---|---|
英文名称 | 必须 | SamCoreService | |
中文名称 | 可选 | 订阅核心服务 | |
客户端说明 | 必须 | 简要说明客户端用途,申请受信的原因 | 中望订阅后端服务,需后端调用产品、订单、授权等子服务 |
申请的作用域 | 必须 | 如申请特殊作用域,需说明原因 | (此示例仅用作举例,实际可申请的作用域请联系各服务负责人) ZMS.Users.Read:批量读取用户信息 ZMS.User.Create:创建用户(订阅需提供邀请用户的功能) |
测试服\正式服 | 必须 | 当前申请接入的环境 | 正式服 |
客户端负责人 | 必须 | 张三(zhangsan@zwcad.com) |
获取令牌
详情请查看API接口文档:受信客户端获取令牌
用户客户端
客户端注册
材料 | 是否必须 | 说明 | 示例 |
---|---|---|---|
英文名称 | 必须 | ZWsoftWebCadClient | |
中文名称 | 可选 | 中望WebCAD前端 | |
客户端说明 | 必须 | 简要说明客户端用途 | 中望WebCAD前端 |
申请的作用域 | 必须 | 如申请特殊作用域,需说明原因 | (此示例仅用作举例,实际可申请的作用域请联系各服务负责人) email、phone:为用户发送WebCAD相关业务通知 Files.ReadWrite.All:读写用户网盘文件 |
允许的跨域地址 | 必须 | 此客户端访问请求资源时所使用的域名,服务将拒绝不在允许列表的域名发送的请求 | https://web.zwcad.com |
允许的回调地址 | 必须 | 客户端请求成功后,将重定向至指定的回调地址。当请求中指定的回调地址不在允许的列表时,服务将拒绝该请求 | https://web.zwcad.com/ https://web.zwcad.com/callback |
允许的退出回调地址 | 必须 | 客户端请求登出用户后,将重定向至指定的回调地址。 | https://web.zwcad.com/ |
测试服\正式服 | 必须 | 当前申请接入的环境 | 正式服 |
客户端负责人 | 必须 | 张三(zhangsan@zwcad.com) |
获取\刷新令牌
获取服务配置
请求code
使用code兑换令牌
刷新令牌
用户信息修改
用户安全信息修改
用户非安全信息修改
修改用户基本信息
修改用户头像
修改用户详细信息
第三方关联支持
第三方名称 | 状态 | 说明 |
---|---|---|
支持 | 网页应用:默认使用统一帐号 APP应用:需要APP应用共享key和secret 微信内网页:默认使用“中望软件技术”官方公众号,支持由客户端获取登录信息 | |
WorkWeChat | 支持 | 扫码登录,支持企业认证、付费关联用户姓名及部门,支持由客户端获取登录信息 |
支持 | 跳转页面,支持由客户端获取登录信息 | |
Huawei | 支持 | 跳转页面,支持由客户端获取登录信息 |
Apple | 支持 | 由客户端获取必要的信息,加密传输至统一帐号校验进行自动注册关联和登录 |
支持 | 由客户端获取Google的用户token, 加密传输至统一帐号校验进行自动注册关联和登录 | |
支持 | 由客户端获取Facebook的用户token, 加密传输至统一帐号校验进行自动注册关联和登录 | |
Mobile | 支持 | 由客户端通过阿里云获取用户手机号Token, 加密传输至统一帐号校验并获取手机号,自动注册关联和登录 |