用户认证
用户认证结构图:
客户端传送用户名、密码信息到服务器,通过J2EE服务进行验证。让不同的客户端有统一的权限认证。
用户权限与许可集
用户权限简单说就能做什么(操作)和能看什么(访问数据)。IFS用户权限以Oracle权限为核心,引入角色(也叫许可集)概念,并和Oracle角色一一对应。
角色分为功能角色和最终用户角色,本质上是将Oracle视图数据查看权限(视图数据修改权限不给任何角色和用户)和Oracle Package权限授予给用户。Oracle 没有对Package中的方法和函数设置权限,所以对具体Package方法和函数的权限由Security_SYS控制(权限保存在SECURITY_SYS_TAB表中)。在调用Package 方法和函数的时候,General_SYS.Init_Method会Security_SYS.Check_Method_Access_来进行权限校验。(如果没有写General_SYS.Init_Method,那么这个方法就不能细粒度进行控制)。
用户不具有直接访问基表的权限,也从不具有视图的写权限。
相关概念:
服务器端相关概念:
OLA:将系统实现分解成持久层、业务逻辑层和数据存储层的C/S架构。
Logical Unit:面向对象概念,由OBJID, OBJVERSION, attributes and methods组成。一个LU可对应0、1、n个视图,一个LU可对应0、1、n个package。
Base methods:New, Modify and Remove
Other methods:其它业务逻辑方法
LU-dictionary:存储在Dictionary_SYS服务中,捕获所有数据对象和信息。
客户端相关概念:
Data source:用于连接LU逻辑单元层的持久层
Data item:用于连接LU属性的持久层
Base method