APP下载

勘探信息系统统一认证与访问控制的实现

2015-01-25李微巍

中国管理信息化 2015年1期
关键词:访问控制页面统一

李微巍

(辽河油田勘探开发研究院,辽宁 盘锦 124010)

1 引言

目前,在辽河油田公司内部运行的勘探数据库应用系统有十余套,包括勘探信息管理系统、勘探成果发布系统、地震数据发布系统、勘探部署与网上审批系统、录井实时发布系统等,这些系统在用户管理上基本都自成体系,用户访问不同的应用系统则需要在不同的系统中输入用户名和口令,而且由于在每套应用系统中用户的用户名和口令都不一定相同,因此用户需要记忆每一套应用系统的用户名和口令,这为用户带来了极大的不便。建立统一登入系统及认证标准,实现统一认证,单点登录,并且根据用户权限访问控制实现登录系统后操作权限范围内的业务及浏览权限范围内的页面,确保各系统信息的安全性、保密性、方便性。

2 统一认证平台体系架构

用户集中统一认证系统采用Web Service技术,基于LDAP和数据库认证相结合的方式,实现统一、集中的用户管理。系统体系架构如图1所示。

图1 统一认证体系架构

2.1 认证服务器分析

该系统采用B/S结构,认证服务器负责对用户进行身份验证,并把认证结果返回给应用服务器。

2.2 身份信息处理和通信

应用服务器根据认证的结果,结合其自身的RBAC访问控制系统,对用户访问系统进行授权。认证服务端由SAML响应器、身份验证服务和认证服务数据库构成。SAML响应器用于与应用服务端进行SAML协议信息。用于完成认证服务器和应用系统的身份信息处理和通信。

2.3 身份验证服务的分析

身份验证服务主要用于对登录用户进行验证;认证服务数据库用于保存与用户的身份相关的信息。应用服务端由SAML响应器、RBAC访问控制和应用系统数据库组成。SAML响应器用于与认证服务端进行SAML协议信息,用于完成认证服务器和应用系统的身份信息处理和通信。

2.4 RBAC访问控制组件的研究

RBAC访问控制组件用于根据用户在该系统中的角色对用户访问系统的权限进行有效的控制;应用系统端数据库主要包括应用系统的账户和对应权限信息,当然还应包括用于保存应用系统业务数据的信息。

3 数据库设计

3.1 统一认证系统包含两部分数据库

按照模型设计的要求,统一认证系统包括两部分数据库:一部分属于认证服务器的主系统数据库,另一部分是应用系统的子系统数据库。

设计主系统数据库的目的主要是为了表达同一用户管理模型中的映射关系,把各应用系统的账户和统一的用户ID联系起来。

数据库由Application、User 、User_Account_Application 3 个表构成,各表之间通过外键相关联。

表User的主要作用是为了表达统一身份认证的统一用户的目的。各应用系统的各个账号由User表中的user_ID表示。这样,用户的身份就被统一起来了,用户的验证主要根据这张表的user_code 和 password 判断,它由用户唯一标志(user_code)、密码(password)和用户名(user_name)构成。

表User_Account_Application的主要作用是建立用户到各应用系统中的账号,与账号对应访问的系统建立对应关系。根据登录模型设计的要求,访问控制由系统自行决定。所以,建立这样的关联后,用户访问各系统就可以根据系统自身的访问控制表进行用户系统授权。

3.2 访问控制部分

它由用户唯一标志(user_code)、账号标志(obj_id)和应用系统唯一标志(application_id)构成,这3个字段联合构成一个主键,用于表示三者的唯一关系。表Application的主要作用是描述应用系统的信息,包括应用系统唯一标志(application_id)、应用系统名称(application_name)和应用系统的访问地址(application_url)。

3.3 各系统应用数据库

该数据库包括4个基本信息表,即User(用户表)、Role(角色表)、Privilege (权限表)、Object(操作对象),它们分别定义了用户、角色、权限、操作对象各个实体的基本信息。

3.4 认证端账户概念

它对应于认证端的账户概念:Role表用于定义角色,一个角色代表享有系统相似权限的一部分人;Privilege表用于定义系统的权限;Object表用于表达系统的功能实体,它和权限通过Privilege_To_Object(权限-操作对象关系表)关联起来,用于表达访问控制的结果。

User_To_Role(用户-角色关系表)主要用于描述用户到角色的对Role_To_Privilege(角色-权限关系表)用于表达角色拥有的权限。

3.5 通过权限限制

通过用户就能够找到用户到权限的一个对应。同样,User_To_AddPrivilege ( 用 户 - 附 加 权 限 关 系 表 )、User_To_SubPrivilege(用户-限制权限关系表)也可以分别得到一个用户到权限的对应。

4 系统实现

系统开发重点包括两部分:认证端和应用系统端。

4.1 认证端(Identity Provider)

应用系统信息页面主要根据已经通过验证的登录用户,依据数据库中该用户对应的可访问的应用系统信息,在页面上显示,供用户选择登录。用户选择登录后,将生成用户认证断言和票据并保存在应用中,然后把票据传递给应用服务器的票据接受处理页面,由应用系统端作进一步处理。

断言查询的功能主要是根据应用系统端传递过来的请求信息找到对应该请求的断言,并根据该断言把断言结果返回给应用系统端,应用系统端作进一步处理。

认证端数据库的主要功能是保存用户的身份验证数据和应用系统信息的相关信息。

图2 应用系统管理功能界面

4.2 应用系统端

应用系统端中包含的页面和其对应的功能票据接收页面根据认证服务器端的票据构造SAML请求对象,并把查询断言传递到认证服务器,认证服务器根据其保存的断言信息返回查询结果(SAML返回对象)给该页面。

应用系统端根据该结果决定是否给用户访问。身份认证代理将应用系统标识,及用户、密码发给统一认证服务器,由统一认证服务器进行认证,并返回ClientSessionID。身份认证代理跳转回应用系统URL,并将ClientSessionID作为参数一起发送给应用系统。

系统默认页面是该页面为应用系统的总控制台,在这里可以访问应用系统的具体功能。如果用户认证成功,则表示用户有权进入该应用系统,该页面将根据对用户的访问控制权限,对用户访问系统的功能作限定。

应用系统端数据库主要功能是保存原有系统的用户身份信息和对应访问控制信息。

图3 统一身份认证访问入口调用过程

[1]万明,聂鹏.XML 在统一身份认证中的应用[J].计算机与现代化,2009(12).

[2]李孟河.基于角色的访问控制技术及其应用[J].计算机应用研究,2002(10).

猜你喜欢

访问控制页面统一
刷新生活的页面
坚持严管和厚爱相统一的着力点
碑和帖的统一,心和形的统一,人和艺的统一
统一数量再比较
ONVIF的全新主张:一致性及最访问控制的Profile A
动态自适应访问控制模型
浅析云计算环境下等级保护访问控制测评技术
大数据平台访问控制方法的设计与实现
坚持“四纳入” 实施“四统一”
网站结构在SEO中的研究与应用