基于角色的协同虚拟环境研究

上传人:cn****1 文档编号:564495689 上传时间:2023-09-07 格式:DOCX 页数:11 大小:16.92KB
返回 下载 相关 举报
基于角色的协同虚拟环境研究_第1页
第1页 / 共11页
基于角色的协同虚拟环境研究_第2页
第2页 / 共11页
基于角色的协同虚拟环境研究_第3页
第3页 / 共11页
基于角色的协同虚拟环境研究_第4页
第4页 / 共11页
基于角色的协同虚拟环境研究_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《基于角色的协同虚拟环境研究》由会员分享,可在线阅读,更多相关《基于角色的协同虚拟环境研究(11页珍藏版)》请在金锄头文库上搜索。

1、基于角色的协同虚拟环境研究摘 要 本文根据协同虚拟环境中的角色需求,提出一个适应协同虚拟环境的角色模型,给出一个带有时间空间特性的角色访问控制模型TSRBAC,使协同虚拟环境具有更全面的安全属性描述。在此基础上,构建一个基于角色的协同虚拟环境系统RBCVES。 关键词 协同虚拟环境;角色;虚拟现实1 引言 协同虚拟环境(Collaborative Virtual Environment,CVE)于20世纪90年代中期提出,在一组以网络互联的计算机上同时运行虚拟环境实现协同工作。随着虚拟环境、网络、计算机支持的协同工作和图形学技术的飞速发展,促进了人们对协同虚拟环境的研究兴趣,也推动了该领域的发

2、展。协同虚拟环境作为通信和合作的强大的工具,在娱乐、商业、教育、工程和医药等领域有很广泛的应用1。 CVE要在一个三维虚拟环境中实现多个用户对虚拟空间、虚拟实体和资源的共享,目的是通过网络通信实现异地用户之间协同工作,共同完成任务。为了适应CVE在Internet上的应用需求,我们需要考虑在CVE中用户和权限的控制,确保用户对各种物体和资源享有不同权利和义务,从而更好地维护用户间协同的顺利进行。 角色机制一方面可以实现权限的有效管理和用户的合理授权,提高系统交互性,另一方面对访问和操作进行合法检测,能够提高系统安全性。本文在CVE系统中引入角色机制作为支撑技术,通过面向角色的软件方法来实现系统

3、功能。2 模型设计 角色模型 通常角色指的是一组权利和义务的集合。权利代表了许可,即对象对于一组目标资源允许或者禁止的行为;义务代表了职责,即对象对于一组目标物体必须做或者绝对不做的行为。权利(Permissions)和义务(Obligations)是角色的核心要素,但并不是全部要素。角色还应该具备角色标识符号、承担该角色的对象负责的一个或多个子目标、角色拥有的资格、角色的状态与其它角色之间的各种关系等要素。 基于以上分析,我们给出如下角色模型: 定义1 角色模型Role_ModelRole_Model= “ROLE”IDNameGoalsQualificationsStatusPermiss

4、ionsObligationsRelations“END_ROLE”各属性定义 ID是系统实现时,对角色的标识,每个角色只有惟一的ID。 Name是角色的名称标识。 Goals是角色对应的子目标。 Qualifications是角色拥有的资格。 Status指的是角色的状态。表明了角色在某一时刻所处的行为。 Permissions是一组权限的集合。指定该角色执行的操作哪些是允许的,哪些是禁止的,以及哪些资源是可利用的,哪些资源是不可用的。 Obligations是角色的义务集的动态体现。该集合规定了角色必须执行的一组特定行为,它反映了角色必须完成的目标和行为约束。另外,角色的义务集也反映了角色

5、之间的组织关系,即在组织内部,角色之间的相互负责关系。每一个obligation都要包含obligated_roles、authority_roles、benefited_roles和rules。其中,obligated_roles定义了该义务的承担角色集,authority_roles定义了对该义务具有授权功能的角色集,而benefited_roles则定义了履行该义务后的收益角色集合,rules定义了义务履行的规则集。 Relations是该角色与其它角色之间的关系,如角色的继承和派生等关系。 带时空特性的角色访问控制模型 基于角色的访问控制模型(Role-Based Access Con

6、trol,RBAC)最早是在 1992年由Ferraiolo和Kuhn提出的。RBAC模型的突出优点是简化了各种环境下的授权管理。通过引入角色这一中介实现了用户与权限的逻辑分离。RBAC的思想是将权限赋予角色。角色实际上是与特定工作岗位相关的一个权限与职责的集合,与用户相比角色是相对稳定的。当用户改变时,只需要进行角色的撤消和重新分配即可。RBAC 访问控制模型不仅易于管理而且降低了复杂性、成本和发生错误的概率,因而近年来得到了极大的发展。典型的RBAC模型如RBAC96模型和NIST 标准 RBAC 模型。在此基础上,人们提出多个扩充模型。 文献中,在 RBAC 基础上作了时间特性方面的扩展

7、,在无时间特性的角色访问控制的形式化表达的基础上,对授权约束及其时间特性进行分析,提出了一个带时间特性的角色访问控制模型TRBAC(Timed Role-Based Access Control)。TRBAC有着更全面、更具体的安全属性描述能力。TRBAC 定义了系统时钟,对约束、会话和系统状态空间本身进行了时间扩充,解决了时间授权约束和会话的状态转变问题。 在CVE系统中,时间固然是一个不可忽视的要素,同时它也是一个三维渲染的虚拟世界。因此,在这个四维环境中,不仅要考虑时间特性方面的影响,还要考虑空间特性对角色的约束。传统模型的弱点在于都没有考虑主体执行操作时所处的环境,这样容易造成安全隐患

