一、产品介绍
1.产品简介
1.1.产品概述
用户中心是优特云提供的一项管理用户身份与资源访问权限的服务。
用户中心作为优特云对外部业务系统和用户提供的一项基础服务,可以和其他服务一起使用。同时用户中心也提供了其他增值能力,如文件存储、短信服务,为各类应用场景行业开发者赋能。
访问路径
项目环境访问路径描述用户中心1.0uathttps://uat.utcook.com/developer/index.html用户验收环境,对接应用方开发工程师 试用账号:developer_platform_admin 密码:Ut123456
1.2.功能特性
- 集中控制用户及其密钥:管理每个用户及其访问密钥,为用户绑定多项资源权限。
- 集中控制用户的访问权限:控制每个用户访问资源的权限(应用-功能-菜单)。
- 集中控制用户的资源访问方式:确保用户在指定的时间和网络环境下,通过安全信道访问特定的资源。
- 集中控制云资源:对用户创建的应用或数据进行集中控制。当用户离开组织时,应用或数据不会丢失。
- 单点登录管理(SSO):支持优特云平台内应用系统的用户SSO。
1.3.模块关系

1.4.产品优势

- 使用用户中心,开发者用户可以创建、管理应用,并可以控制其他用户对应用资源(角色、功能、菜单)的操作权限。
- 如果用户在优特云同时享有多种资源,其中一种资源希望由其它账号管理,用户可以将相应的功能委托给其他账号。
- 应用之间可以通过账号体系来对用户进行隔离和共享:同一账号体系下的应用注册用户共享,不同账号体系下的应用注册用户隔离。
- 当外部系统已存在自有账号系统,要接入用户中心时,可以通过批量注册功能,实现用户账号的同步和迁移。
2.名称解释
名称 | 说明 |
platform_Admin | 平台管理员,该用户为系统默认全权用户,具有最高的操作权限。 |
developer_Admin | 由平台管理员platform_Admin分配的开发者账户,具有个人中心、应用管理、子账户管理的权限,同时platform_Admin可以赋予它“具备开发者分配权限的能力”。 |
AccessKey | 访问密钥指的是访问身份验证中用到的 AccessKey ID 和 AccessKeySecret。AccessKey ID 用于标识用户,AccessKeySecret 是用户用于加密签名字符串和 RAM 用来验证签名字符串的密钥。 |
sysname | 第三方系统名称,是用户体系中的一个数据项,用于标示用户的来源 |
SSO | 基于 SAML 2.0 的 SSO(Single Sign On,单点登录),也称为身份联合登录。 |
OAuth 2.0 | 对用户进行认证,并接受用户对应用的授权,生成代表用户身份的令牌并返回给被授权的应用。 |
3.使用限制
3.1接口限制
- 接口访问: 仅平台内部用户具备访问平台内任意服务的权限
- 接口调用权限: 应用管理相关接口仅开发者及其子账户具备调用权限 应用开发者仅能分配其所属应用的权限 普通用户能调用账户信息管理接口及分配自身具备的任意权限
3.2.会话失效时间
- cookie失效时间: 默认为 4小时
- token失效时间: 默认为 30天
3.3.子账户限制
- 子账户创建层级: 只开放创建 一层 子账户
3.4.文件服务
- 文件上传大小: 最大支持 50M
3.5.短信服务
- 短信验证码有效期: 默认为 60秒
- 短信下发超频,参考极光短信发送状态说明

二、快速入门
1.接入流程
开发者需要先在用户中心创建应用、账号体系,后通过页面或接口进行访问、调用相关服务。

2.使用流程
2.1. 使用全流程

2.2主要功能

三、使用手册
1.概述
用户中心V2.0提供用户的个人信息维护、平台应用、开发者创建的应用的管理,同时支持用户子账户的多级创建。满足超级管理员、开发者和普通用户三级用户的基本需求。
功能简介
功能 | 简介 |
基本信息 | 存储用户个人信息,账户信息手机号;密码修改(通过旧密码更改新密码)和设置密保问题等。 |
子账户管理 | 子账户是由用户本身创建,具有用户全部权限或部分权限的账户。具有子账户的账户称为父账户,当父账户被禁用,子账户也同样被禁用。 |
应用管理 | 提供应用增删、应用中各个功能点配置、对应用使用者身份划分角色(及角色对应的功能点)、菜单管理(将不同的功能整理成不同的菜单展示) |
账号体系 | 建立账号管理体系,实现账户与账户体系之间多对多管理 |
2.用户信息
用户登陆或注册后进入用户信息页面,进行昵称、性别、生日等信息设置,保存后生效,内容为非必填项。

3.账户绑定
通过验证注册时手机号,建立手机号与账户的关联关系

4.安全设置
本系统提供密码和密保问题修改密码能力

