访问平台

2024-05-04

访问平台(精选七篇)

访问平台 篇1

关键词:权限控制,Java,基于角色的访问

1 基于角色的访问控制方法(RBAC)

在角色访问控制技术中,往往使用角色(Role)来隔离使用者与权限。所有授权都给予了Role而不是用户或工作组。基于角色的访问控制方法(RBAC),可以降低系统权限控制管理的复杂性,降低管理成本,同时对企业的安全策略可以提供灵活地支持,使企业在调整变化时具有较大的伸缩性。

1.1 基本概念

RBAC权限管理思想核心是Who、What、How。这三者在RBAC模型中组成了访问权限控制的三元素。

Who:系统中权限访问的控制权利所用者;

What:系统权限控制所针对的发出访问的对象;

How:使用了哪种权限方式来回答访问者(同意或拒绝)。

Operator:操作。

Role:角色,也是系统中的若干权限的集合,可以起到隔离用户与权限的逻辑关系。

Group:分组,分配权限的单位与载体。分配权限给组,组可包含用户,用户可继承组的权限。用户与组可以是多对多,也可以是多对一,并可分不同的控制层次,以满足不同层级权限控制的要求。

1.2 RBAC原理

基于角色的访问控制方法(RBAC)的核心思想在于角色、用户和权限三者的关系。一般称为用户分配(User Assignment,简称UA)和权限分配(Permission Assignment,简称PA),且用户分配UA和权限分配PA左右两边都是多对多关系,也就是用户可以有多个角色(Role),角色也包含着多个用户。在这种关系中需要中间表使两个表保持关系。UA与PA就相当于中间表,而且RBAC都是基于这样的关系模型。

在RBAC中集合是比较隐晦的一个元素,每个集合是一个映射。当用户在激活它的所有角色的子集时,对应着一个集合。每个集合关联一个用户,但每个用户可关联一个或多个集合。

在RBAC系统中,会有多人有相同的权限要求,因此引入了“组”的概念。并可以用参与者(Actor)来取代用户,“组”同样也看作是参与者。在Party模式中,每个使用者可以对应到一个用户,但不是所有用户都对应使用者。Party中的部门或组织,都能对应到分组,而分组却不一定对应一个机构。比如,可以有部门经理这个分组,这是因为许多人都有同样的职位。利用分组可以处理多人角色相同的问题,还可以解决角色访问控制中的授权问题。例如,质量部门的信息可以让所有质量部门的人看到,通过质量部门对应的分组,就可授权访问控制权限给这个分组。

2 Java权限系统介绍

Java的权限系统的核心主要由创造权限、分配权限、使用权限三部分组成,然后,系统围绕这三部分分别实现权限的创造、分配、使用。

2.1创造权限

在这里是指权限与资源的对象声明,还没有把权限与具体资源联系起来,形成权限实例。

2.2分配权限

是指将权限与资源实例(Resource Instance)关联,产生了权限实例。系统管理员建立他认为合适的权限模型。如建立角色、用户组,给用户分组,将用户组与角色关联等。

2.3使用权限

是指通过使用分配权限去使用各个子系统。系统管理员建立一个比较适合管理和维护的权限模型,规定什么权限可访问什么资源,即上面所说的权限实例。这样就如同给系统穿上了盔甲,起到保护作用。系统管理员可以设定权限框架,自行增加、删除、管理使用者与权限之间关系,同时可设定用户与角色的对应关系。权限实例就好似纽带,是Java系统中最关键的部分,联系着程序、管理员、用户之间的关系。

3具体功能模块举例

3.1建立角色功能并做分配

(1)建立一个管理模块,此模块具有增加、修改、删除功能。并且给每个功能各分配一个ID,即功能代号。

(2)建立一个角色,把ID功能代码放到角色的权限中,存到系统数据库中。这个角色包括系统管理员,系统维护人员等。

(3)建立员工账号,并设定员工一个或多个角色。如既可是公司管理人员,也可是质量部门人员等。这样登录到系统中就可看到拥有权限的模块。

3.2把身份信息加到集合中

员工登录时,系统会先进行身份认证,再在数据库中检查员工角色和权限,把权限的信息集中到一个值中,然后把值保存在一个UserInfoBean中。最后把这个UserInfoBean放到集合中,这样系统运行过程中,便可取得这个用户的身份信息。

3.3根据用户的权限做出不同的显示

可以通过功能ID判断当前用户权限。例如:假定在系统权限数据库中的没有这3个ID的任何一个,那这个菜单就不会显示,如果员工的值中有任何一个ID,那这个菜单都会显示出来。

4 Java基于角色的访问控制方法的特点

4.1扩展性

Java基于角色的访问控制方法具有了创造权限、分配权限、使用权限的基本框架,在实际使用中,用户或组的概念一般不需要经常扩展,较多的是在系统中引入新的类型和操作方式。因此,不应只在权限上扩展。权限设置解决了“怎样”操作的问题,还需要确定其层次。再近一步,可以发现权限还有What的概念。即对于What的How操作才是一个完整的操作。权限系统的扩展性主要体现在Operator(Resource+Permission)的概念上,采用Proxy模式是比较适当的模式。该模式主要是:在业务逻辑层(EJBSessionFacade[StatefulSessionBean]),取得该方法名称定义(Methodname),再以类别名称和检索权限实例数据,依据权限实例信息和状态(Stateful)保存的用户信息,来判断当前使用者是否具有权限。

4.2灵活性

系统中并不是一定需要分组和角色,二者主要起到辅助实现的作用。如角色较多,每个都需进行授权,就会让系统变得非常繁琐,与“简单、便捷”理念相违背,于是在系统中划分了分组,将相同权限的角色组成不同的Group,然后集中授权。角色把实际用户和组从权限中解放出来,每个用户均可是不同的角色,在授权上具有非常大的灵活性。同时,分组也有类似的灵活性。