8、。所以,我们在RBAC模型和TRBAC模型的基础上,结合CVE的特点,提出一个带有时间和空间特性的角色访问控制模型TSRBAC(Timed and Spaced Role-Based Access Control),更好地满足CVE系统的需求。TSRBAC模型继承TRBAC的所有元素,包括其时间约束,并进行空间约束的扩充: 定义2:空间点序列 S= (xi,yi,zi) | i N ,S是虚拟世界所有空间点的集合。(xi,yi,zi) S表示虚拟空间中的一点。与建立三维虚拟空间时的坐标相吻合。 为讨论方便,我们定义如下函数: min(i,j),两个数比较,取较小值;max(i,j),两个数比较

9、,取较大值; span(i,j)=(min(i,j),max(i,j),任意两个数确定的区间。 定义3:空间范围序列 SR =(xi,yi,zi) | xi span(xj,xk),yi span(yj,yk),zi span(zj,zk),(xj,yj,zj),( xk,yk,zk ) S ,空间范围是由两个空间点确定的范围,这个范围是以给定的两个点为对角线确定的长方体。因为空间形状复杂多样,为了方便描述、表示、计算,我们选取了这种简单方便的确定空间范围的方法。 SRS = 2SR 表示由空间范围构成的集合。 用 C表示所有的约束集合,S_C表示所有TSRBAC中的空间约束。 定义4:空间约

10、束谓词定义 In_SRange CSRS 表示约束 C 在指定的空间范围集合 SRS 内必须成立。 定义5:空间约束定义 S_C = In_SRange(C,SRS) 3 基于角色的协同虚拟环境系统设计与实现 系统框架设计 本文在以上角色模型和带时空特性的访问控制模型基础上,提出一个基于角色的协同虚拟环境系统RBCVES (Role-based Collaborative Virtual Environment System)。RBCVES采用客户机/服务器结构,集成JAVA和VRML技术,创建一个共享的虚拟世界,并实现在虚拟世界中的协同活动。系统体系结构图如图1所示。图1 RBCVES体系结

11、构图 客户端采用VRML结合Java Applet来实现,由VRML浏览器、Java Applet和本地场景实体库构成。其中VRML浏览器是展示协同虚拟场景的接口,负责向用户展示三维虚拟世界;Java Applet随同VRML世界同时下载,完成客户端需要实现的功能,例如客户端和服务器之间的通信、信息的过滤和一致性维护等功能;本地场景实体库存放用户自身的替身模型、感兴趣用户的替身模型和本地共享场景实体模型。 服务器端包括基于角色的访问控制系统、角色服务器、注册服务器、CSCW服务器、聊天服务器、视频服务器以及相关的数据库。其中角色服务器和访问控制系统是RBCVES的核心组件,实现了系统中基于角色

12、的访问控制。注册服务器实现对系统中所有实体基本信息的管理,包括用户信息管理器和共享实体信息管理器。CSCW服务器是系统实现协同活动的核心模块,负责维护虚拟环境中各模型的状态,进而维护整个虚拟世界,包括建立和断开通信连接、用户加入和离开、用户间协同会话、协同信息的管理规划、操作响应、信息一致性维护以及兴趣域管理等。聊天服务器负责单用户之间、用户组之间的文本聊天(例如共享白板),增强系统交互性。多媒体服务器实现用户之间、用户组之间的音频和视频通信,使协同虚拟环境的场景信息更加丰富,提高系统感知性。 关键部分实现 系统使用VRML进行场景建模,作为系统的显示引擎实现与用户的交互。 Java Appl

13、et对VRML节点进行扩充,实现复杂的功能,包括信息流动、数据处理、冲突检测等。使用VRML的外部程序接口EAI(External Authoring Interface),实现VRML虚拟空间和Java Applet之间的相互通讯。利用VRML的ProximitySensor(邻近检测器)节点可以跟踪本地用户视点的移动和转动并获得位置(Positiochanged)和方向值(Orientationchanged),这两个值一方面可以确定本地用户的空间角色约束,另一方面可用于改变其它用户的VRML虚拟空间中该用户3D替身的位置和方向。 用户在进行操作时,首先要提交请求给访问控制系统,访问控制系

14、统访问角色服务器,获得用户的角色,访问控制系统再对角色的访问请求权限进行验证,如果验证成功就将请求发送给其它功能项目服务器进行处理,否则将会拒绝用户的请求。设置角色权限验证的函数为:bool access_r (string roleID,string operation),第一个参数是角色ID,第二个参数是请求的操作。函数返回一个布尔类型的值,返回true表示请求成功,返回false表示访问被拒绝。 4 结束语 本文将角色理论应用于协同虚拟环境,提出的角色模型能够适应CVE需求,在现有角色访问控制模型基础上扩充空间约束,使CVE安全描述更全面。提出的RBCVES在CVE中融入角色机制,实现了

15、用户权限的有效管理,限制了非法访问和操作,提高了系统的交互性和安全性。参考文献1 Igor ,Chrisin Networked Collaborative Virtual Environments. Computer Communications,2003,26,5:430437 Lei Yu,BeatA Conceptual Framework for Agent Oriented and Role Based Workflowat CaiSE Workshop on Agent Oriented Information Systems(AOIS99)-Heidelberg,1999 Ju

16、ne 1415 Ferraiolo David,Kuhn Richard. Role-based access :Proceedings of the 15th NIST-NCSC National Computer Security Conference,Baltimore,MD,1992,554563 Sandhu,R.,Coyne,Feinstein,et al. Role-Based access control models. IEEE Computer,1996,29(2):3847 Ferraiolo DF,Sandhu R,Gavrila S. Proposed NIST standard for role-based access control. ACM Transactions on Information and System Security,2001,4(3):224274 Osborn S,Sandhu R. Configuring rol

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号