5.子账户分配
操作主体流程:创建子账号→选择单个应用→为该子账号赋予该应用的角色权限
释义:子账号用户即是父账号下的授权实体,也是归属于账号的一种资源。子账号的所有权限及计费等都来源于主账号,当主账号失去权限时,子账号同步失去。
创建子账户
创建子账户,创建条件为:用户名和密码。

为子账户授权
父账户对子账户授权,授权范围:父级账户名下其拥有的所有应用权限。 备注:子账户不可建立下级账户 操作方式:选择应用→为子账号赋权

6.应用管理
释义:应用管理为开发者创建的应用提供的角色权限管理,实现不同角色具备查看的页面权限不同,控制权限不同等。
- 角色和功能点:角色与功能点实现绑定关系,同一个角色可以绑定多个功能点。
- 展示页(菜单是展示页的入口)和功能点:展示页只展示关联的功能点(只有将功能点分配给页面,前端页面才会展时相关内容)。举例:当用户以角色1登录系统的时候,用户可以看到页面1和页面4,因为这两个页面都包含了角色1已获取的功能点2。

6.1应用列表
各开发者可以在应用管理中创建自有应用,并对应用基本信息进行管理,也可以禁用或启用相关应用。
新建应用

应用管理

6.2角色管理
每个应用下,可以创建多个角色。 角色:角色包含了多个功能点(是一个功能点的集合) 每个角色可以绑定若干个功能,通过在授权管理中将角色赋予用户,实现给用户赋予权限的目的。
操作方式:选择应用→添加角色→分配功能点

6.3功能点管理
功能点:任何一个系统中实现各种功能的最小单位。(有时候可以等同于一个接口)
操作步骤:选择需要添加功能点的应用→给应用添加功能点

6.4菜单管理
菜单:分为一级菜单和二级菜单,每个菜单对应的页面在展示时,都只能展示该登录角色已经具备的各个功能点对应的前端样式。
操作步骤:选择需要展示的服务→针对该服务配置需要展示的菜单→给各个菜单页配置对应的功能

6.5授权管理
授权服务释义:用户需要使用若干个服务,需要对每一个服务给用户授予不同的角色权限
操作流程:
1.主体操作:选择服务(针对服务配置用户在该服务下的角色)→选择账户→执行授权操作

2.授权配置

7.账号体系
建立账号管理体系,实现账户与账户体系之间多对多管理。 备注:使用时请先咨询用户中心管理员 账号体系:开发者根据自己需要,将自己的用户独自建立在一个或者多个体系内,进行用户数据隔离。

四、最佳实践
1.优特云内部对接

如上图,若当前系统归属于优特云平台架构,需做以下准备:
1.1基础技术选型
- 选用Springcloud 2.0框架
- 使用feign组件实现RPC调用
- 引用spring security 和 oauth2依赖【由平台统一实现sso单点登录】
- 加入token传递逻辑
- 加入swagger相关配置
1.2应用配置
- 申请网关映射:把自身服务暴露在优特云网关上,以供其他系统调用。
1.3权限配置
若需要实现接口权限控制或菜单控制,可通过应用管理功能实现:
- 创建应用
- 创建应用功能
- 创建应用角色
- 关联角色与功能
- 分配用户角色
- 创建菜单树
- 关联菜单与功能
2.第三方系统对接