另外,为了授权更灵活,在系统中使用了范围(Domain)的概念,将Where或区域抽象出来,称为范围。真正的授权都是在范围中进行的,不同资源分属不同的范围。如,一个跨国公司销售有国内部与国际部两个部分,这两部分均有各自的资源。如果所有国内的邮件权限规则相同,所有国外的邮件权限规则也相同,就可分建两个域,然后进行分别授权,将各部门邮件与对应的域关联,通过域进行权限限制,使权限管理得到简化。

在权限系统设计时,还可灵活分开功能性的授权与资源性的授权。许多系统都是对数据(资源)的维护进行权限控制,对系统功能的权限没有进行控制。同时,最好对权限系统进行分层管理而非集中管理。许多用户都希望可以自行管理本部门的内部事务,不需集中在管理员组来进行管理。如将不同部门的人都加入管理员组,则其他部门人员的权限明显过大,超出了本部门可管理的资源。

5技术实现具体模式

(1)Java基于角色的访问控制一般常用的是表单式认证模式。这种模式比较真观、简单,就是在系统的权限控制过程中,当用户访问到一个没有被授权访问权限的资源时,系统的Web容器就会相应出现一个Html页面,并要求使用者输入用户名和密码。

(2)第二种模式,是使用一个基于登录/退出模式来集中处理所有的请求,这种技术实现方法的缺点是需要用应用程序自己来进行权限管理的处理。

(3)第三种模式,运用过滤器来防止系统中一些没有权限的用户去访问系统中一些需要权限的资源,Filter会截取所有请求,然后会在用户的Session中设置一个需要验证通过的标识。在系统实际运行中,Filter将每次通过验证这个标识来决定是否通过用户的请求。以上这种模式在具体运用中又可细分为以下几种步骤:

看门者:通过使用使用过滤Filter或统一程序的方式。

验证器:在页面中通过Jaas方式来自已实现验证。

用户资格存储LDAP或数据库:

(1)看门者(Gatekeeper)会拦截验证每一个访问受保护的资源的请求。首先,会检查提出请求的用户是否已经创建好了,如否,则看门者会继续检查该用户在系统中有无一个全局的与验证器相联系的集合。

(2)如用户仍然没有全局的集合,刚会被转为验证器的登陆页面,并要求用户输入用户名和身份密码。

(3)验证器经过验证用户的在系统中设置的用户名和密码,来确定该用户是否可以通过访问资源的请求。

(4)在上一步中,如果系统成功通过了用户的验证,刚验证器将为用户创建一个全局登陆集合,同时会通过Gatekeeper来为用户在Web应用中建立一个登陆集合,以便下次用户提出请求时,可以首先验证用户的登陆集合来通过用户发出的请求。

(5)在系统中验证器和看门者将共同分享Cookie,或者在Query字符里使用Tokens。

6结语

总之,Java基于角色的访问控制方法设计时要合理地运用简单、便捷理念,使系统在实际使用中可以灵活地扩展。同时,系统要尽量使用集中管理权限方式,来负责用户访问权限的维护与使用,并注意一般权限与特殊权限的区别。开发人员在开发功能模块时,需要对安全管理模块进行细致研究和设计,同时,更要从业务上熟悉本模块的安全规则。权限管理并不是安全管理模块独自可以完成的事情,需要对系统中的各个功能模块加以综合考虑,才可以保证系统的安全。这样,也就能够使Java系统的权限控制管理得到很好的应用。

参考文献

[1]王鑫.基于角色的权限系统开发与应用[D].成都:西南交通大学,2005.

[2]田好美.基于Java的安全访问控制技术的研究与实现[D].武汉:华中科技大学,2007.

[3]罗锐,程文青.Java安全体系在Web程序中的研究和应用[J].计算机应用研究,2006(7).

访问平台 篇2

随着互联网中的云计算应用越来越广泛,微软,谷歌等IT业巨头都在不断的扩建自己的云计算平台,但是伴随着云计算应用范围的不断增大,信息安全已经成为了制约与计算平台发展的重要原因之一,一些涉及到网络安全的技术逐步被人重视,Window Azure平台是微软开发的一款云计算平台,其主要作用是通过Internet平台为其他运行的应用程序服务,最大可能的保证性能不降低。如何能够最大限度的利用Win?dows Azure平台的数据存储安全技术,从而能够保证云计算平台具有开发的安全性和灵活性是目前研究的重点。目前访问控制技术是元计算平台领域中一种非常重要的技术,它的思想是采用一定的策略,首先对主体进行验证,然后对客体的访问权限进行设置,可以很好地保证云计算环境中的访问权限的的安全性,从而保证云计算机节点的资源能够合理的被使用,从而避免来自系统内部的破坏。

访问控制是一种重要的技术,是保证云计算平台的信息机密性和完整性的重要组成部分。本文针对在Windows Azure 云计算模型的基础上,针对现有的任务-角色访问控制模型,提出一种新的访问控制模型。该模型可以在一定程度上有效地减少资源调度的耗时以及数据访问控制的安全性。

访问平台 篇3

【关键词】数据访问中间件;移动ERP;协同办公; JSON

本文设计一种基于数据访问中间件的移动ERP协同办公系统平台。

一、数据访问中间件

数据访问中间件是位于应用程序和数据库之间的一类服务程序,主要用于实现应用程序与本地或异地的同异构数据源的数据交换,即屏蔽数据库底层细节问题。

考虑移动应用开发的复杂性及移动终端系统与计算机集成的复杂性,本文选择数据访问中间件作为移动ERP与异地ERP数据库进行数据通信的桥梁。

二、移动ERP协同办公平台框架设计

