资源描述
文件编号:
统一用户及权限管理平台
解决方案及设计报告
版本号 0.9
拟制人 王应喜 日期 2006年6月
审核人__________ 日期___________
批准人__________ 日期___________
统一用户及权限管理设计报告
目录
第一章 引言 1
1.1 编写目的 1
1.2 背景 1
1.3 定义 1
1.4 参考资料 1
第二章 统一权限管理解决方案 2
2.1 需求分析 2
2.2 系统架构 2
2.3 系统技术路线 4
第三章 统一用户及授权管理系统设计 4
3.1 组织机构管理 4
3.2 用户管理 4
3.3 应用系统管理、应用系统权限配置管理 4
3.4 角色管理 4
3.5 角色权限分配 4
3.6 用户权限(角色)分配 4
3.7 用户登录日志管理功 4
第四章 对外接口设计 5
4.1 概述 5
4.2 接口详细描述 5
4.2.1 获取用户完整信息 5
4.2.2 获取用户拥有的功能模块的完整信息 6
4.2.3 获取用户拥有的一级功能模块 7
4.2.4 获取用户拥有的某一一级功能模块下的所有子功能模块 8
4.2.5 获取用户拥有的某一末级功能模块的操作列表 9
4.2.6 判断用户是否拥有的某一末级功能模块的某一操作权限 10
4.2.7 获取某一功能模块的ACL—尚需进一步研究 10
4.2.8 获取某一模块的数据级权限规划规则—尚需进一步研究 11
重庆南华中天信息技术有限公司 第 2 页 2024-5-7
统一用户及权限管理解决方案
1 引言
1.1 编写目的
编写此文的目的从总体上描述企业统一用户及授权管理的解决方案以及统一用户及授权管理系统的功能设计、对外接口设计、数据库设计,并为下一阶段的详细设计以及系统编码、测试提供依据。
本文档读者对象:用户、项目经理、系统分析员、软件文档管理员、质量管理人员,软件开发人员、软件测试人员等。
此文档和附加参考资料作为系统进行设计与测试的基础性文档。
1.2 背景
随着信息化的发展,企业的应用不断的增加,而企业的应用行使多样化,既有传统的C/S模式应用,又有基于internet的B/S应用;既有基于Windows平台的.net应用,又有基于J2ee架构的应用。企业在进行信息化建设过程中,在没有实现同以用户及授权管理之前,各个系统的用户独立,且用户授权不能集中管理,这给企业信息化的系统管理员和操作用户带来很多不便。鉴于此,本文提出基于统一用户及授权管理解决方案。
1.3 定义
列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
1、SSO:Single Sign On,单点登录
1.4 参考资料
2 统一用户及权限管理平台解决方案
2.1 需求分析
统一用户权限管理主要解决的问题:
1、 提供用户注册
用户通过网上注册。
2、 提供统一的用户管理和授权管理(应用程序)
权限控制,只实现功能权限控制,而不实现数据(范围)权限控制,主要由于各个业务的数据访问规则很难归纳为标准的访问规则。而功能从权限的控制包括:
l 不做权限控制的功能,即不登陆就可操作,如:对外新闻、公告查询
l 公共功能:用户只要登陆就可操作的功能,如:内部新闻、内部公告查询
l 需权控制的功能:只有当用户拥有该功能的权限才能操作的功能
3、 提供统一的用户及权限认证接口
提供的统一的用户及权限认证接口同时满足C/S和B/S应用的用户认证和权限控制的需求;且对于B/S应用,既满足基于windows平台的.net应用,也满足与基于J2ee架构的应用。
4、 提供统一的数据访问接口
统一用户及权限管理平台提供各类数据访问接口,如:获取操作人员的信息、获取机构信息、获取系统功能信息等。
5、 系统具有较好的扩展性和灵活性
组织机构、用户的属性要求可以进行适当的增加,以满足各个不同企业的统一权限管理的需要。
统一权限管理,既满足与单个应用授权,也满足所有应用集中授权。
统一权限管理既满足一个机构集中授权,也满足多机构逐级受权。
在统一授权管理中,每个应用权限控制的粒度不一致,有的应用或模块控制得较粗,有的控制得较精确,如:对于数据的维护只是一个“数据维护”权限粗的控制,也可以控制到“数据新增”、“数据修改”和“数据删除”权限的精确控制上。
//以下由沈伟补充
6、 系统的单点登录(包括跨系统的应用调用)
7、 权限模型配置(包括模块与部分可通用的数据权限;数据权限做到什么程度需思考)。
对于第2点中细节描述部分,则形成需建成独立服务模式,而非源程序加载模式。此需求需讨论。建议:对SSO项目进行继承。
组织机构
管 理
应用系统
权限配置
应用系统
管 理
用 户
管 理
角 色
管 理
角色权限
分 配
用户权限
角色分配
统一用户、授权管理系统
身份认证接口
权限认证接口
数据访问接口
认证、服务
组织机构信息、用户信息、应用系统信息、应用系统权限(功能)配置信息、角色信息、角色(已分配)权限信息、用户(已分配)权限信息、用户登录日志信息
认证中心数据库
用户登陆
管 理
OA系统
。。。。。。
应急指挥系统
邮件系统
应用系统
认证、服务接口
图:统一用户及权限管理平台架构
用户注册
系 统
2.2 系统架构
如图所示,统一用户及权限管理平台系统功能由四部分组成:
1、 用户注册系统
用户注册系统提供用户网上注册。
2、 统一用户及授权管理系用系统
该系统主要由应用系统的系统管人员使用。
系统提供组织机构管理、用户管理、应用系统管理、应用系统权限(功能)配置管理、角色管理、角色权限分配、用户权限(角色)分配、用户登录管理功能。
3、 认证与服务
认证服务提供应用系统身份认证接口、权限认证接口、数据访问接口。应用系统同过调用身份认证接口实现用户身份认证;调用实现对用户权限认证;通过调用数据接口读取如用户信息、组织机构信息等数据。
4、 认证中心数据库
认证中心数数据库负责存储统一用户及权限管理的数据。
2.2.1 统一用户、权限管理数据流程图
统一用户、授权管理
(数据增、删、改维护)
其它系统认证信息
认证中心数据库
门户认证信息
邮件系统邮件帐户信息
图:统一用户、权限管理数据流程图
从以上图中可知,在进行统一用户、授权管理时,一方面对认证中心的用户信息、权限分配数据进行维护,另一方面,根据需要,可以对门户系统(如Liferay Portal、IBM Websphere Portal)中的相关的用户、权限分配信息进行同步更新,以及对邮件系统中的邮件帐户信息进行同步更新,以及对其它系统的认证信息进行同步更新。
通过以上方案,既满足了统一用户和授权管理,同时,又解决了门户系统、邮件系统等的用户管理、授权和认证问题。避开了去了解甚至重新构造门户系统、邮件系统等中的用户认证、权限认证问题。
2.2.2 新建应用、门户的身份认证、权限认证机制
用户
应用请求
门户请求
认证中心数据库
门户认证信息
门户单点登录
认证中心
统一用户信息数据库
用户认证接口
统一权限认证接口
门户权限认证接口
门户权限认证服务
统一用户权限管理认证服务
² 门户权限的认证由门户服务器提供的认证服务完成。
² 新的应用系统建设,其用户、权限是基于统一的用户、权限管理平台建设,用户身份认证、权限认证由我们提供的统一用户权限管理的认证服务完成。
2.2.3 老的应用系统的认证机制
老的应用系统的用户认证、权限认证仍然由老系统完成。若老的应用系统整合到门户,首先通过门户认证,然后再通过老的系统的用户、权限认证。具体如下:
用户
从门户应用请求
门户单点登录
认证中心
统一用户信息数据库
统一用户认证接口
原系统登录
原系统
认证信息
原系统用户认证接口
系统请求
原系统权限认证接口
认证中心与老系统认证映射据库
图:老系统用户、权限认证机制
2.2.4 关于邮件系统的用户认证问题
邮件系统的用户认证仍然由邮件系统提供的认证服务完成,只是,若需要进行统邮件系统的账户时,在对认证中心的用户进行维护时,对邮件系统的帐户信息(主要是用户名和口令)进行同步更新。
2.3 主要技术路线
l 统一用户和权限管理系统
该系统采用jsp+struts+hibernate的J2ee架构。J2ee WEB中间件采用TOMCAT。
l 认证接口
提供给应用系统的接口以webservice方式提供,实现方法采用一般的javabean实现。
l 数据库
在本方案中,数据库系统采用mysql数据库。
3 用户注册系统设计
此部分主要是想用户网上注册功能。
4 统一用户及授权管理系统设计
统一用户及授权管理系统主要实现的功能包括:
l 组织机构及用户管理
l 应用系统及功能管理
l 角色管理
l 角色权限分配
l 用户权限分配
l 用户登录日志管理
系统主界面如下:
4.1 组织机构及用户管理
1、 功能描述
采用树形结构对机构及人员进行维护管理。具体包括:
1) 机构的维护
l 机构新增
l 机构删除
l 机构修改
2) 人员的维护
l 人员新增
l 人员删除
l 人员修改
l 人员口令修改
l 注册用户审查
l 帐户开通/停止
3) 用户授权
l 用户角色授权
4) 用户权限查询
l 用户拥有的角色查询
l 用户拥有的权限查询
2、 界面样式
4.2 角色管理
对角色的维护管理,包括角色的新增、修改、删除。
4.3 角色权限分配
4.4 用户权限(角色)分配
4.5 登录(在线)用户管理
提供在线用户查询和注销在线用户功能。
4.6 辅助功能
4.6.1 系统操作管理
实现操作日志的查询和导出。
4.6.2 用户登录日志管理
实现对用户历史登录日志的查询和导出。
4.6.3 系统代码表管理
代码类别维护
代码维护
4.7 应用系统及功能管理
此部分功能一般只提供给开发应用开发上维护。主要实现应用系统目录维护和系统功能维护。
5 认证与服务接口设计
5.1 概述
企业的信息化建设通常是要建设多个应用系统,多个应用系统共用一套组织机构及权限管理子系统。组织机构中包括不同业务部门、不同行政级别的人员,不仅组织机构非常庞大,并且各个组织单元之间的关系错综复杂。为方便组织机构管理工作和授权管理工作的顺利进行,在组织机构及权限管理部分实行“逐级授权”的策略,将组织机构及权限管理子系统建设成为一个独立的Web应用,各个行政级别的系统系统管理员都可以登录到Web服务器上,进行组织机构和权限的管理和维护工作。
由于这是一个多应用系统,各个业务系统对权限分配的结果都有各自不同的展现方式,为使各个应用系统能够将组织机构管理和权限分配的结果实实在在的应用到各个业务系统中,组织机构及权限管理子系统向各个业务系统提供了统一的应用程序接口。接口以WEBSERVICE形式提供,为方便各个业务系统操作,接口的返回值以XML格式为主。各个业务系统根据权限管理子系统的返回值可以自行决定如何展现权限分配的结果。
5.2 接口详细描述
统一用户及权限管理平台以WEBSERVICE形式提供对外接口,返回信息以XML形式提供,接口如下:
5.2.1 判断用户是否合法
类名称
OrgManager
函数名称
功能描述:
根据用户登录名、口令判断用户是否为合法用户
调用语法:
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
返回值说明:
备注:
5.2.2 用户注销
类名称
OrgManager
函数名称
功能描述:
根据用户登录名注销登录用户
调用语法:
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
返回值说明:
备注:
5.2.3 用户修改密码
类名称
OrgManager
函数名称
功能描述:
用户修登录名注销登录用户
调用语法:
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
返回值说明:
备注:
5.2.4 获取用户登录信息
类名称
OrgManager
函数名称
功能描述:
根据用户登录名或用户ID号获取用户登录信息
调用语法:
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
返回值说明:
备注:
5.2.5 获取组织机构信息
类名称
OrgManager
函数名称
功能描述:
根据用户登录名或用户ID号获取用户登录信息
调用语法:
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
返回值说明:
备注:
5.2.6 获取用户完整信息
类名称
OrgManager
函数名称
getUserInfo
功能描述:
根据用户ID号获取用户完整信息
调用语法:
String getUserInfo (String userID)
throws AppException,RemoteException
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
返回值说明:
存在相应的结果信息时,返回值格式如下:
<?xml version="1.0" encoding="GBK"?>
<org>
<person id="xxxx"><--人员标识-->
<name>xxxx</name><--用户姓名-->
<admin_level>xxxx</admin_level><--管理级别-->
<ownerd_unit>xxxx</ownerd_unit><--设立机构-->
<department>xxxx</department><--部门-->
<district>xxxx</district><--行政区划-->
<telephone>xxxx</telephone><--办公电话-->
<email>xxxx</email>
<usb_state>xxxx</usb_state><--USB发放状态-->
</person>
</org>
没有相应的结果信息时返回空字符串””。
备注:
5.2.7 获取用户拥有的功能模块的完整信息
类名称
PrivilegeManager
函数名称
getModulesOfUser
功能描述:
根据用户ID号获取用户拥有的功能模块的完整信息
调用语法:
String getModulesOfUser (String userID)
throws AppException,RemoteException
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
返回值:
存在相应的结果信息时,返回值格式如下:
<?xml version="1.0" encoding="GBK"?>
<privilege>
<application id="xxxx" name="xxxx"><--应用。返回值中包含1个以上应用-->
<menu id="xxxx" name="name" title="xxxx"><--枝干菜单-->
<menu id="xxxx" name="name" title="xxxx"><--枝干菜单可以嵌套-->
<item id="xxxx" name="name" title="xxxx" location="xxxx"/>
<item id="xxxx" name="name" title="xxxx" location="xxxx"/>
<--一个枝干菜单下包含1个以上叶子菜单项-->
</menu>
</menu>
<menu id="xxxx" name="name" title="xxxx">
<item id="xxxx" name="name" title="xxxx" location="xxxx"/>
</menu>
<--一个应用下包含1个以上枝干菜单-->
</application >
<application id="xxxx" name="xxxx">
<menu id="xxxx" name="name" title="xxxx">
<menu id="xxxx" name="name" title="xxxx">
<item id="xxxx" name="name" title="xxxx" location="xxxx"/>
</menu>
</menu>
</application >
</privilege >
没有相应的结果信息时返回空字符串””。
备注:
5.2.8 获取用户拥有的一级功能模块
类名称
PrivilegeManager
函数名称
getRootModulesOfUser (String userID)
功能描述:
根据用户ID号获取用户拥有的一级功能模块
调用语法:
String getRootModulesOfUser (String userID)
throws AppException,RemoteException
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
返回值:
存在相应的结果信息时,返回值格式如下:
<?xml version="1.0" encoding="GBK"?>
<privilege>
<application id="xxxx" name=”xxxx”>
<menu id=”xxxx” name="name" title=”xxxx”/>
</application >
<application id="xxxx" name=”xxxx”>
<menu id=”xxxx” name="name" title=”xxxx”/>
</application >
<--应用。返回值中包含1个以上应用-->
</privilege >
没有相应的结果信息时返回空字符串””。
备注:
5.2.9 获取用户拥有的某一一级功能模块下的所有子功能模块
类名称
PrivilegeManager
函数名称
getRootModulesOfUser (String userID)
功能描述:
根据用户ID号、一级功能模块ID,获取用户拥有的某一一级功能模块下的所有子功能模块
调用语法:
String getChildModulesUnderOneRootOfUser (
String userID,
String applicationID,
String rootModuleID)
throws AppException,RemoteException
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
applicationID 应用ID号 String 输入
rootModuleID 一级功能模块ID号 String 输入
返回值:
存在相应的结果信息时,返回值格式如下:
<?xml version="1.0" encoding="GBK"?>
<privilege>
<application id="xxxx" name="xxxx">
<menu id="xxxx" name="name" title="xxxx">
<menu id="xxxx" name="name" title="xxxx">
<item id="xxxx" name="name" title="xxxx" location="xxxx"/>
<item id="xxxx" name="name" title="xxxx" location="xxxx"/>
<--1个枝干菜单下包含1个以上叶子菜单项-->
</menu>
<menu id="xxxx" name="name" title="xxxx">
<item id="xxxx" name="name" title="xxxx" location="xxxx"/>
</menu>
<--1个根菜单下包含0个以上枝干菜单-->
</menu>
</application >
</privilege >
没有相应的结果信息时返回空字符串””。
备注:
5.2.10 获取用户拥有的某一末级功能模块的操作列表
类名称
PrivilegeManager
函数名称
getOperationsInOneEndModuleOfUser
功能描述:
根据用户ID号、应用ID、末级功能模块ID,获取用户拥有的某一末级功能模块中的所有操作
调用语法:
String getOperationsInOneEndModuleOfUser (
String userID,
String applicationID,
String endModuleID)
throws AppException,RemoteException
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
applicationID 应用ID号 String 输入
endModuleID 末级功能模块ID号 String 输入
返回值:
存在相应的结果信息时,返回值格式如下:
<?xml version="1.0" encoding="GBK"?>
<privilege>
<application id="xxxx" name="xxxx">
<menu id="xxxx" name="name" title="xxxx">
<menu id="xxxx" name="name" title="xxxx">
<item id="xxxx" name="name" title="xxxx" location="xxxx"/>
<operation id="xxxx"/>
<operation id="xxxx"/><--包含1个以上操作标识-->
</item>
</menu>
</menu>
</application>
</privilege>
没有相应的结果信息时返回空字符串””。
备注:
5.2.11 判断用户是否拥有的某一末级功能模块的某一操作权限
类名称
PrivilegeManager
函数名称
isHaveOperationInOneEndModule
功能描述:
根据用户ID号、应用ID、末级功能模块ID、操作名称,判断用户是否拥有的某一末级功能模块的某一操作权限
调用语法:
boolean isHaveOperationInOneEndModule (
String userID,
String applicationID,
String endModuleID,
String operationName)
throws AppException,RemoteException
参数描述:
参数标识 参数名称 数据类型 输入/输出
userID 用户ID号 String 输入
applicationID 应用ID号 String 输入
endModuleID 末级功能模块ID号 String 输入
operationName 操作名称 String 输入
返回值:
-true 拥有
-false 没有
备注:
5.2.12 获取某一功能模块的ACL—尚需进一步研究
类名称
PrivilegeManager
函数名称
getAclOfModule
功能描述:
根据模块ID号获取属主应用、同类应用、其它应用对当前模块的操作权限。
调用语法:
String getModuleACL (String moduleID)
throws AppException,RemoteException
参数描述:
参数标识 参数名称 数据类型 输入/输出
moduleID 模块ID号 String 输入
返回值:
String型模块ACL属性,ACL属性由三位数据组成,第一位代表属主应用的权限,第二位代表同类应用的权限,第三位代表其他应用的权限。每一位有四个枚举值:
0:没有权限
1:查询权限
2:修改权限
3:查询、修改权限
备注:
5.2.13 获取某一模块的数据级权限规划规则—尚需进一步研究
类名称
PrivilegeManager
函数名称
getDataAuthRuleOfModule
功能描述:
根据模块ID,用户ID获取当前操作员能够在当前模块上操作哪些行政区划内的数据。
调用语法:
String getDataAuthRuleOfModule (String moduleID,String userID)
throws AppException,RemoteException
参数描述:
参数标识 参数名称 数据类型 输入/输出
moduleID 模块ID号 String 输入
userID 用户ID号 String 输入
返回值:
存在相应的结果信息时,返回值格式如下:
<?xml version="1.0" encoding="GBK"?>
<dataprivilege>
<dataarea includesubunit="yes">123456</dataarea><--元素值为行政区划代码-->
<dataarea includesubunit="no">222222</dataarea>
<-- includesubunit属性标识是否包含下级机构数据-->
<-- 返回值中包含1个以上dataarea 元素-->
</dataprivilege >
没有相应的结果信息时返回空字符串””。
备注:
重庆南华中天信息技术有限公司 第 4 页 共 40 页 2024-5-7
6 数据库设计
说明:
数据库的对象(包括数据库表名、字段名、索引等所有数据库中的对象)的名称全部以小写命名。
6.1 机构信息
系统编号:ZT_YHQXGL
系统名称:统一用户权限管理
更新频率:
存储编码:ORG_UNIT
存储名称:组织机构信息
存储容量:10~1500
序号
字段名
字段含义
类型
NOT NULL
说明
1
UNIT_ID
机构标识
VARCHAR2(32)
Y
PK
系统生成
2
UNIT_NAME
机构名称
VARCHAR2(32)
Y
3
UNIT_DESC
描述信息
VARCHAR2(255)
4
UNIT_OWNERED_UNIT
上级机构
VARCHAR2(32)
在系统中创建该机构的机构的标识
5
UNIT_DISTRICT
行政区划
VARCHAR2(30)
值如:重庆市、
重庆市江北区、
值取自AA10表
7
UNIT_TYPE
机构类型
VARCHAR2(8)
8
UNIT_ORGID
组织机构编码
VARCHAR2(32)
要求管理员手工输入
9
UNIT_LEVEL
机构级别
VARCHAR2(8)
1:市级
2:区级
3:街道级
UNIT_LINKMAN
联系人
VARCHAR2(10)
UNIT_TELEPHONE
联系电话
VARCHAR2(20)
UNIT_ADDRESS
地址
VARCHAR2(50)
UNIT_POSTALCODE
邮政编码
VARCHAR2(6)
UNIT_BANK_CODE
银行行号
VARCHAR2(40)
UNIT_BANK_NAME
户名
VARCHAR2(50)
UNIT_BANK_ACCOUNT
银行帐号
VARCHAR2(40)
6.2 用户信息
系统名:ZT_YHQXGL
系统名称:统一用户权限管理
更新频率:
存储编码:app_user
存储名称:用户信息
存储容量:
序号
字段名
字段含义
类型
NOT NULL
说明
1
USER_ID
用户标识
VARCHAR2(32)
Y
PK
系统生成
2
USER_ACCOUNT
用户帐号(用户名)
VARCHAR2(32)
Y
唯一
3
USER_PWD
用户密码
VARCHAR2(32)
加密存储
4
USER_NAME
姓名
VARCHAR2(32)
5
Is_individual_account
是否个人账户
VARCHAR2(1)
0-否/1-是
6
Id_card_no
身份证号码
VARCHAR2(20)
7
User_type_code
人员类别代码
VARCHAR2(32)
8
Certificate_type_code
其它证件类别代码
VARCHAR2(32)
9
Certificate_no
其它证件号码
VARCHAR2(32)
10
UNIT_ID
人员所属机构ID
VARCHAR2(32)
FK
UNIT_ID->ORG_UNIT.UNIT_ID
11
Headship_code
职务代码
VARCHAR2(32)
12
USER_EMAIL
电子信箱
VARCHAR2(32)
13
USER_TELEPHONE
电话
VARCHAR2(15)
14
USER_DESC
备注说明
VARCHAR2(255)
17
USER_CREATEDBYUNIT
创建机构
VARCHAR2(32)
18
account_status
帐户状态
VARCHAR2(1)
0-账户未开通/停止
1-开通/有效
19
Valid_tmie
帐户有效期
timestamp
20
Reg_time
注册时间
timestamp
21
Reg_ipaddr
用户注册IP地址
VARCHAR2(32)
22
Auditing_time
审核时间
timestamp
23
Auditing_person
审核人
VARCHAR2(10)
24
Auditing_result
审核结论
Auditing
0-无效
1-有效
25
Disqualification_cause
审核未通过原因
VARCHAR2(255)
说明:
1 Is_individual_account(是否个人账户):
0- 否:当不为个人账户时,即允许多个人同时使用(登录)
1- 是(缺省):允许多个人同时使用(登录)
2 当对注册用户审核时,审核通过,则账户自动开通
3 若账户有效期到期,则账户自动“停止”,此功能实现由系统自动完成。
6.3 角色信息
系统编号:ZT_YHQXGL
系统名称:统一用户权限管理
更新频率:
存储编码:ORG_ROLE
存储名称:角色信息
存储容量:1000~1500
序号
字段名
字段含义
类型
NOT NULL
说明
1
ROLE_ID
角色标识
VARCHAR2(32)
Y
PK
系统生成
2
ROLE_NAME
角色名称
VARCHAR2(32)
Y
唯一
3
User_type_code
人员类别代码
VARCHAR2(32)
4
Org_type_code
展开阅读全文