版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
统一用户中心
详细设计报告
制作人:日期:2018-01版本:1/
目录
1系统构造5
1.1用户中心服务系统(UCS)5
1.2用户中心管理系统(UMS)5
1.3门户系统(Portal।6
1.4业务子系统接入6
2用户中心服务系统(UCS)6
2.1用户中心服务系统安全性要求6
2.2系统帐号传递机制7
2.3登录界面7
2.4功能说明7
2.4.1单点登录7
2.4.2会话保持7
2.43单点退出8
2.4.4组织架构同步8
2.4.5消息推送8
2.5数据构造8
2.5.1表清单8
2.5.2T_COMPANY公司表9
2.5.3T_DEPT部门表10
2.5.4T_EMPL员工表10
2.5.5T_USER用户表10
2.5.6T_DICTIONARY字典表11
2.5.7T_ATTACHMENT附件表11
2.5.8UC_ACCOUNT登录帐号表11
2.5.9UC.APP业务系统表12
2.5.10UC_BUTrON业务系统资源表12
2.5.11UC_DATA业务系统数据表12
2.5.12UC_MENU业务系统菜单表13
2.5.13UC_ROLE业务系统角色表13
2.5.14UC_ROLE_COMPANY角色公司关联表13
2.5.15UC_ROLE_BUTTON角色资源关联表13
2.5.16UCROLEDATA角色数据关联表13
2.5.17UC_ROLE_MENU角色菜单关联表14
2.5.18UC_ROLE_EMPL角色员工关联表14
2.6用户中心提供的接口14
2.6.1通用接口调用方式14
2.6.2sso.login登录15
2.6.3sso.validateticket校脸16
2.6.4sso.kecpAlivc保持用户登录状态17
2.6.5sso.logoul单点退出18
2.6.6portal.getPageMould获取页面统一样式18
2.6.7account.checkAccount检查帐号是否可用19
2.6.8account.updatePwd用户修改密码20
2.6.9account.rcseiPwd忘记密码20
2.6.10user.reg用户注册21
2.6.11user.update用户修改22
2.6.12'jser.findByAccessToken根据AccessToken获取用户信息23
2.6.13user.findByParentld根据组织架构id获取用户信息23
2.6.14user.findAll查询所有用户信息24
2.6.15user.findRoleByUserld根据用户id查询用户权限24
2.6.16user.findRoleByAccessToken根据AccessToken查询用户权限25
2.6.17org.getDeplsByParentld获取组织机构信息26
2.7业务子系统需要实现的接口27
2.7.1sso.logoulNotify用户退出通知27
2.7.2user.updateNotify用户信息变更通知28
2.7.3org.updateNotify组织架构信息变更通知29
3用户中心管理系统(UMS)29
3.1应用工程管理30
3.1.1基木信息管理30
3.1.2菜单管理30
3.13数据项管理31
3.1.4资源项管理31
3.1.5角色管理31
3.1.6角色权限管理31
3.2企业管理32
3.2.1企业列表32
3.2.2企业信息维护32
3.3部门管理32
3.3.1部门列表32
3.3.2部门编辑32
3.4供应商内部权限管理33
3.4.1角色列表33
3.4.2角色权限关联33
3.5员工管理33
3.5.1员工列表33
3.5.2员工删除33
3.5.3修改密码33
3.5.4用户锁定34
3.5.5员工编辑34
3.5.6角色授予34
4门户系统(Portal)34
4.1用户登录34
4.1.1登录页面34
4.1.2单点登录35
4.1.3会话保持35
4.1.4单点退出35
4.2用户主页35
4.2.1主页界面35
4.2.2导航菜单36
4.3用户注册36
4.4个人信息管理36
4.5页面集成方式36
4.6平台服务集
4.7消息服务集成36
5微信服务号接入37
5.1微信绑定37
5.2微信消息推送37
6业务子系统接入37
6.1操作流程37
6.2需要实现的接m38
6.2.1单点登录38
6.2.2会话保持38
6.2.3单点退出39
6.2.4组织架构、用户同步39
6.2.5菜单权限39
6.2.6数据权限39
6.2.7资源权限40
6.2.8消息通知40
6.3针对Java应用环境的封装40
6.3.1主要功能40
6.3.2过滤器配置说明40
6.3.3单机环境配置43
6.3.4分布式环境配置43
1系统构造
1.1用户中心服务系统(UCS)
提供平台登录界面;
提供单点登录、单点退出、会话保持服务,并在传统CAS服务的功能上增加用户角色
权限控制;
提供第三方应用接入相关接口;
提供用户、组织机构、权限相关接口;
提供提醒消息服务的集成,允许业务子系统存储提醒消息,以及同步业务子系统自有消
息模块中的消息
1・2用户中心管理系统(UMS)
>统一用户管理
使用统一身份认证平台的所有业务应用系统的全部用户,用户身份信息支持LDAP和
数据库的同时存储。
>统一角色管理
管理统一身份认证平台本身和平台中所有应用系统中需要使用到的角色信息,系统通过
用户、角色、权限机制,以及角色、用户、权限批量处理机制,极大地方便了用户的权限
分配。
>统一应用管理
管理纳入统一身份认证平台的各应用系统的应用功能点和应用权限。
>统一授权管理
实现用户与角色、角色与功能的对应管理,实现菜邑权限、数据权限、资源权限等多种
权限分发管理。同时,实现权限策略的定制和调用,便于实现与应用流程的严密结合。
1.3门户系统(Portal)
平台主页,按角色权限提供平台整合的所有资源的人口;
提供用户自身基本信息查看与维护功能;
服务申请审批通过之后通知用户中心服务系统
实现消息通知的接入;
实现微信账号绑定,微信消息推送;
1.4业务子系统接入
实现单点登录、单点退出、会话保持的接入;
用户信息实时或定时从用户中心服务系统同步:
实现菜单权限控制接入;
实现数据权限控制接入;
实现资源权限控制接入;
实现消息中心接入;
2用户中心服务系统(UCS)
平台SSO单点登录基于标准CAS认证流程,并优化超时验证流程,增加用户权限信息。
2.1用户中心服务系统安全性要求
用户中心服务系统可以使用s方式提供服务
业务系统与认证服务器之间接口调用采用参数密钥校验
2.2系统帐号传递机制
在用户访问应用系统之前,由统一身份认证平台生成一次性的访问Ticket票据,并将
Ticket提交给应用系统,应用系统请求统一身份认证平台验证Ticket有效性,之后返回认证
结果和用户身份信息给应用系统。应用系统根据验证结果确认用户身份,并分配用户权限。
Ticket默认有效时间5分钟,Ticket使用一次之后在动失效。
2.3登录界面
用户中心服务系统提供全平台唯一的登录界面
已经登录的用户访问登录页面将自动跳转到平台首页,不允许一个浏览器在未退出时登
录另一个账户。
2.4功能说明
2.4.1单点登录
1.用户访问业务系统
如果业务系统session或登录缓存中判断用户没有登录,那么控制客户端浏览器跳转到
用户中心服务系统(UCS)的统一登录页面;
如果业务系统已经登录,那么判断是否到达需要发送保持用户登录状态心跳包的时间,
向认证服务器用户状态保持接口发送消息、;同时,业务服务器处理自有业务,响应用户。
2.用户在用户中心服务系统登录完毕,系统记录登录信息并将浏览器跳转到业务系统服务
器回跳页面,并带上url参数ticket票据
3.业务服务器接收ticket参数向用户中心服务系统验证ticket合法性并获取用户信息和权
限信息
4.业务系统获取到用户信息,将登录信息记录session或登录缓存,标识已经登录,并根
据返回的权限信息检验用户是否有操作权限;验证通过那么执行相应业务操作
2.4.2会话保持
用户登录成功之后,被访问的业务系统需要在当前用户有访问请求时(在线状态)每间
隔一段时间(默认3分钟i向用户中心服务系统提交用户在线状态信息。保证认证服务中心
能够感知到用户当前的活动状态。
认证服务中心在•定时间(默认30分钟)内没有检测到用户的活动信息那么判定用户
状态为下线。将注销用户登录状态并通知所有业务系统注销该用户的登录状态。
2.4.3单点退出
与单点登录相对应,单点退出功能可以解决“单点登录〃功能在方便用户的同时留下的
安全隐患,用户在平台中主动下线或超时下线时,统一身份认证平台会向业务系统发起用户
下线通知,告知业务系统,某用户已经下线,请销毁相关Session会话。
2.4.4组织架构同步
用户在门户系统注册,注册数据通过接口保存到用户中心服务系统;
>全量同步
用户中心服务系统开通组织架构全量同步接口,提供应实时性要求不太高的子系统使
用;
>实时增量同步
在用户注册、信息变更、服务申请状态变化、删除等操作之后用户中心服务系统主动通
知各个子系统变更的用户数据,提供应实时性要求高的子系统使用;
2.4.5消息推送
监听消息服务器中的消息数据,将各个子系统通过消息中心发出的通知消息推送给绑定
的微信账号。
2.5数据构造
2.5.1表清单
名称注释
T_COMPANY公司表
T_DEPT部门表
T_EMPL员工信息
T.USER用户信息
T.DICTIONARY字典表
T_ATTACHMENT附件表
UC_ACCOUNT登录账号表
UC_APP业务系统
uc_BurroN资源表
UC_DATA数据表
UC-MENU菜单表
UC_ROLE角色表
UC_ROLE_COMPANY角色公司关联表
UC_ROLE_BUTTON角色资源关联表
UC_ROLE_DATA角色数据关联表
UC_ROLE_EMPL角色员工关联表
UC_ROLE_MENU角色菜单关联表
2.5.2T_COMPANY公司表
名称类型主键外键必填注释
COMPANY_1Dvurchar(50)TRUETRUE公司id
PARENTJDvarchar(50)父id
COMPANY.NAMEvarchar(200)公司名称
COMPANY.CODEvarchar(200)公司编码
CREATE_TIMEdatetime创立时间
ZIP.CODEvarchar(50)公司
ADDRESSvarchar(2OO)公司地址
EMAILvarchar(50)公司邮箱
\VEB_SITEvarchar(200)公司网址
FAXvarchar(50)
TELvarchar(50)企业
BANKvarchar(100)开户银行
BANK一ACCOUNTv<irchar(50)银行账户
LEGAL_NAMEvarchar(50)公司法人姓名
LEGAL_TELvarchar(50)公司法人联系方式
2.5.3T_DEPT部门表
名称类型主键外键必填注释
DEPT_IDvarchar(50)TRUETRUE部门id
PARENT_IDvurchar(50)上级部门id
COMPANY」Dvarchar(50)TRUE公司id
DEPT_NAMEvarchar(200)部门名称
CREATE_TIMEdatetime创立时间
DEPT.CODEvarchar(200)部门编号
TELvarchar(50)
FAXv<irchar(50)
ZIP.CODEvarchar(50)
ADDRESSvarchar(500)地址
2.5.4T_EMPL员工表
名称类型主键外键必填注释
EMPL_IDvtirchar(5O)TRUETRUE用户id
USERJDvarchar(50)TRUE用户id
COMPANY」)v;rchar(50)TRUE公司id
DEPT」Dvarchar(50)TRUE部门id
CREATE_TIMEdatetime创立时间
EMPL_CODEvurchar(50)员工编号
EMPL_POSITIONvurchar(50)员工职位
ENTRY_TIMEdatetime入职时间
2.5.5T_USER用户表
名称类型主键外键必填注释
USER.IDvyrchar(50)TRUETRUE用户id
ACCOUNT_IDvarchar(50)TRUE账号id
USER_NAMEvarchar(100)姓名
CREATE.TIMEdatetime创立时间
SEXnumeric(l,0)性别(上男,0:女)
EMAILvarchar(50)邮箱
MOBILEvarchar(50)手机号
IDCARDvyrchar(50)身份证
2.5.6T.DICTIONARY字典表
名称类型主键外键必填注释
DICTIONARY」Dvaichar(50)TRUETRUE字典id
DICT.CODEvarchar(50)字典编码
PARENT_CODEvarchar(50)父编码
DICT_NAMEvarchar(100)名称
DICT_DESCvarchar(500)说明
2.5.7T_ATTACHMENT附件表
名称类型主键外键必填注释
FILE_IDvarchar(50)TRUETRUE附件id
GROUPJDvarchar(50)附件组id
FILE.PATHvarchar(500)附件路径
FILE_NAMEvarchar(500)附件文件名
FILE_SIZEnumeric(10,0)附件大小
CREATE_TIMFdatetime创立时间
CREATE.USERvarchar(50)创立者
RECORD_TABLEvarchar(100)主记录所属表
2.5.8UC.ACCOUNT登录帐号表
名称类型主键外键必填注释
ACCOUNT_IDv<wchar(50)TRUETRUE账号id
ACCOUNT_NAMEvarchar(50)登录名
ACCOUNT_PASSWORDvarchar(200)密码
IS_ENABLEnumeric(l.O)是否可用(0:不可用J:可用)
CREATE.TIMEdatetime创立时间
OPENJDvarchar(50)微信id
IS_PLATnunieric(1.0)是否平台用户
IS_SUPPnumeric(l,0)是否是供应商用户
IS_BUYnunieric(1.0)是否是采购商用户
ACCOUNT_TELvarchar(50)
ACCOUNT.EMAILvarchar(50)
2.5.9UC_APP业务系统表
名称类型主键外键必填注释
APP_IDv<irchar(50)TRUETRUE业务系统id
APP_NAMEvarchar(200)业务系统名称
SECRET_KEYvarchar(200)接入密钥
APP_LOGOvarchar(200)首页展示logo图片
INDEX.URLvarchar(200)首页地址
USER_NOTIFY_URLvarchar(200)用户信息变更通知地址
DEPT_NOTIFY_URLvarchar(200)组织信息变更通知地址
LOGOUT_NOTIFY_URLvarchar(200)单点退出通知地址
2.5.10UC_BUTTON业务系统资源表
名称类型主键外键必填注释
BUTTONJDv<irchar(50)TRUETRUE资源id
APPJDvarchar(50)TRUE子系统id
RIITTON_CODFvarchar(100)资源编码
BUTrON_NAMEvarchar(200)资源名称
BUTTON_CLASSvarchar(200)资源分类
ORDER_NUMnumeric(10,0)序号
2.5.11UC_DATA业务系统数据表
名称类型主键外键必填注释
DATA.IDvarchar(50)TRUETRUE
APP_IDvarchar(50)TRUE子系统id
DATA_CODEvarchar(100)数据编码
DATA.NAMEvarchar(200)数据名称
DATA.CLASSvarchar(200)数据分类
DATA_EXPRESSIONvarchar(2000)数据sql
ORDER_NUMnumeric(lO.O)序号
2.5.12UC.MENU业务系统菜单表
名称类型主键外键必填注释
MENU」Dvarchar(50)TRUETRUE
APP_1Dvurchar(50)TRUETRUE子系统id
PARENTJDvarchar(50)TRUE父id
MENU-NAMEvarchar(100)菜单名称
MENU_ICONvarchar(100)图标
MENU_URLvarchar(200)地址
ORDER_NUMnumeric(2.0)排序
2.5.13UC_ROLE业务系统角色表
名称类型主键外键必填注释
ROLE_IDvarchar(50)TRUETRUE角色id
APPJDvarchar(50)TRUETRUE子系统id
COMPANY_iDvarchar(50)TRUE创立公司id
ROLE_NAMEvarchar(IOO)角色名称
2.5.14UC_ROLE_COMPANY角色公司关联表
名称类型主键外键必填注料
ROLE_IDvurchar(50)TRUETRUETRUE角色id
COMPANY_IDvarchar(50)TRUETRUETRUE公司id
2.5.15UC_ROLE_BUTTON角色资源关联表
名称类型主键外键必填注释
BUTTON.IDvarchar(50)TRUETRUETRUE资源id
ROLE」Dvurchar(50)TRUETRUETRUE角色id
2.5.16UC_ROLE_DATA角色数据关联表
名称类型主键外键必填注释
DATA.IDvarchar(50)TRUETRUETRUE数据id
ROLEJDvarchar(50)TRUETRUETRUE角色id
2.5.17UC_ROLE_MENU角色菜单关联表
名称类型主键外键必填注释
MENU」Dvarchar(50)TRUETRUETRUE菜单id
ROLE_IDvurchar(50)TRUETRUETRUE角色id
2.5.18UC_ROLE_EMPL角色员工关联表
名称类型主键外键必填注释
ROLEJDvarchar(50)TRUETRUETRUE角色id
EMPL_IDvyrchar(50)TRUETRUETRUE员工id
IS_GRANTnumeric(l)TRUE是否允许授予
2.6用户中心提供的接口
2.6.1通用接口调用方式
>通信协议
POST
>请求格式
application/x-www-form-urlencoded
>响应格式
application/json
>公用请求参数
序号名称必填类型说明
加密验证参数
使用平台给业务系统分配的接口密钥secretKey与当前
1secretString
时间(yyyyMMddHHmmss格式)拼接之后使用AES
加密,使用十六进制编码得到的字符串
>响应构造
序号名称类型说明
1retCodeSiring返回消息码
2messageString返回消息描述
JSON数据对象:以下所有接口返回数据都在此字段下(无数据返回时,
3resultJSON
无此字段)
>公用响应编码
编码说明
000()00成功
700000接口令牌无效
800000acccssToken无效,没有相关用户信息
900000异常
2.6.2sso.login登录
>功能说明
接入方控制客户端浏览器跳转登录页面进展登录操作
>发起方
客户端浏览器
>请求方式
浏览器跳转
>请求地址
/sso/Iogin.do
>请求参数
参数名类型说明
backurlString登录完成之后的回跳地,URLEncoder(utf-8)编码
>响应
参数名类型能明
ticketString获取用户信息的凭证,一分钟过期.一次有效
>请求例如
s://xxxxxx/sso/login.do?backurl=%3A%2F%2Fxxx%2Fmobile
>响应例如
://xxx/mobile?ticket=0fff8d0fB96e4b7094a7f98cfc35e4e9
2.6.3sso.validateticket校验
>功能说明
业务系统向用户中心服务系统校验登录lickci是否可用,并获取用户信息
>发起方
业务服务器
>接口地址
/sso/validate.do
>请求参数
序号名称必填类型说明
1ticketYString用户登录之后浏览器回跳地址中的lickci参数
2appldNString业务系统Id
3secretYString加密验证参数
4oniySelfRoleNBoolean是否仅自有系统的权限列表
>响应
序号名称类型说明
1accesstokenString用户接口令牌,服务端调用接口时使用
2userObject用户信息
2.1useridString用户id
2.2userNameString用户姓名
2.3userTypeInteger用户类型,员工、供应商
2.4companyldString公司id
2.5deptldString部门id
2.6servicesObject[|申请的服务数组
2.6.1serviceCodeString服务编号
2.6.2serviceNameString服务名
2.6.3serviceStatusInteger服务状态(1:待审核,2:审核拒绝,3:审核通过)
2.7appsObjectf]业务系统列表
2.7.1appldString业务系统id
2.7.2rolesObject[]角色数组,包含菜单权限,数据权限,资源权限
roleNanieString角色名
roleCcxieString角色编码
2.7.23menusStringU菜单权限编号列表
datasObject!]数据权限列表
.1dataCodeString数据编码
.2dataExpressioString数据SQL片段或表达式语句
buttonsStringU资源权限编号列表
>响应码表
编码说明
000000成功
800000ticket校验失败
900000服务端异常
2.6.4sso.keepAlive保持用户登录状态
>功能说明
保持用户登录状态
>发起方
PORTAL、各个接入单点登录的子系统
>接口地址
/sso/keepAlive.do
>请求参数
序号名称必填类型说明
1accessTbkenYString用户接口令牌
2secretYString加密验证参数
>响应码表
编码说明
000000成功
2.6.5sso.logout单点退出
>功能说明
退出登录
>发起方
PORTAL、各个接入单点登录的子系统
>接口地址
/sso/logout.do
>请求参数
序号名称必填类型说明
1accessTokenYString用尸接口令牌
2secretYString加密验证参数
>响应码表
编码说明
000000成功
2.6.6portal.getPageMould获取页面统一样式
>功能说明
获取统一的页面头、尾、菜单等HTML代码段
>发起方
子系统
>接口地址
/portal/gelPageMould.do
>请求参数
序号名称必填类型说明
1accessTbkenNString用户接口令牌,不填那么表示未登录
2secretYString加密验证参数
>响应
序号名称类型说明
1headString头部信息
2menuString菜单信息
3lootObject底部信息
>响应码表
编码说明
000000成功
2.6.7account.checkAccount检查帐号是否可用
>功能说明
PORTAL方账号注册时验证账号可用性
>发起方
PORTAL
>接口地址
/api/account/checkAccount.do
>请求参数
序号名称必填类型说明
1accountYString账号
2secretYString加密验证参数
>响应码表
编码说明
()0(X)00成功
100000账号被占用
200000账号不符合标准
2.6.8account.updatePwd用户修改密码
>功能说明
用户修改密码
>发起方
PORTAL
>接口地址
/api/account/updatePwd.do
>请求参数
序号名称必填类型说明
1accessTokenYString用户接口令牌
2secretYString加密验证参数
>响应码表
编码说明
000000成功
100000修改失败,原始密码错误
200000新密码不符合标准
2.6.9account.resetPwd忘记密码
>功能说明
通过邮箱找回密码
>发起方
PORTAL
>接口地址
/api/account/updatePwd.do
>请求参数
序号名称必填类型说明
1accountYString账号
2codeYString图形验证码
>响应码表
编码说明
000000成功
100000账号不存在
200000用户邮件地址无效,邮件发送失败
2.6.10user.reg用户注册
>功能说明
用户注册
>发起方
PORTAL
>接口地址
/api/user/reg.do
>请求参数
序号名称必填类型说明
1secretYString加密验证参数
2accountYString用户名
3passwordYStrin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 4.1陆地水体及其相互关系 第一课时 教案-2022-2023学年高中地理人教版(2019)选择性必修1
- 2026年福建省泉州市政务服务中心(窗口人员)招聘笔试参考试题及答案详解
- 2026年南昌市青云谱区政务服务中心(窗口人员)招聘笔试参考试题及答案详解
- 2026年重庆市医疗系统事业编人员招聘笔试备考试题及答案详解
- 安全月自查报告(3篇)
- 2026年广西壮族自治区梧州市政务服务中心(窗口人员)招聘笔试参考题库及答案详解
- 绿化施工劳务分包合同
- 2026年海口市美兰区政务服务中心(窗口人员)招聘考试模拟试题及答案详解
- 2026年石家庄市井陉矿区工会人员招聘笔试模拟试题及答案详解
- 2026年衢州市柯城区政务服务中心(窗口人员)招聘考试参考题库及答案详解
- T-CWEC17-2020水利水电勘测设计单位安全生产标准化评审规程
- 工艺管道试压、吹扫方案
- 与孩子达成的手机使用协议君子协议
- JB T 5082.7-2011内燃机 气缸套第7部分:平台珩磨网纹技术规范及检测方法
- 中建钢结构工程质量通病防治图册2020版
- 锅炉设备进口合同中英文对照版
- 人体生理功能PPT(高职护理)完整全套教学课件
- 2023年网格员招聘考试复习题库(含答案)
- 绍兴市利和文具有限公司年产50吨文具橡皮生产线项目立项环境评估报告表
- 科技向上肌源美丽-2023巨量引擎科技护肤白皮书
- 星级酒店管理工程部管理培训资料
评论
0/150
提交评论