本文设计的基于数据访问中间件的移动ERP协同办公平台框架采用三层架构:移动客户端、应用服务器端和数据库服务器端。中间件有多项实现技术,其中Web服务技术是基于SOAP等技术,使用的都是标准的协议,如HTTP、TCP/IP等,因此Web服务可以非常简便的方式进行远程传输。而J2EE是一个开放的、基于标准的开发和部署平台,主要用于在服务器端开发可伸缩、可迁移、以数据库为核心的企业级应用[3]。因此本文设计基于Web服务的解决方案,采用J2EE开发移动ERP协同办公平台的数据访问中间件。

三、数据访问中间件服务接口层设计

(一)接收请求

当移动ERP客户端通过HTTP协议发送数据请求时,服务接口接收请求,并调用HttpServletRequest对象来获取请求数据。

(二)解析请求

服务接口判断请求的类型,若是查询请求则生成相应SELECT语句,调用数据处理层数据查询类访问ERP数据库查询数据;若是操作请求则生成相应的INSERT、UPDATE、DELETE语句,调用数据处理类操作ERP数据库处理相应业务请求。

(三)数据格式转换

JSON是一种轻量级的数据交换格式,其数据量小可减少占用的带宽,使跨平台数据传输变得相对容易[4] 。数据格式转换模块负责将返回结果数据转换为JSON格式,并返回给移动ERP终端。

将ResultSet结果集转化为JSON格式的关键代码如下:

// 定义JSON数组、对象

JSONArray myArray = new JSONArray();

JSONObject jsonObj = new JSONObject();

// 使用ResultSetMetaData获取列信息

ResultSetMetaData metaData = rs.getMetaData();

int colCount = metaData.getColumnCount();

// 遍历ResultSet中数据

while (rs.next()) {

// 遍历每一列

for (int i = 1; i <= colCount; i++) {

String colName =metaData.getColumnLabel(i);

String value = rs.getString(colName);

jsonObj.put(colName, value); }

myArray.put(jsonObj); }

return myArray.toString();

四、数据访问中间件数据处理层设计

采用ArrayList对象进行封装。

1) 数据查询

DataMid类提供getResultSet方法查询数据,其关键代码如下:

//调用getConnection()方法连接指定数据库

Connection conn= getConnection();

//实例化PreparedStatement对象,使用executeQuery()方法执行select查询并返回结果集

PreparedStatement pstm=conn.prepareStatement(sql);

if (paras != null) {

Object obj[] = paras.toArray();

for (int i = 0; i < obj.length; i++) {

if (obj[i] instanceof String) {

pstm.setString(i+1, (String) obj[i]); }

}

}

ResultSet rs = pstm.executeQuery();

return rs;

2) 數据处理

DataMid类提供handleData方法处理数据,其关键代码如下:

int n = 0;

//调用getConnection()方法连接指定数据库

Connection conn= getConnection();

//实例化PreparedStatement对象,使用executeUpdate ()方法执行insert、update、delete语句

PreparedStatement pstm=conn.prepareStatement(sql);

if (paras != null) {

Object obj[] = paras.toArray();

for (int i = 0; i < obj.length; i++) {

if (obj[i] instanceof String) {

pstm.setString(i+1, (String) obj[i]); }

}

}

int n = pstm.executeUpdate();

return n;

五、结论

实验证明本文设计的基于数据访问中间件的移动ERP协同办公平台框架可以解决远程跨平台移动ERP应用程序与异构或同构数据源之间的通信问题,采用JSON格式交换数据有效解决了移动应用受带宽限制及网络流量低的问题,为实现ERP协同办公数据和信息的有效共享提供了一种行之有效的途径,在一定程度上完善了移动ERP协同办公系统的体系结构。

参考文献:

[1]蒋晓丹,丁霞军,张妞. 数据访问中间件在移动学习平台的研究与设计.福建电脑,2013,29(2):22-23.

[2]胡锦丽.一种基于json的modbus远程通信实现方式[J].机电技术,2014,38(2):36-39.

[3] 陈锐浩. 基于Android平台的移动课件的设计及制作[J].现代计算机(专业版),2013,30(3):55-58.

访问平台 篇4

人类进入21世纪后, 以互联网为核心的在线软件服务Saa S (Software as a Service) 的发展势头突飞猛进, 甚至于将掀起一场势不可挡的新技术革命, 整个软件产业向Saa S转型已成必然趋势[1]。从Saa S产业的发展来看, Saa S的平台化是必然的发展方向。Saa S平台下, 不仅需要一个通用的访问协议满足不同Web服务发布的需求, 同时还需要一个安全的访问机制以保障平台以及集成服务的安全性。SOAP (Simple Object Access Protocol) 消息基于XML扩展具有跨平台的特点, 能很好满足不同Web服务的发布需求, 但安全性问题是一个复杂的问题, 而且急需解决, 尽管HTTPS解决了对窃听者屏蔽消息的问题, 但不能满足安全性更高的特殊用户认证的特定Web服务的要求。基本的解决方法是扩充SOAP的消息头, 增加安全访问控制与处理消息。

2 SOAP 消息

在使用 Web 服务时[2,3], 应用程序间的传输是通过SOAP消息完成的。SOAP消息内部封装了XML文档。SOAP消息主要包含3个主要的元素:Envelope, Header和Body。Envelope是SOAP消息根元素, 这个元素在SOAP消息中必须存在, 它告诉接收方SOAP消息的基本情况。Header是可选元素, 主要的作用是传递辅助性的附加消息, 比如身份验证、会话等。Body元素是SOAP消息体, 包含数据或错误消息[4]。基本结构如下:

3 SOAP 消息服务应用访问控制模型

在 Saa S 平台与平台集成服务通信过程中[5,6], 要对交换的SOAP消息进行处理, 首先得截取交换的SOAP消息, 而最佳的截取时机有两个:

(1) SOAP 请求 (Request) 消息被平台创建后, 还未发送到集成服务前;

(2) SOAP 响应 (Response) 消息被平台接收, 还没被平台处理器处理之前。

设计两种消息处理程序, 分别在这两个时机对SOAP消息进行添加或解析安全访问控制信息, 实现访问控制策略, 形成SOAP消息访问控制模型, 模型结构图如图1所示。

图1中, Saa SRequest Interceptor 和 Saa SResponse Interceptor 表示平台SOAP请求和响应消息处理程序, 通过调用SOAP安全工具包对SOAP的消息的安全消息进行添加、验证。SOAP安全工具包是本模型的核心, 是一个守护进程, 它实现了安全性的5个需求, 即保证了SOAP消息的机密性、完整性、可用性、消息源认证性、不可否认性, 提供端到端的安全性、应用的独立性、传输的独立性、存储消息的安全性等SOAP通信中所需要的典型安全特性。主要由安全信息处理、授权信息处理、签字处理、加密处理、认证信息处理5部分组成。

(1) 安全属性处理模块:为了防止重放、中间人等攻击, 设计了包括时间戳、有效期、发送者、接收者4项缺省安全属性, 并可进行扩展, 添加其他安全属性;为防止攻击者篡改安全属性, 对安全属性进行数字签名。

(2) 授权信息处理模块:授权信息的设计主要是进行细颗粒度的平台集成服务访问控制, 授权信息由角色证书来表示。

(3) 签字处理模块:基于XML数字签名技术实现消息的签字及验证功能。同时, 利用XKMS技术实现基于XML的密钥管理。

(4) 加密处理模块:基于XML加密技术实现SOAP消息的加密及解密功能, 密钥管理基于XKMS技术。

(5) 认证信息处理模块:构造与解析X.509证书等认证方式所需的XML认证信息元素。其中, 二进制安全性令牌 (如X.509证书) 的构造将遵循WS-Security规范中的相应编码规则。

平台服务应用客户在请求服务时, SOAP请求消息在被Saa SRequest Interceptor截取后, 经过“添加安全属性、添加授权信息、签字、加密、添加认证信息”等5个过程被转换成具有安全信息的SOAP消息, SOAP响应消息被Saa SResponse Interceptor截取后, 经过“处理安全属性、分析认证消息、解密、签字验证、授权信息处理”等5个过程将消息恢复成原有的SOAP消息包。因此, 每个步骤都在对SOAP消息进行安全性扩展处理。例如, 在SOAP请求消息授权模块中, 支持X.509证书等认证方式, 定义了相应的XML认证信息元素Binary Security Token元素, 并实行签字、加密处理。平台服务应用客户的请求被封装成SOAP消息, 传送到Saa SRequest Interceptor调用SOAP安全工具包, 并经过图2所示的流程完成认证信息的构造。

4 CXF 框架下的模型实现

CXF 框架包括 Celtix 和 XFire, CXF支持SOAP 1.2的高效开源框架, 通过提供简单的API和支持标准协议, 可以方便地开发面向服务的程序。内建在STAX基于流的XML解析引擎的基础上, CXF拥有很高的性能, 可以方便地与Spring框架集成, 并可作为Eclipse的插件使用。

在平台服务应用客户应用服务中, 为了避免欺骗 (Spoofing) 攻击, 实现可靠通信, 在对Web服务的访问过程中通常采用双向的消息可靠性验证[5]。在平台进行集成服务访问请求时, 保证访问的安全性, 添加安全认证信息, 服务应用响应信息返回时, 同时进行响应消息的安全认证, 验证判定是否来自于其他非法消息。设计一个Saa SRequest Interceptor处理类截取SOAP请求消息, 一个Saa SResponse Interceptor处理类截取SOAP响应消息, 一个SOAPSafe Util类负责SOAP安全工具包内各模块串联。

SaaSRequestInterceptor类示例代码如下:

SaaSResponseInterceptor类示例代码如下:

通过以上设计, 该访问模型能够很方便地进行扩展, 如果访问策略的改变, 即访问认证的某一项的生成方式发生改变, 只需要更改SOAP安全工具包内的特定类。

5 结束语

Saa S 平台是互联网软件高速发展的方向, 平台访问安全控制成为了首当其冲需要解决的问题, 基于SOAP的服务应用访问控制模型实现了对平台集成服务的消息级访问控制。通过设计请求响应消息拦截类实现消息访问的双向验证, SOAP安全工具包能够适应各种访问控制策略的需要, 同时能够方便的扩展。该模型完全支持WS-Security安全标准, 而且由于模型按职责链模式进行设计, 结构上高内聚、低耦合, 非常容易扩展用于提供更加全面的访问控制。通过CXF框架下的实现, 证明了该访问模型具有实际应用价值。

参考文献

[1]叶伟.互联网时代的软件革命:SaaS架构设计[M].北京:电子工业出版社, 2008.

[2]Austin D, Barbir A, Garg S.W3C Web services architecture requirements[EB/OL].http://www.w3.org/TR/2002/WD-wsareqs, 2002-04-29.

[3]McGuire C, Roth C, Carroll D.P1atform Fundamentals——An Introduction to Custom Application Development in theCloud[M].USA:Sales.force.corn, inc, 2008.

[4]赵鹏.浅析SOAP协议信息系统[J].信息系统与网络, 2008, 38 (6) :8-11.

[5]张功萱, 宋斌, 王平立.基于SOAP的网络消息安全策略[J].南京理工大学学报, 2007, 31 (1) :66-70.

访问平台 篇5

关键词:云平台,CRM系统,访问控制,Thrift框架

0引言

