统一用户中心详细设计方案及对策文档格式.docx

上传人:b****4 文档编号:17833993 上传时间:2022-12-11 格式:DOCX 页数:47 大小:293.85KB
下载 相关 举报
统一用户中心详细设计方案及对策文档格式.docx_第1页
第1页 / 共47页
统一用户中心详细设计方案及对策文档格式.docx_第2页
第2页 / 共47页
统一用户中心详细设计方案及对策文档格式.docx_第3页
第3页 / 共47页
统一用户中心详细设计方案及对策文档格式.docx_第4页
第4页 / 共47页
统一用户中心详细设计方案及对策文档格式.docx_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

统一用户中心详细设计方案及对策文档格式.docx

《统一用户中心详细设计方案及对策文档格式.docx》由会员分享,可在线阅读,更多相关《统一用户中心详细设计方案及对策文档格式.docx(47页珍藏版)》请在冰豆网上搜索。

统一用户中心详细设计方案及对策文档格式.docx

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分钟)向用户中心服务系统提交用户在线状态信息。

保证认证服务中心能够感知到用户当前的活动状态。

认证服务中心在一定时间(默认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_BUTTON

资源表

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_ID

varchar(50)

TRUE

公司id

PARENT_ID

父id

COMPANY_NAME

varchar(200)

公司名称

COMPANY_CODE

公司编码

CREATE_TIME

datetime

创建时间

ZIP_CODE

公司邮编

ADDRESS

公司地址

EMAIL

公司邮箱

WEB_SITE

公司网址

FAX

传真

TEL

企业电话

BANK

varchar(100)

开户银行

BANK_ACCOUNT

银行账户

LEGAL_NAME

公司法人姓名

LEGAL_TEL

公司法人联系方式

2.5.3T_DEPT部门表

DEPT_ID

部门id

上级部门id

DEPT_NAME

部门名称

DEPT_CODE

部门编号

电话

邮编

varchar(500)

地址

2.5.4T_EMPL员工表

EMPL_ID

用户id

USER_ID

EMPL_CODE

员工编号

EMPL_POSITION

员工职位

ENTRY_TIME

入职时间

2.5.5T_USER用户表

ACCOUNT_ID

账号id

USER_NAME

姓名

SEX

numeric(1,0)

性别(1:

男,0:

女)

邮箱

MOBILE

手机号

IDCARD

身份证

2.5.6T_DICTIONARY字典表

DICTIONARY_ID

字典id

DICT_CODE

字典编码

PARENT_CODE

父编码

DICT_NAME

DICT_DESC

说明

2.5.7T_ATTACHMENT附件表

FILE_ID

附件id

GROUP_ID

附件组id

FILE_PATH

附件路径

FILE_NAME

附件文件名

FILE_SIZE

numeric(10,0)

附件大小

CREATE_USER

创建者

RECORD_TABLE

主记录所属表

2.5.8UC_ACCOUNT登录帐号表

ACCOUNT_NAME

登录名

ACCOUNT_PASSWORD

密码

IS_ENABLE

是否可用(0:

不可用,1:

可用)

OPEN_ID

微信id

IS_PLAT

是否平台用户

IS_SUPP

是否是供应商用户

IS_BUY

是否是采购商用户

ACCOUNT_TEL

ACCOUNT_EMAIL

2.5.9UC_APP业务系统表

APP_ID

业务系统id

APP_NAME

业务系统名称

SECRET_KEY

接入密钥

APP_LOGO

首页展示logo图片

INDEX_URL

首页地址

USER_NOTIFY_URL

用户信息变更通知地址

DEPT_NOTIFY_URL

组织信息变更通知地址

LOGOUT_NOTIFY_URL

单点退出通知地址

2.5.10UC_BUTTON业务系统资源表

BUTTON_ID

资源id

子系统id

BUTTON_CODE

资源编码

BUTTON_NAME

资源名称

BUTTON_CLASS

资源分类

ORDER_NUM

序号

2.5.11UC_DATA业务系统数据表

DATA_ID

DATA_CODE

数据编码

DATA_NAME

数据名称

DATA_CLASS

数据分类

DATA_EXPRESSION

varchar(2000)

数据sql

2.5.12UC_MENU业务系统菜单表

MENU_ID

MENU_NAME

菜单名称

MENU_ICON

图标

MENU_URL

numeric(2,0)

排序

2.5.13UC_ROLE业务系统角色表

ROLE_ID

角色id

创建公司id

ROLE_NAME

角色名称

2.5.14UC_ROLE_COMPANY角色公司关联表

2.5.15UC_ROLE_BUTTON角色资源关联表

2.5.16UC_ROLE_DATA角色数据关联表

数据id

2.5.17UC_ROLE_MENU角色菜单关联表

菜单id

2.5.18UC_ROLE_EMPL角色员工关联表

员工id

IS_GRANT

numeric

(1)

是否允许授予

2.6用户中心提供的接口

2.6.1通用接口调用方式

通信协议

HTTPPOST

请求格式

application/x-www-form-urlencoded

响应格式

application/json

公用请求参数

1

secret

String

加密验证参数

使用平台给业务系统分配的接口密钥secretKey与当前时间(yyyyMMddHHmmss格式)拼接之后使用AES加密,使用十六进制编码得到的字符串

响应结构

retCode

返回消息码

2

message

返回消息描述

3

result

JSON

JSON数据对象:

下列所有接口返回数据都在此字段下(无数据返回时,无此字段)

公用响应编码

编码

000000

成功

700000

接口令牌无效

800000

accessToken无效,没有相关用户信息

900000

异常

2.6.2sso.login登录

功能说明

接入方控制客户端浏览器跳转登录页面进行登录操作

发起方

客户端浏览器

请求方式

浏览器跳转

请求地址

/sso/login.do

请求参数

参数名

backurl

登录完成之后的回跳地,URLEncoder(utf-8)编码

响应

ticket

获取用户信息的凭证,一分钟过期,一次有效

请求示例

https:

//xxxxxx/sso/login.do?

backurl=http%3A%2F%2Fxxx%2Fmobile

响应示例

http:

//xxx/mobile?

ticket=0fff8d0f896e4b7094a7f98cfc35e4e9

2.6.3sso.validateticket校验

业务系统向用户中心服务系统校验登录ticket是否可用,并获取用户信息

业务服务器

接口地址

/sso/validate.do

Y

用户登录之后浏览器回跳地址中的ticket参数

appId

N

业务系统Id

4

onlySelfRole

Boolean

是否仅自有系统的权限列表

accesstoken

用户接口令牌,服务端调用接口时使用

user

Object

2.1

userId

2.2

userName

用户姓名

2.3

userType

Integer

用户类型,员工、供应商

2.4

companyId

2.5

deptId

2.6

services

Object[]

申请的服务数组

2.6.1

serviceCode

服务编号

2.6.2

serviceName

服务名

2.6.3

serviceStatus

服务状态(1:

待审核,2:

审核拒绝,3:

审核通过)

2.7

apps

业务系统列表

2.7.1

2.7.2

roles

角色数组,包含菜单权限,数据权限,资源权限

2.7.2.1

roleName

角色名

2.7.2.2

roleCode

角色编码

2.7.2.3

menus

String[]

菜单权限编号列表

2.7.2.4

datas

数据权限列表

2.7.2.4.1

dataCode

2.7.2.4.2

dataExpressio

数据SQL片段或表达式语句

2.7.2.5

buttons

资源权限编号列表

响应码表

ticket校验失败

服务端异常

2.6.4sso.keepAlive保持用户登录状态

保持用户登录状态

PORTAL、各个接入单点登录的子系统

/sso/keepAlive.do

accessToken

用户接口令牌

2.6.5sso.logout单点退出

退出登录

/sso/logout.do

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1