如上图,外部系统在对接优特云平台前,需做以下准备:
- 系统授权:申请系统访问权限的客户端密钥
- 申请开发者账号: 可基于系统内任意账号申请开通开发者权限
- 创建账户体系: 创建应用自身的账户管理体系
- 权限申请: 根据场景需调用平台对应的服务接口,申请相关接口调用权限。
基于以上步骤即可调用优特云平台接口。
若自身希望通过平台提供的能力实现接口权限控制或菜单控制,可通过在平台内提供的应用管理功能实现:
- 创建应用
- 创建应用功能
- 创建应用角色
- 关联角色与功能
- 分配用户角色
- 创建菜单树
- 关联菜单与功能
五、常见问题
权限未生效
给指定用户分配权限或修改权限后,指定用户需退出并重新登录方可更新其所属权限。
客户端获取token时平台响应html页面
客户端使用token会话机制,使用的是手机端网关,若出现上述问题,请检查获取token访问的平台接口是否正确【开发环境手机端网关:https://mobiledev.utcook.com】
六、产品版本
1.用户中心V1.0
V 1.0.0.0 版本发布
发布时间:2018-12-07
(1)注册登录
提供Web端用户注册、登录的功能
(2)用户管理
提供用户管理(用户名、密码、头像、昵称、手机号)的增删改查功能
(3)应用管理
提供针对应用的角色管理,功能点管理,页面管理,授权管理等功能
- 功能点管理:系统权限中最小管理级,可理解位一个单一功能接口
- 角色管理:角色是由多个功能点组成的集合,提供对角色的增删改查功能
- 页面管理:页面是前端展示的作用,需要通过功能点的对应,实现前端的展示需要
- 授权管理:将角色授权给用户,实现管理
V 1.1.0.0 版本发布
发布时间:2018-12-24
(1)注册登录
新增App端用户注册、登录的功能
(2)用户管理
新增扩展信息、密保问题增删改查等功能
(3)应用管理
- 功能点管理:新增查询所有功能Key列表
- 角色管理:新增获取角色绑定的功能Key列表
- 页面管理
- 授权管理
V 1.2.1.0 版本发布
发布时间:2018-12-24
(1)注册登录
新增社交账号的登录、绑定、解绑等功能
(2)用户管理
新增批量注册、设置密码、重置密码、设置登录名、更换绑定手机号功能
(3)应用管理
提供针对应用的角色管理,功能点管理,页面管理,授权管理等功能
- 功能点管理
- 角色管理:
- 页面管理
- 授权管理:新增创建子账户、获取等功能
V 1.03.07.01 版本发布
发布时间:2019-07-09
(1)注册登录
新增登录名+密码登录 新增忘记密码功能
(2)用户管理
新增创建当前用户随机子账户、获取指定用户token
(3)应用管理
提供针对应用的角色管理,功能点管理,页面管理,授权管理等功能
- 功能点管理
- 角色管理:增加角色解绑功能
- 页面管理
- 授权管理
V 1.03.07.35 版本发布
发布时间:2020-04-30
(1)注册登录
新增支持手机号+密码登录 新增小程序注册功能 新增一个账户绑定多个小程序功能
(2)用户管理
检查用户是否注册、获取父账户名等功能。 新增获取指定账户的随机子账户功能
(3)应用管理
新增账户管理模块
2.用户中心V2.0
V2.00.00.00 版本发布
发布时间:2020-03-23
一、新增账号体系管理
1、实现账号体系的增删改查功能 2、实现体系下的账户管理功能
二、细化应用管理
1、新增角色解绑功能 2、新增子账户的权限管理功能 3、新增权限回收功能 4、新增删除功能的特性
V2.00.01.00 版本发布
发布时间:2020-04-16
(1)新特性
- 登录、注册页面样式
- 添加根据用户key获取token接口
- 规范社交账号接口的异常,简化客户端异常处理方式
(2)优化
- 小程序登录和注册接口增加权限参数校验
- 界定获取用户信息和扩展信息接口各自的返回值
- 设置昵称接口,增加昵称长度校验小于50个字符
- 增加功能key和角色key以及密保Id校验异常
- 设置密保问题,问题答案增加小于50个字符的限制
- 统一参数为空的报错信息
- 在新增功能或角色时增加功能key和角色key不能重名校验
- 修改密保问题,增加新密保问题存在性校验,以及新密保答案长度小于50个字符校验
- 登录注册接口手机号与获取验证码不一致检查
V2.00.02.00 版本发布
发布时间:2020-04-29
(1)新特性
- 增加小程序注册接口
- 添加解绑社交账号接口,增加支持解绑小程序的功能,若绑定多个,则解绑多个
- 规范curUser和userExtend接口返回值
- 获取用户权限集的接口,添加用户完整的权限信息返回
- 添加餐饮称菜小程序设置域名的支撑
- 异常改造,统一服务返回的异常信息结构
(2)优化
- 优化获取用户扩展信息接口,增加passwordFlag字段的判断
- 绑定小程序接口优化,若是判断已经绑定过自己 就跳过
- 完善账号体系禁用业务流之登录
- 增加打印缓存异常的日志信息
V2.00.03.00 版本发布
发布时间:2020-05-18
(1)新特性
- 更新前端页面,实现注册时两次密码不一致校验,优化错误提示
- 统一参数不为空的错误提示
- 获取全部应用信息接口,增加子用户可以获取父账户的应用列表。
(2)优化
- 优化获取token接口,返回用户的Id
- 优化登录成功后跳转服务,统一跳转到开发者中心
- 优化异常信息的提示,增加友好性
V2.00.04.00 版本发布
发布时间:2020-07-01
(1)新特性
- 新增两个功能 1.开发者获取应用下的功能、角色以及用户数量。 2.超管获取白户用户数量以及各应用下的用户、功能和角色数量。
(2)优化
- 根据2.0提测的反馈信息优化了错误提示信息
- 规范了应用、功能和角色等字段的长度。
七.文档更新日志
日期 | 描述 |
2019-11-11 | 创建用户手册 |
2019-11-12 | 修改链接内容 |
2019-12-20 | 【产品简介-什么是用户中心】中添加UAT的测试账号和访问入口 |
2020-04-29 | 建立账号管理体系说明,针对实现账户管理体系之间多对多管理进行操作介绍 |