随着云计算的发展,云平台的部署应用日渐增加,将传统的CRM系统迁移到云平台下也是大势所趋。云平台下CRM系统为企业带来按需使用、按需付费的CRM服务体验,能够有效地管理客户资料、员工信息以及产品信息,并且降低了企业CRM服务的使用成本,直接促进了CRM在企业中的发展。

云平台CRM的出现能够加快中小企业的信息化建设进程,但是在云平台CRM的发展中,我们也应该注意到作为维护系统安全的一种重要手段,云平台CRM系统的访问控制设计也变得非常重要。由于云平台下CRM系统是以公司为一个租户单位进行服务租赁的,传统的基于角色的访问控制模型并不能完全适应云平台下CRM系统的访 问控制的 需求 , 应该为云 平台下的C R M系统设计或者改进出一种适合云平台C R M系统的访问控制模型。

1传统访问控制策略

访问控制策略是为了满足诸多应用系统在网络中安全访问的需求而出现的,它的出现极大地改善了应用系统资源面临的安全隐患。所谓访问控制,就是判断使用者是否具备使用或者更改某一项资源的权限,防止没有权限的使用者滥用资源。作为确保系统安全的一个重要手段,访问控制已被国际标准化组织定义为安全体系设计标准五大安全服务功能之一。

访问控制一般包括三个实体:访问主体,即主动发出访问请求或者存取请求的进程或者用户等;访问客体,即被访问的对象,诸如进程、数据、文件等;安全访问策略,即判断访问主体是否拥有客体访问权限的规则。现在计算机系统中经常采用的访问控制策略有:DAC(自主访问控制)、MAC(强制访问控制)、RBAC(基于角色的访问控制)。

DAC出现于上世纪70年代初期的分时系统中,常用于多用户环境下。它是由访问主体自主地管理自己的客体,主体拥有客体的访问授予权或者部分访问授予权。自主访问控制通常采用访问控制表来实现,或者称为基于列的访问控制方法,就是为每个客体都附加一个可对它进行访问的主体的明细表。在访问控制表中,每一项都包含了主体的身份和该主体对客体的访问权限。DAC适用于用户较少、资源较少的情况,用户非常多时,每一张访问控制表都会非常大,资源很多时,访问控制表的数目也会很大,不便于修改和管理,而云平台下CRM系统恰恰资源很多,用户很多,所以自主访问控制不能满足云平台下CRM系统的访问控制需求。

MAC出现于上世纪60年代,主要应用于多层次安全级别的军事应用中。它的思想是为系统中的主体和客体分别分配一个固定的安全等级,利用比较安全等级是否相同来决定主体是否可以访问客体。在MAC中,安全级别是固定的,强制性的,安全管理员分配完成后,主体不能改变自己或者客体的安全级别。MAC对客体采用的是一种绝对严格的访问控制,因此系统若完全采用MAC机制,会严重影响系统的灵活性。云平台下系统租户很多,用户更多,访问需求更是千差万别,所以MAC不能满足云平台访问控制的需求。

RBAC出现于上世纪90年代,由于为管理员提供了一个容易实施的安全策略,一经出现,迅速成为了市场的主流。RBAC是在用户和权限之间引入了角色,用户不再直接和权限发生关系,而是采用对角色授予权限,再对用户授予角色的方式间接地为用户授权。角色作为一些权限的集合,通过角色授权比直接授权增大了对用户授权的粒度,而且角色作为用户职责的抽象,相对用户来讲更稳定,一般不会变动,具体来讲,原来用户发生变动,需要对用户重新授权,非常冗杂,而现在角色的权限分配之后一般不会变化,用户发生变动之后只需重新赋予角色就可以完成对用户的授权。

RBAC空间上授权的粗粒度,时间上授权频率的降低都直接减少了对用户授权的复杂性,更重要的是RBAC可以动态地改变用户权限,具有良好的灵活性和安全性,是一种有效的访问控制方式。RBAC能够适应云平台下CRM系统的访问控制,但是不能完全满足访问控制的需求,需要做一定的改进。

2需要作出的改进

云平台下CRM系统是作为服务供多个公司使用的,其租户很多,况且为保证租户之间的隔离性,应该将公司设定为一个独立的租户单位。

云平台下资源众多,应该添加资源实体和操作实体,对资源进行管理,对操作进行存储,并且在功能中进行资源操作的绑定。

传统的RBAC机制,对用户的功能的调整完全根据角色的重新赋予来实现,有时差别不大的两个角色就会出现严重的功能重叠,并且当一个用户的权限增大时,只能通过对角色赋予更大的权限或者新建角色来实现,这样会导致用户该角色的所有用户权限都增大或者系统的角色不断增加,非常不灵活。我们可以将职责相似的部分抽象为一个角色,至于角色没有覆盖到的权限,可以增加用户功能表,单独进行授权,既保证灵活性又保证操作简单。

另外一种情况下,用户赋予了角色,角色拥有功能(a、b、c、d),现在因为工作调整,用户不能接触功能(c、d),为了不影响其他用户对这个角色的使用,也只能采用给用户新建一个角色来实现,用户使用之后再删掉新建的角色,也是比较繁琐的,我们可以通过用户角色功能的绑定来实现。

3设计与应用

3.1数据库设计

云平台下CRM系统的访问控制包含公司、部门、角色、用户、权限、资源、操作等实体。在数据库,我们需要建立公司表、部门表、用户表、角色表、权限表、资源表、操作表、用户角色表、用户权限表、角色权限表、用户角色权限选择表等。

公司表。用来保存公司信息,公司是一个独立的、租用服务的实体单位。一个公司可以有多个用户。每个公司申请到服务之后所有针对服务的操作都是提供给本公司内部用户使用的,不会影响其他公司的服务使用。

部门表。用来保存部门信息,区分用户部门。部门和用户是一对多的关系。

用户表。存储使用云平台CRM系统服务的用户信息。用户分为两类,系统管理员和普通用户,系统管理员是公司申请到服务之后能够管理服务和管理普通用户的较高权限的用户;普通用户则是直接使用服务进行业务操作的用户。在公司申请服务成功后,系统管理员首先进行一系列基础操作,如添加用户、添加角色、赋予权限等。普通用户获取账号后,可以在其权限范围内访问服务进行业务操作。普通用户职位发生变动,需由系统管理员重新为其分配角色,或者直接授予权限。

角色表。存储系统角色信息,角色由系统管理员添加。角色是用户和权限之间的桥梁,一般情况下,权限优先通过角色赋给用户,除非角色的权限大于用户所需,将为用户新建一个角色或者先为用户赋予一个小角色,再直接赋予用户需要的额外的权限。角色和用户、角色和权限都是多对多的关系。

权限表。存储每个资源的操作。权限实际上就是功能,离开功能,单独讲权限是没有意义的。用户拥有什么样的权限就拥有这些权限对应的功能。功能相对于权限是具体的,包括系统功能和业务功能。权限表的结构如表1所示。

资源表。存储资源信息。资源是被保护的对象,包含硬件、软件以及数据等。资源表的结构如表2所示。

操作表。存储所有需要获取权限才可以进行的操作。操作是针对资源的行为集合,包含读取、写入、删除、查询等。操作表的结构如表3所示。

表3操作表 (参见右栏)

除了上述基本表之外,还有用户角色表、角色权限表、用户权限表、用户角色权限表等。表4、表5给出了用户权限表和用户角色权限表。

3.2系统实现

系统采用可扩展的跨语言服务开发框架-Thrift框架实现,将系统功能模块封装为服务。

Thrift采用IDL(接口描述语言)定义并创建服务,支持可扩展的跨语言服务开发。为了保证CRM软件与其他外部实体(如用户、其他软件系统等)的通信服务不受运行平台和部署环境的影响,我们为每个功能模块都提供了Thrift IDL接口,其他外部实体通过ThrifClient调用该IDL接口即可实现跨平台的通信。我们首先编写用户、角色、权限等实体的struct文件,如用户文件:

然后编写用户管理、角色管理等的IDL,例如用户管理:

通过Thrift编译工具编译,struct文件将生成数据库表,而用户管理的Thrift文件编译之后将生成java文件,文件中包含用户管理Thrift文件中描述的服务的接口定义,以及服务调用的底层通信细节,包括客户端的调用逻辑以及服务器端的处理逻辑,最后我们在通过Eclipse中新建工程来实现用户管理、角色管理、权限管理等等。

3.3系统流程

本文设计的服务使用流程为:公司申请并获取服务后,由公司管理员管理服务和普通用户,普通用户获取权限后再使用服务进行业务操作。具体流程如图1所示。

图1访问控制流程图 (参见右栏)

4小结

现代中小企业在发展的过程中,需要快速把握市场动态,维护客户关系,因此CRM系统是企业必不可少的客户关系管理工具。由于处于成长初期,中小企业一般没有能力承受高昂的软件购买费用,云计算的蓬勃发展为中小企业使用CRM系统提供了新的方式。由于云平台下软件即服务的模式能够减少企业生存成本,这一具有巨大市场需求的新技术具有非常良好的发展前景。

访问平台 篇6

Sinema Remote Connect远程管理平台可以确保对控制中心、服务工程师与已安装设备之间的VPN通道进行安全管理。服务工程师和待维护的机器设备分别与Sinema Remote Connect远程管理平台建立连接。远程管理平台通过交换证书来验证各个站点的身份, 然后才允许对设备进行访问。禁止未经授权访问带有运行设备或机器的企业网络, 从而提高安全性。VPN通道连接基于证书加密, 符合Open VPN标准, 并通过最高4096位加密予以保护。机器设备访问权限的分配, 可利用该管理平台简便的用户管理功能进行集中管理。所有站点均可以手动方式启用或禁用, 这样, 制造商的客户 (设备用户) 也可以永久性地控制对其企业网络的每一次访问。

借助集成的地址簿功能, 所有机器设备均可通过Sinema Remote Connect远程管理平台进行唯一识别和选择———即使它们具有相同的本地IP地址。然后, 只需点击鼠标就可以建立VPN连接。Sinema Remote Connect远程管理平台是一个不受协议限制的 (协议无关) 管理平台。这意味着, 与机器的连接一旦建立, 用户就可以采取不同的应用来进行远程维护, 如使用Simatic STEP 7编程软件 (TIA Portal) 。

访问平台 篇7

自2003年以来,由广东省科技厅和广州市科技局联合,启动生物种质资源数据库共建联动项目,逐步建成了水稻、蔬菜[1]、旱地作物、果树[2]、茶树、山茶[3]、蚕桑[4]、名优花卉[5]、树木、真菌、昆虫[6]、淡水鱼、Beagle犬等23个生物种质资源库(圃),保存有农作物种质资源43600多份,并建有6个国家资源圃和分圃,建立了46个种质资源数据库,录入数据库数据36万个。广东农作物种质资源保存数量居全国各省前列,也是国内开展生物种质资源库建设时间最早、规模最大、涉及生物门类最多的省份,并且成为了华南地区具有国际意义的生物多样性中心[7]。从以上可见,广东在生物种质资源库的建设以及数据采集与整理方面已取得了较大成效。

2 存在问题

尽管广东生物种质资源库及数据收录方面已取得显著成绩,但也存在许多制约因素阻碍了其长足发展以及发挥物种信息的实用价值,主要存在以下突出问题[8]:

2.1 种质资源数据分散

我省生物种质资源丰富,数量繁多,但由于地域差异、种质资源的特征特性各异,物种研究单位多,目前仍没有建立统一的、规范的种质资源数据管理体系,已建成的各个生物种质资源数据库的结构也存在较大差异,物种资源采集记录信息不完整,造成各物种研究单位的数据分散。

2.2 信息开放性和数据共享管理程度低

我省已建立了相关的作物种质资源保护体系,包括6个国家资源圃和分圃,省内40多家物种研究单位通过广东生物种质资源数据库管理系统保存了比较丰富的品种资源数据,但各单位间各自为政,自我保护意识强,具有同类属性物种间信息开放性和共享程度低,即使已对外提供有偿数据共享单位也存在共享管理缺陷,满足不了用户及时获取数据的需求,不能形成有效的合力进一步发挥物种资源的开发价值。

2.3 缺乏数据的深层挖掘与开发

目前数据资源收集和整理方面已较完善,但大量优异种质资源未能得到及时、深入的研究和挖掘,未能提取有效信息去实现种质资源信息的增值服务,造成不必要的人力、物力的浪费和不利于创新、选育出更多的新品种、新品系,阻碍了种质资源的创新和利用。

2.4 数据库的利用率没有得到充分发挥

种质资源数据库作为一种网络化载体的信息资源,已成为各级物种研究单位资源的重要组成部分,省内各生物种质资源研究单位都很注重数据库建设工作,已有22个种质资源圃库都建立了种质资源数据库,其中荔枝、香蕉种质资源的部分数据建立在国家资源圃数据库上,然而其利用率却不是很高,构建数据库的目的主要还是为了本单位数据管理、保存方面,未进行信息高度共享,没有充分发挥对我国相关生物产业的支撑作用,战略生物资源的利用效率低。

通过分析广东生物种质资源库及数据资源建设的现状及存在问题,反映出一个事实:即实现物种资源的合理共享和数据的适度开放性,支持分散的异构数据库的集约化管理,提高物种资源的利用率,是我们当前急需解决的关键问题[9]。因此,本文针对以上问题而提出以开放式访问的方法研究广东生物种质资源数据共享管理平台架构,并构建开放式访问的生物种质资源数据共享管理平台,通过该平台实现对生物种质资源信息的共享管理,克服种质资源数据仅被个人或单位占有、互相封锁保密的状态[10],面向广大物种科研机构、教学机构、科研工作者、生产服务部门等提供多元化的生物种质资源数据共享服务,为开发、利用和保护广东丰富的生物种质资源提供信息和依据[11]。

3 开放式访问的数据共享管理平台的关键技术

为了满足提供多元化的生物种质资源数据共享管理与服务,生物种质资源数据共享管理平台开发将主要采用开放式访问(Open Archive Initiate,OAI)技术和联合国粮农组织元数据标准(FAO AgMES)的农业数据资源组织方法相结合,并引用当前计算机网络技术、信息技术来实现。

3.1 开放式访问(Open Archive Initiate,OAI)技术

基于开放式访问的OAI协议的模式是由美国弗吉尼亚理工大学发起的NDLTD(network digital library of thesis and dissertation) [12],这种方式非常符合生物种质资源的数据共享,其目的是实现分散的、不同系统平台之间的数据交换和共享,提高系统的互操作能力。遵循OAI协议的系统依据其任务的不同,可分为数据提供方( Data Provider),是对来自服务提供者的request(请求)做出response(响应),以OAI要求的格式(XML)向服务提供者提供元数据;服务提供方( Service Provider)作用是 "获取"(harvest)元数据,在OAI框架下,开放式访问的种质资源库,作为数据提供者,可以是任意技术平台和内部结构,可以有自己专门的服务系统、元数据格式、检索协议,但可以支持第三方系统(即数据采集方)利用元数据采集协议采集自己的元数据,服务提供方采集数据提供方的元数据,并以此为基础建立索引,提供数据共享、查询服务,并基于元数据进行物种数据的集约化管理和深层挖掘、分析服务。

OAI的优点是数据提供方和服务提供方为实现跨库检索所需付出的编码代价都比较小,比较容易实现,而且这种方式开放共享的只是元数据,而不是数字对象本身,即有利于各类异构资源的发现,又能保障商业数据库的利益,实现的OAI协议,对数据采集方而言,就是按照协议规定的格式和参数发送指令;对数据提供方而言,就是能对由采集方发起的请求指令按协议规定的格式返回对方想要的数据,从而为用户提供数据共享服务。因此,采用OAI技术构建生物种质资源数据共享管理平台,非常符合物种数据资源的开放服务,目前已被各级图书馆领域引用来实现开放式访问系统的建设。

3.2 元数据标准(FAO AgMES)的数据资源组织方法

种质资源信息资源组织主要采用元数据获取机制实现,从而达到数据共享管理的目的。元数据获取是一种互操作解决方案,允许物种资源提供者与物种资源利用者之间进行沟通,以统一命名(标准化的元数据)、基于常用句法的数据结构和元数据获取协议,即遵循OAI协议由数据提供方( Data Provider),是对来自服务提供者的request(请求)做出response(响应),以OAI要求的格式(XML)向服务提供者提供元数据;服务提供方( Service Provider),作用是 "获取"(harvest)元数据,由此定义了两个等级合作伙伴间沟通为主的架构,从而两者之间的沟通可以通过被称为“元数据收获”的互操作解决方案实现[12]。并且通过元数据对生物种质资源的整合,构建生物种质资源数据库,并以可以理解的信息描述进行传递,为复杂的生物种质资源共享平台建立一种机器可理解的框架,该框架最终生成一个完整的物种资源数据词典。数据词典标准格式的建立,是提供物种数据资源规范化管理和共享服务的重要基础。

4 平台设计与实现

4.1 开发工具

开放式访问生物种质资源数据共享管理平台以开放式访问(OAI)技术和元数据标准的数据资源组织方法为核心,并基于J2EE体系的多层结构、主要采用Java语言开发,同时引入Web2.0的RSS技术,实现物种研究单位共同织网的目标,以种质资源科研机构为中心,让每个用户都参与到不同物种知识库建设中来,从而为用户提供一个物种数据集中管理、数据共享和数据服务的人机交互的网络平台。

4.2 平台体系架构

平台体系主要由表现层、逻辑事物层、数据服务层三层结构组成,其中表现层是数据共享管理平台的显示终端,逻辑事物层是平台的主要业务功能,数据服务层是平台的整个数据聚集中心,该中心整合各物种研究单位种质资源数据,实现对种质资源的保存、信息检索查询和应用,以网络的形式向物种单位及相关育种部门提供科学参考[13]。

4.3 平台功能模块

平台功能包括用户管理、我的工作台、数据浏览、数据检索、数据订阅、用户交流等6个模块,通过各业务功能实现种质资源数据的共享管理并提供数据共享服务。平台功能模块组成图如下所示:

(1)用户管理

平台将用户设置为注册用户、物种单位用户等用户角色,根据用户角色的不同限制用户的共享权限。注册用户可以浏览、检索平台信息、RSS订阅自己喜欢的专题以及在平台上在线咨询、反馈意见等;而物种单位用户在注册用户的功能上有针对性的开放不同栏目的信息上传、编辑、删除以及浏览全文数据内容的权限,使得各物种单位不仅可以在平台上查看到所有的信息,并且可以在平台上管理本单位的物种资源数据。这将使生物种质资源数据在实现共享的同时,也能保障数据不会被任意上传和编辑、详细的种质资源参数不会被任意浏览,能有效保障数据的可靠性、安全性。

(2)我的工作台

为了适应不同用户的功能需求,平台设置“我的工作台”功能,可根据用户的权限,出现不同的功能界面。如注册用户可修改用户信息,包括修改用户姓名、联络电话和密码,而作为物种单位的管理用户,除注册用户的功能以外,还可在我的工作台中上传、修改、删除该物种单位的物种资源数据,以及查看该单位已经上传成功的物种资源数据。

(3)数据浏览

为使用户能很方便、快速的查看到所需的数据,平台设置了按专题、日期、作者、关键字等多种浏览方式。例如,按专题浏览是按照物种选育单位及物种类别进行分类的,用户可根据物种单位和物种类别,快速查看到各个单位及各个物种类别的数据。

(4)数据检索

数据检索是用户查找所需数据内容的主要手段[14],但生物种质资源数据的参数多,仅靠元数据字段不能充分展示出资源的特性,这对用户检索数据带来了阻碍。为此,本平台通过引用全文检索引擎,使数据检索不仅支持信息元数据的检索,还能支持附件文章的全文检索,并且在传统全文检索的倒排索引的基础上,实现了分块索引,能够针对新的文件建立小文件索引,提升索引速度。用户只需使用NOT、OR、AND等检索关键字就能在本平台中高效、快速的检索到生物种质资源数据。

(5)数据订阅

为了用户能更方便、更快捷地了解生物种质资源数据动态,我们推出了RSS(简讯聚合)订阅功能。用户只需在RSS阅读器或者具备RSS订阅功能的浏览器内订阅感兴趣的专题,即可自动获取即时的报道信息,以便及时了解所关注物种的最新数据。

(6)用户交流

用户交流功能是方便用户可以将需要咨询的问题、意见及建议等,通过用户反馈功能实时提交给平台管理人员,用户提交后,平台管理人员将会立即收到用户反馈过来的信息并及时回复。

5 平台开放式服务

通过集成广东生物种质资源各级共建联盟单位丰富的数据资源,并为平台中各物种单位分配权限,对于有需求的用户,通过平台传达后由物种单位用户授权开放相关物种数据浏览、检索、下载等。

6 结论

通过引入开放式访问技术研究广东生物种质资源数据共享管理平台架构,整合现有分散的生物种质资源数据,对种质资源数据进行集中管理,提高物种数据的共享程度,对各科研、教学机构的种质资源数据进行重组和系统优化,扩大了种质资源信息交流的范围,有助于省内众多种质资源异构数据库间的管理及种质资源知识的挖掘,并对大量的、分散的、不一致的种质资源资料进行归纳整理,转换成集中统一的、可随时取用的深层信息,充分发挥品种资源数据信息的优势,更好地为科研、教学机构、广大科研工作者、育种工作者和生产部门服务。

目前平台在标准化数据词典的基础上建成了近40个物种的数据资源库,录入数据2万多条,并已面向广东省各级物种单位提供开放式种质资源信息服务,有效地克服了数据资源的个人或单位占有,互相封锁保密的状态,使分散在各地的种质资源变成可供迅速查询的种质信息,为国家科学基础数据共享平台提供数据对接与数据共享搭建了桥梁,对促进生物种质资源数据的共建共享、提高生物种质资源数据的共享管理水平以及持续发挥种质资源数据库的综合利用率具有现实意义。

摘要:根据广东生物种质资源库及数据资源的建设情况,分析生物种资源数据共建共享方面存在的问题,引入开放式访问技术提出一套生物种质资源数据共享管理平台的构建方法,为相关科研单位提供开放式访问的生物种质资源数据共享服务。

本文来自 360文秘网(www.360wenmi.com),转载请保留网址和出处

【访问平台】相关文章:

访问流量04-24

页面访问升级06-16

网站访问速度05-06

访问权限控制05-13

共享目录访问范文05-26

名师访问有感范文05-30

深圳调查访问范文05-31

访问梅奶奶作文04-09

来校访问主持词04-17

访问学者研修计划05-09

上一篇:班主任应具备的能力下一篇:开展语文实践活动课