访问机制(共8篇)
访问机制 篇1
摘要:信访问题逐渐凸显, 不科学的问责机制使得基层政府和领导干部面对不断涌现的信访过度投入人力、物力, 进而导致正常的工作无法顺利开展。为解决基层矛盾, 维护社会稳定, 保障群众合法权益, 亟需重构信访问责机制。
关键词:信访问责,新型信访结构,法治思维
我们的政府采取各种措施力争提高群众的满意度, 为解决好群众反映的问题, 而对信访制度高度重视, 然而信访制度经过十几年的演变, 在各种因素的作用下, 已不复最初的功能, 而是更多的体现为解决各种具体利益诉求的方式, 而这种具体的利益诉求方式却给各级政府及其工作人员带来了无尽的压力与不安, 给社会也带来了诸多压力。
一、信访问责机制困局的危害
( 一) 消解了国家政府机关的权威
1. 消解了司法机关的权威
由于信访人法律知识的局限性和认识的片面性, 往往以自己的利益为主导, 反映问题具有片面性、“认死理”、“爱钻牛角尖”, 一旦法院、检察院作出的决定对自己不利, 就把司法机关严格依法办案看作是偏袒一方, 从而导致其不断上访。上访人总希望通过信访引起党政“一把手”的重视, 然后通过领导的批示推翻原有判决, 获得相关利益。而在实践中也确有领导批示后上访问题得到快速解决的范例, 其示范性和导向性反过来进一步强化了“信访不信法”的心态, 最终致使司法权威荡然无存。
2. 消解了基层政府机关的权威
在“信权不信法”的理念驱使下, 信访群众往往产生“信上不信下”的想法, 认为上级政府的权力比下级政府权力大, 希望借助“以上压下”达到自己信访的目的。出于政绩以及稳定的考虑, 上级政府便会要求下级政府尽快解决。于是, 在上级的压力之下, 基层政府对于信访事件的处理便会失去应有的原则, 为了使上级的满意、为了不再被上级批评, 或者是出于不让上级政府操心的考虑, 便会选择采取“花钱买平安”的做法, 或者采取野蛮的“围追堵截”的做法, 这样做的结果便是最终使得自身政府权威在人民群众心中消失殆尽。
( 二) 给基层政府带来无尽的压力
十八大后, 中央决定开始在部分省市进行取消信访排名的试点, 但是从之后的实践来看, 虽然显现的排名的做法被取消了, 但是并未从根本上解决信访功能回归的问题, 在各地还普遍存在着信访的“内部通报”。或者我们可以说这种做法就是“换汤不换药”, 对于从根本上破解信访问责困局、将纠纷解决纳入法治化轨道仍是无力的。可以说目前对信访的考核与问责已经成为悬在基层政府头上的一把利剑。
( 三) 增加了地方财政压力
据知情人士透露, 现行信访问责体制下各级政府对信访的人力、财力投入是一个无底洞。在调研中这样的例子也是很多, 济宁市南张镇政府因为一人不服拆迁补偿屡次进京接访而花费的已不下百万, 如此巨额真是令人咂舌。然而, 令人不愿看到的是, 在一些地方, 花了钱并没有买来稳定, 反而引发了新的或者更为频繁的上访, 甚至群体性事件。
二、信访问责机制陷入困局的原因
( 一) 信访功能严重异化
从历史上看, 20 世纪90 年代以前, 信访机构的主要职能是党委、政府的秘书性办事机构, 起着下情上传的桥梁作用, 它既不是权力机关, 也不是职能部门。但是, 进入20 世纪90 年代后, 随着信访形势的发展变化, 其工作内容发生了变化, 在“稳定压倒一切”的行政思维指导下, 信访机构的首要工作目标就成了维护社会稳定, 而所谓的“社会稳定”被有些领导片面理解为“没有上访”。信访制度原有的联系群众、反映社情民意的社会缓冲功能逐渐弱化, 更多地被作为一种正当司法制度的补充或者替代程序, 即通过信访这种行政方式来解决纠纷和实现公民的权利救助。
( 二) 处理信访事件时存在严重的权责不对称
1. 信访部门责任重大与职权缺失并存
从近些年的实践看, 信访部门手中没有解决利益冲突的实际资源和公共权力, 而信访事件一般是具体的党政司法行为, 社会上有关公正解决信访事件的期待往往就把信访部门当成了解决问题的责任主体, 因此而出现的权责错位就使信访部门处于一种尴尬境地。另外, 当前对信访条例禁止的各种违法信访行为, 以及由于社会管理缺失引发的信访问题, 信访部门缺乏明确的法律定位和有效的工作职权, 却又不得不冒着一定的社会风险去想方设法应对。
2. 基层政府权小责大
信访属于典型的“属地管理”模式, 在实践中, 基于属地管理, 信访事件都要回原属地进行处理, 但另一方面, 基层政府和干部, 被普遍认为是“芝麻大的官儿, 巴掌大的权力, 无限大的责任”, 面对着上面压下来的信访问题, 基层政府及其工作人员是真正的“力不从心”。而在压力型体制下, 非但不能不进行处理, 基层往往对上级转办的信访事项还要给予更多的重视, 甚至要“不惜一切代价”, 只为了让上级满意, 为自己的政绩加分。
( 三) 信访问责与考核一刀切现象严重
信访的原因有很多, 但是, 我们目前的信访问责机制根本不去管相关地方的领导干部对造成的信访是否有责任, 只要有人越级上访、进京上访、群体上访等出现就要问责信访人户籍所在地的相关工作人员。这种“一刀切”的考核问责机制很容易挫伤地方干部处理信访工作的积极性, 并给其带来巨大的政治压力, 最终导致的后果就是地方领导干部只是一味的对信访进行“围追堵截”, 或者“花钱买平安”, 而不再或者已经没有精力再去处理最初引发信访的问题了。
三、破解信访问责机制困局的对策建议
( 一) 弱化信访的权利救济功能
对信访制度改革路径的探究, 在完善信访制度自身的同时, 也为社会主义法治化国家的建设提供了强有力的保障。通过我们以上对信访问责制存在问题的分析, 我们发现老百姓在出现矛盾与纠纷时特别愿意求助于信访制度, 并且会利用目前存在的问责压力与相关领导干部进行博弈, 因此, 针对这一点, 我们就要首先弱化信访的权利救济功能, 不再把信访问题作为“稳定压倒一切”的重中之重, 更不能把信访量的多少作为评价某个地方是否稳定的主要标准甚至是唯一标准。
( 二) 构建新型信访结构
1. 取消任何形式的信访排名和通报, 转而以解决实际问题作为考核标准
信访排名将“非正常上访”与领导干部的政绩挂钩, 使得地方政府对上访者高度敏感, 并将上访视为社会的负面因素, 进而演化成“花钱买稳定”, 这一心态容易被某些别有用心者利用, 将“上访”当成与基层政府“讨价还价”的工具, 并逐渐演变为“职业上访者”, 以越级访、进京访为借口要挟当地政府, 进而每个月从当地政府获取不菲的固定收入。因此, 所谓的信访排名与内部通报制度必须取消。对信访工作的考核应当以实际问题的处理结果作为标准, 而不能仅仅只看表面上的名次和数字, 一切都应以为人民服务为宗旨, 以让人民群众满意为标准。
2. 上级政府应关注基层政府, 地方党委应当关心爱护基层干部
这可以说是基层干部的心声。在我们去乡镇调研的过程中, 一边听到的是基层干部对当前信访问责机制的无奈, 另一边就是基层干部对上级党委与政府的殷切期盼: 希望我们的上级党委和政府能够了解基层干部处理信访问题中的难处, 能够仔细听取、深入了解群众上访的原因, 对于基层政府自身无法解决的纠纷与矛盾不应置之不管, 而应当在自己职权范围内予以协助。
3. 畅通民意诉求渠道
只要是合理诉求就应当允许上访, 对此, 就应当把信访界定为群众反映民意的一种普通渠道, 不需要对信访人严防死守。下级解决不了的问题, 上级有责任解决。因此, 要提高各级各部门信访干部法律素质, 增强依法办访能力。有关责任单位在处理信访问题时, 一定要以事实为依据, 以法律为准绳, 做到依法处理, 不偏向, 不迁就, 更不能失去原则, 突破法律底线。
( 三) 运用法治思维解决社会矛盾, 以化解促稳定
1. 强化司法权威与公信力
司法是权利救济有效和最终的解决渠道, 是实现公平正义的最后一道防线, 因此, 其应具有绝对的权威。但是多年来屡禁不止的司法腐败致使司法公信力极低, 司法机关在矛盾纠纷解决上屡屡缺乏权威也致使老百姓信访不信法。要扭转信访不信法的局面, 提高司法权威和公信力, 司法机关要主动作为, 着实提高个人法律素质和职业道德修养, 积极回应民众公正公平的期待, 把以人为本、司法为民的理念放置于首位。
2. 建立社会风险评估机制
在镇、社区建立便民服务网络, 零距离服务群众, 推行“群众动嘴, 干部跑腿”的民生代办制和社情民意受理制, 及时掌握群众诉求, 了解群众难题。开展与群众谈心活动, 主动掌握矛盾纠纷, 对涉及群众切身利益的征地、拆迁等重大事项、易引起信访的大项目工程开展社会稳定风险评估, 使领导干部对相关民情民意就能做到心中有数, 从而能够提前采取有效措施, 从源头上减少信访事件的发生, 进而做到由“促稳定”变“创稳定”, 促进矛盾化解才是解决信访问题的根本。
3. 不再将上访与社会稳定挂钩
据从信访部门的了解, 当前信访事件中80% 以上反映的是改革和发展过程中的问题; 80% 以上有道理或有一定实际困难和问题应当予以解决; 80% 以上可以通过当地各级党委、政府的努力解决; 80% 以上是基层政府应该解决也可以解决的问题。这四个80% 说明, 大部分访民反映的问题确实是存在的, 是合理的, 只要基层政府能够及时、适当的解决并不会造成越级访、进京访甚至是群体性事件的发生。因此, 我们在实践中, 在对官员的考核与问责中, 也不能把上访和社会不稳定等同起来, 以避免相关政府及工作人员工作方向出现偏差, 工作重心转移等情况的出现。
( 四) 制定《行政问责法》
我国当前虽然也建立起了行政问责制度, 但是这种问责却往往是以结果论处, 而不问领导干部在该事件中是否存在故意或过失。对于官员来说, 这种问责只是一种不确定的风险, 并不具备足够的威慑力, 而且其从一开始就是以法治精神的流失为代价的。这与我们十八届四中全会所倡导的全面推进依法治国显然是相背离的。让领导干部在问责制度的压力下, 找到有所为有所不为的有效平衡, 才应当是建立问责制度的最终目的, 而实现这一目的必须通过法律的手段加以平衡与规制, 即制定《行政问责法》。把问责的标准、问责的程序、问责的权限以及问责的救济手段等等都要详细的写进这部法律, 而且这也应当是一个国家责任体系的重要组成部分。
四、结论
要破解当前的信访问责困局, 从根本上改变政府被个别信访人牵着鼻子走的尴尬局面, 就需要重构信访问责机制。对于我们的地方政府和领导干部来讲, 今后处理信访问题就要以十八届四中全会精神为导向, 畅通权利救济渠道, 真正为老百姓解决实际问题, 办实事。我们也有理由相信, 通过深入贯彻落实依法治国思想一定能够改变当前地方各级党委和政府在信访中的被动、尴尬局面, 彻底扭转信访跑偏的轨道, 既能畅通纠纷解决渠道, 化解群众矛盾、解决访民诉求, 又能提高政府以及司法的公信力。
参考文献
[1]湛中乐, 苏宇.论我国信访制度的功能定位[J].中共中央党校学报, 2009 (2) .
[2]杨小军.信访法治化改革与完善研究[J].中国法学, 2013 (5) .
[3]黄艳玲.自然法正义视角下的信访制度思考[J].沧桑, 2014 (1) .
访问机制 篇2
(一)结题考核
1.结题要求:经省教育厅批准立项并且按计划已到期的国内访问工程师校企合作项目(国内访问学者专业发展项目),申报结题者须提交《浙江省教育厅高等学校访问学者专业发展项目、访问工程师校企合作项目结题报告》3份,结题报告须经导师同意结题并签字,并提供相应成果原件和复印件各1份。
2.结题成果:成果形式为论文的,附公开发表的论文原件和复印件1份,论文复印件包括封页、目录页、正文和版权页;成果形式为专著的,附公开出版著作的原件1份和封面、封底、目录页和版权页复印件1份;成果形式为研究报告及其他的,需附有关报告文稿及其推广应用材料。项目成果都须注明项目编号、项目名称,否则视为无效。
(二)结业考核
1.结业要求:未经省教育厅批准立项的国内访问工程师校企合作项目(国内访问学者专业发展项目),或经教育厅批准立项且按计划已到期但未按时上报结题报告的国内访问工程师校企合作项目(国内访问学者专业发展项目),须填报《结业考核表》4份(高校访问学者参照接受单位结业要求填表)。结业考核内容主要围绕访学(访工)计划的开展情况(关联性工作内容)和后续关联性工作计划(不少于3500字),由指导教师和接受学校分别签署考核意见。
2.结业成果:结题要求:成果形式为论文的,附公开发表的论文原件和复印件1份,论文复印件包括封页、目录页、正文和版权页;成果形式为专著的,附公开出版著作的原件1份和封面、封底、目录页和版权页复印件1份;成果形式为研究报告及其他的,需附有关报告文稿及其推广应用材料。成果都须注明项目编号、项目名称,否则视为无效。
(三)跟踪考核
访问机制 篇3
Internet正在越来越多地融入到社会的各个方面,计算机网络的安全问题随着Internet的发展而越来越被人们所重视。在社会日益信息化的今天,随着Internet以电子商务为代表的网络应用的日益发展,出于各种目的的网络入侵和攻击越来越频繁。信息网络的大规模全球互联趋势,随着网络用户成分越来越多样化,以及人们的社会与经济活动对计算机网络依赖性的与日俱增,Internet安全以及信息数据安全,使得计算机网络的安全性成为信息化建设的一个核心问题。随着Internet对公司、个人和社会生活影响的日益扩大,Internet越来越深入地渗透到各行各业的关键要害领域,网络安全作为一个无法回避的问题呈现在人们面前.如果网络安全问题不能得到妥善的解决,网络使用者如果不重视自身的安全防范,将会对国家安全带来严重的威胁,将很有可能给自己带来一系列的严重后果。
本文以研究和改进Linux现有的存取访问控制机制为主要目标,在对Linux现有安全机制分析的基础上,为了验证LYSLinux存取访问控制模型的可行性和正确性,进一步结合信息安全模型理论,本文设计并实现了基于LYSLinux存取访问控制模型的LYSLinux原型系统,总结出了安全操作系的分权思想,并进一步提出了LYSLinux存取访问控制模型及分层授权观点。LYSLinux原型系统的设计充分利用了Linux内核提供的安全设施,基于现有FLASK安全体系结构设计。本文通过对LYSLinux原型系统的测试和结果分析,进一步总结该系统的优缺点。
1 安全操作系统的发展和研究现状
Linux网络系统结构将整个网络系统的结构分为内核空间和用户空间两部分,IP协议实现网络层协议,其中内核空间又可以分为协议层和设备驱动层,在IP层以下是网络设备来支持所有Linux网络工作。Linux选用编程接口是由于它的流行性及可移植性,控制Socket文件描述符对应的就是对BSD Socket的操作,有助于应用程序从Linux平台移植到其他Unix平台。从INET Socket层到IP层,它由INET Sockets层来支持,发送数据时根据发送的目标地址确定需要使用的网络设备接口和下一个需要传送的及其地址,这一层为基于IP协议的TCP和UI)P管理传输端点。从而进入到BsD Socket层的操作,从IP层到数据链路层,接收数据时在IP层判断数据包是向上一层协议提交还是需要做IP转发,就是到网络接口设备驱动程序,对数据包的采集和发送。
由于Linux安全操作系统的应用已非常广泛,不断成熟和完善的Linux提倡的开放源码政策及自身安全方面所具有的一些优良特性。国内近年来在这方面也取得了大量成果,Linux的存取访问控制机制也在不断的发展和完善,然而,现有的Linux存取访问控制仍有其不足之处,较之国外仍存在差距,在研究成果的产品化上亦有诸多缺陷。
2 安全体系结构
安全模型是对系统安全功能的高度抽象和概括,安全系统的设计和实现除了依赖于具体的安全模型之外,是实现具体安全机制的理论基础。同时,还需具有良好的体构来保证系统的运行效率和质量,安全模型也是制定安全策略的依据。因此,安全体系结构(安全体系框架)是实现安全系统的基础和依据,对安全框架的研究是十分必要的。
Flask体系结构提供了动态策略支持,从安全服务器取得主体对客体的访问权限。Flask体系结构实现了动态安全策略,标识系统管理的对象,支持策略灵活性。缓存了数目有限的特定主体对客体的访问权限记录,主要为了避免由于安全服务器的频繁访问而造成的系统性能下降对象管理器,实施安全策略的判定;安全服务器通过该接口对象管理器能及时感知安全策略的变化,做出安全策略的判定。Flask体系结构如图1所示。
3 Linux内核安全机制分析
针对自主访问控制存在的种种不足,Linux系统下出现了许多强制访问控制机制,SELinux是一个基于动态策略配置的强制访问控制子系统。由于SELinux支持较细粒度的权限描述和管理,采用SELinux能极大程度的提高系统的安全性能。
SELinux安全策略配置支持RBAC模型,该模型中存在另一个实体集——用户集。用户可以将一个或多个类型指派给某一角色,SELinux定义的用户是RBAC模型的组成部分,换言之,SELinux中的角色是包含一个或多个类型的更大的权限集,实际上是一个更大的权限集合。SELinux在设计初期是以内核模块的形式插入到内核中运行的,Linux2.6内核中SELinux访问控制建立在LSM框架之上。LSM的主要思想是内核的设计者在需要进行访问控制的位置插入相应的钩子函数(hooks),是Linux内核中为安全模块(系统)的设计提供的一套内核机制。当信息流到这些钩子函数时控制时,内核根据该反馈结果控制系统中的信息流,内核会将控制交给注册到LSM中的安全控制函数,然后经过某一安全策略的判断后将决策结果反馈给内核,安全控制函数首先提取出主体和客体信息,SELinux的存取访问控制是基于LSM框架实现的。SELinux的结构如图2所示。
4 Linux存取访问控制模块设计
Linux安全模块(LSM)采用了通过在内核源代码中放置钩子的方法,满足大多数现有Linux安全增强系统的需要,截获主体对客体的访问。为了Linux安全模块(LSM)采取了简化设计的方式,在系统运行过程中,Linux安全模块(LSM)现在主要支持大多数现存安全增强系统的核心功能。系统通过提取存放在内核对象安全域中的信息,对一些安全增强系统要求的其他安全功能,得到主客体的安全标识。Linux安全模块(LSM)现在主要支持“限制型”的访问控制决策,LSM框架为多数内核对象增加了安全域。当Linux内核给予访问权限时,进程控制块(task struct),inode结点,用户进程执行系统调用,首先经过Linux内核原有的逻辑找到并分配资源,进行错误检查,只提供了的少量的支持,然后经过经典的UNIX自主访问控制,对于模块功能合成。在Linux内核试图对内核对象进行访问之前,Linux安全模块(LSM)允许模块堆栈,安全模块根据其安全策略进行决策。LKM的最基本框架
LKM编译成功之后,可用insmod命令插入到系统内核,并在内核态下运行。
5 系统工作流程分析
当LYSLinux内核模块初始化完毕后,内核中LSM框架的钩子函数会将程序流引向LYSLinux安全策略实施机构中相应的辅助函数,安全策略实施机构开始截获并根据安全策略实施强制访问控制。LYSLinux安全策略实施机构的辅助函数会从内核对象中提取出LYSLinux所需的安全信息,根据激活的辅助函数及其他LSM传递的参数判断主体对客体的操作请求以及该操作的类别,一般是指主体的当前有效SID和客体类型的类型号。
当存取访问向量缓存(AVC)中找不到相应向量时,由主体的SID,客体类型的类型号以及操作和操作类别到存取访问向量缓存中查寻相应的访问向量,AVC会进一步请求对象管理器并得到与SID对应的主体权限信息,通过查询安全策略数据库计算出对该操作集的决策结果以及存取向量,然后会将主体权限信息与客体类型和操作集及操作类别发送到安全服务器。更新存取访问向量缓存并返回决策结果,安全策略实施机构将决策结果返回给Linux内核。
安全策略服务器主要由安全策略加载器(DBLoader)和策略查询器(Policy Querier)组成,安全策略服务器的结构和工作时所依赖的数据结构信息。策略查询器(PolicyQuerier)负责根据其他组件的安全查询请求信息从安全策略数据库中提取出相应的信息,安全策略加载器负责构建和维护安全策略数据库(PolicyDB)。系统启动时安全策略加载器会从文件系统加载二进制安全策略描述文件到内核空间,计算出该请求的访问向量并返回,并由一组加载函数从二进制策略文件中读出策略数据,并用这些数据初始化安全策略数据库。策略查询器实现了db make decision函数,该函数申明如下:
该函数会根据一定的策略由上述的三个集合计算出该主体对该客体的所有权限以及请求操作集中被允许的权限。
6 结论
系统管理的各类软硬件资源包括数据的安全,而在操作系统中对资源的访问操作都需请求操作系统内核的服务,Linux操作系统以其良稳定的系统性能和开放源码的优势受到了广大个人用户和企业的青睐,因此基于操作系统内核的存取访问控制可以有效的保证系统中数据的安全性。但是Linux操作系统的存取访问控制还存在不足之处,对信息安全模型和安全体系结构研究的基础上,着重对现有Linux操作系统的存取访问控制机制进行了优缺点分析,并在此基础是提出了若干改进思路和观点,并构建了原型系统加以验证。
参考文献
[1]Sylvia Osborn,Ravi Sandhu,Qamar Munawer.Configuringrole-based access control to enforce mandatory anddiscretionary access control policies.ACM Transactions onInformation and System Security.2000,13(2):8-96.
[2]梁洪亮.支持多安全政策的安全操作系统的研究与实施[D].中国科学院软什研究所,2002:11-23.
[3]Zanin,Giorgio.Towards a formal model for security policiesspecification and validation in the SE Linux system.Proceedings on the Ninth ACM Symposium on AccessControl Models and Technologies,2004,10(5),136-145.
[4]李远征.操作系统访问控制模型关键技术研究[J].计算机工程与设计,2005,26(4):1004-1002,1095.
访问机制 篇4
访问控制是系统安全最核心的组件之一。它根据规定的安全策略和安全模式对合法用户进行访问授权,并防止未经授权用户的非法访问以及合法授权用户的越权访问。医院信息管理系统中不仅存储着患者的诊疗信息,也存储着医院的人、财、物等管理信息,这些都是医院长期积累的结果,是医院的重要资产。一旦这些资料被破坏,将给医院带来巨大的损失。因此,构造合理且便于管理的医院信息管理访问控制模块,保障这些资料能安全地共享,就成为当前需要迫切解决的问题。
2 常用的访问控制机制简介
当前常用的访问控制模型主要有自主访问控制(DAC)、强制访问控制(MAC)和基于角色的访问控制(RBAC)3种。
2.1 DAC
自主访问控制是目前信息系统中使用最为普遍的访问控制手段。用户可以按照自己的意愿对系统的参数做适当修改,以决定哪些用户可以访问他们的资源,即一个用户可以有选择地与其他用户共享其资源。
自主访问控制模型之所以被称为是自主的,是因为拥有权限的用户可以自主地将其所拥有的权限授予其他任意在系统登录的用户。自主型安全模型的典型代表是访问矩阵。这一模型在操作系统和数库管理系统中都可以使用。
2.2 MAC
自主访问控制的问题在于数据的拥有者可以将对该数据的访问权限自主地赋予任何一个用户。在一些高安全等级的应用中,这种权限的自由扩散是相当危险的。因此,强制访问控制机制被提出来支持这些高安全等级的应用需求。
强制访问控制通过无法回避的访问限制来防止各种直接和间接的攻击。在强制访问控制下,系统给主体和客体指派不同的安全属性,这些安全属性在系统安全策略没有改变之前是不可能被轻易改变的。系统通过检查主体和客体的安全属性的匹配与否来决定是否允许访问继续进行。与自主访问控制不同,用户无权将任何数据资源,哪怕是属于用户自身的数据资源的访问权限赋予其他的用户,因此也不能简单地指派数据的访问权限。这也是该访问控制模式称为“强制”的原因。
对于保密要求不严的信息系统,强制访问控制模型过于严格,以至于用户难以管理自己的数据,因此使用的范围并不广[1,6]。
2.3 RBAC
RBAC是作为自主和强制访问控制模型的替代物提出的,在开放、分布的计算环境中受到广泛的关注。开发RBAC模型的主要原因是要弥补现存访问控制模型中的不足,如基于BL模型的强制访问控制过于严格,而基于保护矩阵模型的自主访问控制模型又不够严格。RBAC模型与DAC模型和MAC模型之间最本质的区别是:权限不直接赋予给特定的用户,而是指派给角色。角色是一个建立在用户和权限之间的连接控制单元,RBAC模型比传统的模型便于管理。
最经典的RBAC模型是由Sandhu等人提出的RBAC96模型。该模型分为3个层次,如图1所示。在这个层次中,上层模型能具有下层模型的全部特性。例如,RBAC1模型具有RBAC0模型的全部特性。RBAC0定义了RBAC96和基于角色的访问控制的基本特性。RBAC1和RBAC2不能直接比较,前者定义了角色层次的概念,后者定义了角色约束的概念。RBAC3则包含RBAC1和RBAC2的所有特性。RBAC3模型结构如图2所示。
在RBAC中,一个用户能扮演多个角色,而一个角色也能接纳多个用户。同时,用户通过建立一个会话来与计算机系统进行交互。在该会话中,用户将激活被显式或隐含指派给该用户的角色的一个子集。在RBAC96模型中,会话与传统的访问控制模型中的主体之间是等价的[3]。
将会话引入到RBAC中能部分地支持最小权限(least privilege)原则,即:一个主体(会话)仅仅应该具有完成任务所必需的权限。会话使得用户仅仅能登录和调用必要的角色。这与其他系统不一样,在那些系统中,当用户登录时,就赋予用户所有的权限,而不管是否在本次工作中需要使用这种权限。同时,一个用户能并行地打开多个对话,不同安全级别的会话不会相互干扰。这使得在一个系统中并存2个以上的访问控制机制的灵活性大大增加。角色层次表现了角色之间的关系。通过角色层次,上级角色能继承下级角色的所有权限。
RBAC2模型引入了约束的概念,从而能清晰地表示职责分离策略(separation of duty policies)和势策略(cardinality policy)。职责分离策略能指定2个或多个角色不能在同一个会话中被激活,例如在一个单位中,一个员工不能既是会计又是出纳。职责分离的目的是防止单个用户危害组织的安全要求。而势策略能指定一个角色最多能有几个活动实例,例如公司中总经理只能有一个[2]。
3 基于RBAC的医院信息管理系统
在构建医院信息管理系统时,需要面对2个访问控制问题。一是医院人员的流动性大。在医院中,除了正式聘用的医疗人员以外,还有大量的进修医生、实习学员、兼职专家和临时招聘的医疗服务人员等。在这种开放的系统中,使用DAC将会带来巨大的管理代价。因此,使用RBAC应该是一个不错的选择。二是管理流程和业务流程的分离。与其他商业部门不同,医院的管理流程和业务流程之间存在很大的差异。管理流程中的上级和业务流程中的上级之间存在大量的冲突。例如,管理流程中,科室主任是业务专家的上级;但在某些业务流程(如职称评定)中,这些业务专家又是这些科室主任的上级。因此,这里通过单一角色层次实现的权限继承可能会和组织中的职责分离约束相矛盾。
3.1 基于倒树结构的角色指派
在医院信息管理系统中使用RBAC模型存在一些问题,尤其是对实际应用中受限继承的问题缺乏理论上的解决方案。当前解决这个问题有2种途径:一种是将下级角色分割为“私有”角色和“正常”角色,来实现从下级角色的部分继承;另一种是将角色层次区分使用层次和活动层次。然而,前者只处理了继承问题而没有处理职责分离问题,后者则难以评估管理2个层次的代价,并保持使用层次和活动层次的一致性。
为了回避这个问题,建立一个倒树结构的角色层次,如图3所示。与传统的RBAC层次结构相比,该结构没有包含一个顶层的节点,即不具有一个拥有至高无上权限的角色。这显然也更符合当前的管理结构。
在这样一个结构中,通过多个角色的集合来替代原始RBAC中的一个角色,完成特定的任务。例如,如果需要进行一次科室内的会诊,该会诊小组的组长应该具有{会诊,人员管理}2个角色,而会诊组的其他成员则只需要指派为{会诊}角色即可。由于通过组合而不是使用单个角色来完成任务,相当于先将角色裁剪之后,再根据需要进行拼接,也就更好地满足了RBAC中的最小权限原则,而且回避了角色层次之间的受限继承等问题[5]。
3.2 基于数据空间的资源融合
虽然通过倒树结构,回避了角色层次之间的受限继承等问题,但这种层次也带来了不小的缺点,最主要的问题就是使得一个用户能访问的数据难以形成一个整体。例如,对于一个具有{会诊,人员管理}2个角色的专家而言,他需要同时访问参加会诊小组的人员信息和病人的病历信息。这些信息分散在不同的数据库中,具有不同结构和类型。例如,人员信息可能是一个记录该人员的Word文档,病人的病历信息可能包含X光照片、影像资料、病历资料等等。为了方便地组织这些信息,避免用户试图访问不可访问的信息,将一个用户所有能访问的信息保存在一个称为数据空间的逻辑结构中。数据充满了整个空间,数据在其中如何组织都可以,Word文档也罢,照片也罢,影像也罢,只要是数据的一种载体,就可以存在于这个Space中,对数据的组织排放不做任何要求。一个数据空间应该包含与某个组织或个体相关的一切信息,无论这些信息是以何种形式存储、存放于何处[2]。数据空间是逻辑的,是因为这里并不存储真正的数据信息,而是将真实数据的地址存放在这个数据空间中。这样做的意义在于:(1)减少空间消耗。多个用户需要同一资源时,不需要建立多个资源的副本。对于复杂的大容量数据,如影像资料数据等,更加有效。(2)维护数据的一致性。由于这里只使用了一个指针,当数据发生变化时,所有的用户/角色能同时看到变化。
使用一个目录来建立用户的数据空间,并建立目录和角色之间的映射,如图4所示。图中单项箭头表示用户所指派的角色,如张三具有{会诊,人员管理}2个角色,双向箭头表示角色和目录之间的映射。当用户以下层角色登录时,系统只需要限制他能访问的目录即可。例如,当张三以诊疗的角色登录系统时,他只能访问目录层次中诊疗目录及其子目录[4]。
4 结束语
构建一个灵活且严密的访问控制模块是一个非常具有挑战性的工作,尤其是在一个开放的环境中更是如此。RBAC的基本思想,为医院信息管理系统构造了一个相对适应的访问控制模式。该模式如何建立角色约束之间的关联及发现角色约束之间的冲突等问题需进一步研究。
参考文献
[1]Michael Franklin,Alon Halevy,David Maier.From Databases to Dataspaces:A New Abstraction for Information Management[J].ACM SIGMOD Record,2005,34(4):27-33.
[2]Zhang XW,Oh S,Sandhu RS.PBDM:A flexible delegation model in RBAC[C]//Ferrari E,Ferraiolo D,eds.Proc.of the8th ACM Symp.on Access Control Models and Technologies.New York:ACM Press,2003:149-157.
[3]Sejong Oh,Seog Park.Task-role-based access control model[J].Information Systems,2003,28(6):533-562.
[4]彭智勇.数据库安全[M].武汉:武汉大学出版社,2007.
[5]Ren Yi,Xiao Zhiting,Guo Sipei.An Extended RBAC Model for Uniform Implementation of Role Hierarchy and Constraint[C]//International Symposium on Electronic Commerce and Security.Washington:IEEE Computer Society,2008.169-174.
访问机制 篇5
关键词:Docker容器,访问控制机制,LSM,安全
0 引言
随着计算机技术的迅猛发展,容器技术以其高性能和便携性愈发火热,受到人们的广泛关注和大力推广,同时容器和宿主机之间访问的安全性也受到很大的挑战。人们在享受容器技术带来的轻量和快速之余,也感受到容器技术安全的困扰。当人们在容器内运行自己的应用时,不安全的进程就会逃逸出容器,给宿主机带来安全隐患[3,4]。
访问控制是非常重要的安全机制,访问控制是所有系统都会用到的一种安全技术,该技术防止主体对客体的非法访问。目前,针对Docker的安全问题,Docker开发团队采取层叠式安全机制,即多层不同安全技术叠加在一起。Docker容器技术内部使用了部分Linux操作系统原生自带的自主访问控制机制,而且还使用了Linux内核中命名空间机制(Namespaces)和控制组机制(Cgroups)实现Docker容器和Linux宿主机之间的资源隔离,这两种隔离机制是Docker容器和Linux宿主机之间访问控制机制的基础。这些机制是Docker开发团队采用的进行访问控制的基础。但是,Linux操作系统中不是所有的资源都有命名空间(Namespace)。在Docker容器中的进程可以访问到未被隔离内核资源,如根目录下的/sys、/proc等。一旦Docker容器进程能访问这些文件,就导致内核资源的泄露,更严重的将导致Docker容器用户可以获得整个宿主机的控制权。所以,对于Docker容器的安全性,隔离不是万能的,不断地加固安全才是关键。只有不断完善Docker容器和Linux宿主机之间访问控制机制,才能确保Docker容器的安全性[7,8]。
文中分析了Docker容器在Linux宿主机中针对访问控制的隔离机制以及不足,提出一种基于LSM(Linux Secrity Module)通用框架在Linux内核中针对Docker容器进程的强制访问控制机制的框架[9]。通过测试,该框架可以有效地防止Docker进程逃逸出容器,对Linux宿主机的非法访问,完善了Docker容器和Linux宿主机之间的访问控制机制,加固了Docker容器的安全性,而且Linux内核加载该强制访问控制机制框架对自身系统性能影响较小。
1 Docker的访问控制隔离机制及其安全性分析
Docker容器访问控制机制基于Namespaces机制和Cgroups机制,采用Linux内核中Namespaces机制和Cgroups机制实现容器的隔离性和可配额[10]。Docker容器采用Namespaces命名空间机制将Docker容器(container)中的进程、网络、消息、文件系统、UTS和Linux宿主机进行隔离,采用Cgroups机制对Docker容器能够使用的系统资源进行限制和度量,实现对Docker容器进程能够使用的系统资源进行控制。Docker容器技术采用这两种底层机制的叠加实现访问控制中的层叠式安全机制。
1.1 Namespaces机制
Linux操作系统使用Linux Namespaces命名空间机制将Linux系统资源进行隔离开。采用Linux Namespaces命名空间机制之后,Linux系统资源就变成了局部的资源,属于某个固定的namespace命名空间。两个同类型的namespace命名空间下的系统资源是相互不可见的,不同类型的namespace命名空间下的系统资源也是相互不可见的。例如PID Namespace从操作系统层面看,会出现多个相同的pid进程,但是属于不同的namespace命名空间,相互之间不冲突。Linux Namespaces命名空间机制原理图如图1所示。
目前,Linux内核为Linux操作系统提供六个不用的namespace命名空间,分别是uts、ipc、mnt、pid、user、net类别的namespace。在Linux系统中,多个namespaces命名空间里可以有同一个进程,也就是说一个进程可以在多个不同的命名空间中拥有自己的不同的PID进程号,Linux源代码中进程控制块task_struct结构体包含一个进程的所有信息,其中有结构体指针struct nsproxy*nsproxy,指向该进程的所属namespace命名空间信息结构体,如下代码。
在/include/linux文件中的头文件nsproxy.h中,定义nsproxy结构体,该结构体指针指向具体的命名空间信息,主要定义了六个不同的结构体指针分别指向六个不同类型的namespace命名空间,如下代码。
容器技术有了Linux Namespaces命名空间机制才使得容器虚拟化技术更加完善,LXC(Linux containers)利用命名空间(namespace)机制实现Linux系统资源的隔离。不同容器(container)内部的进程是相互不可见的。命名空间可以组织为层次,子命名空间(namespace)之间是相互独立、不可见的,但是父命名空间可以看到子命名空间的进程信息。本质上,Linux Namespaces机制为Linux系统建立了的系统资源的不同视图。
Docker容器采用Linux Namespaces机制实现资源隔离,例如Docker容器中的PID Namespaces,在宿主机新开Docker容器中,默认第一个进程PID为1(dockerinit),即在Docker容器中该进程类似Linux系统中的init进程的功能,负责Docker容器内部所有进程的监控和资源回收。虽然Docker采用Namespaces机制实现隔离,大部分的Linux的资源被隔离,还有一部分的系统资源没有被隔离,例如/sys、/proc目录下的资源。
1.2 Cgroups机制
Cgroups的全称是Control Groups控制组,Linux操作系统使用控制组技术将Linux系统的物理资源进行分配,控制组机制是Linux系统中自身容器技术的底层支撑,为容器的虚拟化提供了基础。Linux内核运用Cgroups控制组机制对Linux操作系统资源进行限制、记录、隔离。Cgroups机制由各个不同的cgroup子系统组成,根据不同的子系统将任意进程和系统资源进行分组化管理。Linux系统中有一个cgroup虚拟文件系统,该虚拟文件系统为Linux用户提供管理和设置各个cgroup子系统的接口。用户挂在需要使用的cgroup子系统就可以设置和管理与之相对应的Cgroups控制组。
在Docker容器中,Cgroups机制是为Linux系统资源在不同用户层面的管理提供一个统一化的接口。Cgroups控制组机制从控制一个进程的简单机制到控制整个Linux操作系统的复杂机制,全部功能就是Linux操作系统级别的虚拟化。Cgroups控制组机制具备四项基本功能:资源限制、资源统计、进程控制、优先级分配。资源限制,Cgroups控制组机制限制进程组能够使用的操作系统资源的份额。资源统计,Cgroups控制组机制使用cpuacct子系统统计Linux操作系统的内存用量、cpu使用量等操作系统资源使用情况。进程控制,Cgroups机制使用控制组中的freezer子系统对系统进程进行调度的一系列操作。优先级分配,Cgroups机制使用控制组中的cpu子系统分配cpu时间片数量以及控制了系统内进程的优先级。Cgroups机制原理图如图2所示。
图中每个Container Cgroup控制组内部都有自己的进程,Cgroups控制组技术通过不用的子系统给每个Container Cgroup分配不用的资源,如cpuset子系统给控制组分配cpu资源、memory子系统给控制组分配内存资源等。Cgroups机制的实现本质是建立钩子函数(Hooks)与系统进程的关联,当系统进程task运行的过程需要使用Linux系统资源时,就会触发挂在进程上的钩子函数(Hooks),进而触发与钩子函数关联的对子系统(Subsystem),子系统进行检测,根据检测的资源类别采用相应的机制实现Linux系统资源限制和进程优先级分配。
2 Docker容器强制访问控制机制框架的设计
该强制访问控制框架在内核中对Docker容器进程进行监控控制,阻止进程逃逸出容器,对宿主机中内核资源的访问。该框架在内核中运用Namespaces机制原理对Docker容器进程定位,然后采用LSM通用框架的可加载安全模块对Docker容器进程进行访问控制,阻止Docker容器进程访问Linux内核资源。
2.1 LSM
LSM即Linux安全模块(Linux Secrity Module),是Linux内核提供的通用的、轻量的访问控制框架,很多访问控制模型能够利用这一通用访问控制框架,将自己编写的具有不用功能的安全模块以可加载的内核模块(Kernel Module)的形式加载到内核中。Linux Secrity Mo-dule安全模块针对内核资源的访问安全定义了一系列与内核结构相对应的hooks钩子函数。Linux Secrity Module安全模块的设计思想是在将透明安全域附加到相应的受保护的内核对象中,这些透明安全域在内核对象中被视为受保护的内核对象安全属性,同时在Linux内核源代码中添加与透明安全域相对应的钩子函数(Hooks),这些被添加的钩子函数负责完成对内核对象的访问的控制。Linux Secrity Module通用访问控制框架使用起来比较灵活、比较高效,使用LSM通用框架对Linux内核性能参数影响较小,不会造成其他的系统开销。LSM逻辑框架如图3所示。
Linux Secrity Module通用框架是从Linux2.6版本以后加入标准Linux内核中。Linux Secrity Module安全模块对Linux内核做了以下修改:①在Linux内核需要保护的数据结构中添加透明的安全域;②在Linux系统调用将要访问到内核对象的地方添加对安全钩子函数的调用;③在Linux系统中加入一个安全的、通用的系统调用;④在Linux操作系统中加入Linux安全模块(Secrity Module)的注册及注销函数;⑤将Linux操作系统中的大部分能力安全逻辑(capabilities逻辑)移植到一个可供用户选择的安全模块。
在Linux内核的关键数据结构中,Linux Secrity Module通用框架会在需要保护的数据结构中添加了一个空类型的指针(void*),该指针建立具体内核对象和对象的安全信息的关联,void*型指针指向安全域。LSM修改的内核关键数据结构有task_struct、inode、super_block、sk_buff、linux_binprm等。同时,Linux Secrity Module在Linux内核源码关键处(系统调用将访问到内核对象的地方)添加对通用框架中钩子函数(hooks)的调用。Linux Secrity Module安全模块中的钩子函数根据它们的作用可以分为两个基本的大类:①一部分函数管理Linux内核对象安全域中各自对应的钩子函数(hooks);②另一部分函数负责内核对象访问控制的各自对应的钩子函数(hooks)的实现。Linux操作系统中全局表security_ops(security_operations)中定义的函数指针用来调用钩子函数(hooks)。Linux系统中所有的系统调用都有相对应的钩子函数(hooks),钩子函数主要包括文件、文件系统、网络、进程、进程通信等方面。
2.2 基于LSM的强制访问控制机制框架的设计
该强制访问控制框架融合了Docker容器中的Namespaces机制和LSM通用框架,其在Docker容器进程对内核对象资源进行访问控制,可以有效防止Docker容器进程逃逸出容器,确保容器进程对宿主机的安全。首先,需要对Docker容器进程进行定位,判断访问宿主机内核资源的进程是否为Docker容器进程,根据结果裁定该进程是否需要进一步安全过滤。如果判定进程为Docker容器进程,该进程需要通过安全决策模块的过滤,安全钩子函数判断进程访问的文件是否为内核资源,裁定进程是否有权访问内核资源。强制访问控制机制框架可以将宿主机与Docker容器未被隔离的内核资源保护起来,使得Docker容器进程不能随意访问Linux宿主机中的内核资源。
Linux宿主机文件不能被Docker容器进程访问是指文件不能被进程打开、读、写、修改等。文件在被Docker容器进程读、写、修改之前,进程必须打开文件,所以保证Docker容器进程不能访问宿主机文件资源,首先要阻止Docker容器进程打开宿主机文件。open系统调用的功能是打开文件,同时进程通过文件位图表获得一个未被使用的文件描述符fd,调用函数获取打开文件对象的信息struct file结构体,最后建立文件对象信息struct file与文件描述符fd的关联,使得根据文件描述符就可以访问与之相对应的文件。open系统调用的详细流程如图4所示。
文中设计的基于LSM框架的强制访问控制机制框架如图4所示。
该强制访问控制机制框架图中具备两个基本功能:①对Docker容器进程定位;②Docker容器的进程进行强制访问控制,完成对Linux宿主机中的内核资源进行保护。定位内核模块对Docker容器进程进行定位,然后与LSM决策模块交互。决策模块根据交互信息判断执行系统调用的进程是否为Docker容器进程,如果不是,则返回0,可正常操作,如果是,则继续执行文件保护判断。针对Docker容器进程的系统调用进行跟踪和处理,容器进程的open系统调用执行流程中,经过自主访问控制判断,还要使用security_inode_permission函数进行文件inode节点判断。security_inode_permission函数对应的钩子函数int(*inode_permission)(struct inode*inode,int mask)。在安全检测模块中使用inode_permission钩子函数判断文件是否是Linux宿主机保护的保护文件。如果是保护文件,则返回错误信息(-ERERM),无权访问,终止系统调用,如果不是保护文件,则返回0,可正常执行系统调用。
强制访问控制机制框架在内核中采用LSM,结合Namespaces机制对Docker容器进程进行定位,在Docker容器的进程系统调用将要访问到Linux内核未被隔离的数据时调用了与之相对应的安全钩子函数。在Linux宿主机中使用该框架可以有效阻止Docker容器进程对Linux宿主机中未被隔离的文件资源的访问。完善了现有的Docker容器和Linux宿主机之间的访问控制机制。
3 强制访问控制机制框架的测试
该强制访问控制机制框架使用LSM通用安全框架,在Linux操作系统中以内核模块(kernel module)的形式加载到Linux内核代码中,加载后可以有效阻止Docker容器进程对Linux宿主机中未被隔离的系统资源的访问,也一定会增加系统负担。文中使用Lmbench测试工具测试了加载强制访问控制机制框架对Linux系统性能参数的影响。
Lmbench是符合ANSI/C标准的一组小型Benchmark测试程序集,是为UNIX/POSIX专门制定的一款微型测评工具。测试主要包括:带宽(Bandwidth benchmarks)和延时(Lateency benchmarks)。本次测试主要关注Lmbench中的处理器、进程操作时间(Processor/Processes)测试结果。
测试在Ubuntu14.04操作系统上进行,Linux内核版本为Linux 3.13.0。测试为两组:原系统Processor/Processes结果,加载强制访问控制机制框架后的Processor/Processes结果。每项参数测试数据统计三次,然后取平均值。测试结果如表1所示。
分析上表中的实现数据可知,加载强制访问控制框架后,读写操作、获取文件系统状态、文件打开和关闭的三项系统性能有所下降。因为Linux系统加载的强制访问控制框架对文件的读写操作、获取文件系统状态、文件的打开及关闭等相关的钩子函数(hooks)进行了重写,当触发这些钩子函数时执行LSM安全策略中重写的钩子函数(hooks),而不是默认的钩子函数(hooks),这将导致这些性能下降。从表1中的整体数据分析,加载该针对Docker容器的强制访问控制机制框架后对原ubuntu14.04系统的性能损失在10%左右浮动,对Linux操作系统的性能的参数影响相对较小。
4 结束语
访问机制 篇6
SELinux就是MAC产生的解决方案之一, 它的设计思路是:对文件和目录设定标签, 对所有需要运行的进程也设定标签, 并通过制定策略来控制特定进程对特定文件的访问。通过这种方式, 可以很方便的向一个新增加的服务开放一组不同位置的数据的访问, 也可以随时调整某个应用对某类数据的访问权限。这样也符合最小特权原则, 即程序只能执行完成任务所需的操作。
1 SELinux LSM模块
SELinux在所有内核资源上提供增强的访问控制, 在它目前的格式下, SELinux是通过LSM框架合并到内核中的。
LSM是一种内核子系统, 将内核以模块形式集成到各安全模块中, 使用了 “最小特权” 的概念进行授权, 并且该权限仅够用于执行所请求的操作。在该模型中, 每个流程主体在一个特定的安全上下文中启动, 而所有操作系统的资源对象都有一个特定的类型与之相关联。
Flask架构包括三个主要的组件, 如图1所示:即安全服务器、客体管理器和访问向量缓存。
Flask架构使得安全策略的决定与强制功能间产生了巨大的差异。策略决定是安全服务器的工作, 安全服务器反射出SELinux微内核的根, 策略决定角色被封装在一个用户空间服务器中。内核对象的的安全服务器在SELinux LSM模块中。并且, 安全服务器使用的策略是潜入在一个规则集中的并且通过策略管理的接口进行载入。客体管理器负责对它们管理的资源集进行强制执行安全服务器的策略决定, 对于内核而言客体管理器是一个内核子系统, 它创建并管理内核级别的客体。而AVC缓存决定是由安全服务器为随后的访问检查准备的, 目的的为了提升访问确认的速度。
2 SELinux使用举例——Apache SELinux配置
Apache只能访问包含httpd_sys_content_t标签的文件。如果Apache使用/srv/www作为网站文件目录, 那么就需要给这个目录下的文件增加httpd_sys_content_t标签。首先为/srv/www下的文件添加默认标签类型:
semanage fcontext-a -thttpd_sys_content_t'/srv/www (/.*) ?'
然后用新的标签类型标注:
restorecon-Rv/srv/www
当从用户主目录下将某个文件复制到Apache网站目录下时, Apache默认是无法访问的, 因为用户主目录的下的文件标签是user_home_t。restorecon将其恢复为可被Apache访问的httpd_sys_content_t类型:
restorecon reset/srv/www/foo.com/html/file.html contextunconfined_u:object_r:user_home_t:s0->system_u:object_r:httpd_sys_content_t:s0
3 结语
MAC是一种多级访问控制策略, 它的主要特点是系统对访问主体和受控对象实行强制访问控制, 系统事先给访问主体和受控对象分配不问的安全级别属性, 在实施访问控制时, 系统先对访问主体和受控对象的安全级别属性进行比较, 再决定访问主体能否访问该受控对象。基于SELinux的MAC机制在数据的安全性与实用性方面取得了一个重要的平衡, SELinux作为基本的企业开发软件被广泛的部署。SELinux有时被认为过于复杂, 不易于简便和正确地设置权限。但从安全和可定制性来看, 精细的控制步骤是安全的必要保证。在当今日益复杂的互联网环境下, 用户及企业的数据安全都是至关重要的。基于SELinux的强制访问控制系统作为一种坚实可靠的安全控制系统, 必将在数据安全方面发挥着重要作用。
参考文献
[1]付志峰, 张焕国.SELinux中访问控制机制的分析[J].计算机工程, 2003, 卷缺失 (14) :1-2, 8.
[2]李云雪, 苏智睿, 王晓斌.基于Linux安全模块的通用框架研究与实现[J].计算机工程, 2005, 卷缺失 (3) :105-107, 172.
访问机制 篇7
随着Internet技术的不断发展, Web应用系统开发技术也得到了进一步地发展, 这类系统通常采用Browser/Server方式实现对Web数`据库服务器的访问, 而访问数据库的关键技术就是数据访问接口。在不同的Web环境下, 操作数据库的技术有所不同, 具有代表性的有:CGI、JDBC、ASP等。
其中ASP技术通过ADO数据访问接口可以很方便地与数据库建立连接, 并操纵数据库, 开发者能够比较容易地开发出功能强大的数据库应用程序, 只是A-DO的连接传输模式性能较低, 尤其同时对多用户连接时, 服务器负载很重。
在.NET技术产生后, 微软为了克服ADO的不足, 随即推出了ADO.NET, 这种非连接传输模式, 只有在需要取得数据或更改数据时才需要与数据源进行连接, 应用程序所要管理的连接数减少, 服务器负载大大减轻了, 运行效率也大大提高了。
1、ADO.NET的结构
ADO.NET是一组用于和数据源进行交互的面向对象类库, 数据源可以是数据库, 也可以是文本文件、Excel表格或者XML文件, 应用程序可以使用ADO.NET来连接数据源, 并检索、处理和更新所包含的数据。
ADO.NET对象可分为两类, 一类是联机对象 (与数据直接连接) , 包括Command对象、DataReader对象、DataAdapter对象等, 借助于这些对象可以连接数据源或者进行数据维护等相关操作;另一类是与数据源无关的对象, 如DataSet对象。对象模型如图1所示。
DataSet对象是ADO.NET非连接结构的核心组件, 设计该对象的目的是为了实现独立于数据源的访问, 用于多种不同的数据访问, 用于XML数据或管理应用程序本地数据等。DataSet中还包括一个或多个DataTable对象的集合, 这些对象由数据行和数据列组成, 也包括主键、外键、约束和有关的数据关系信息等。
ADO.NET结构的另一个核心是.NET Framework数据提供程序, 是一组包括Connection对象、Command对象、DataReader对象和DataAdapter对象在内的组件, 其设计目的是为了实现数据的存取、修改、更新等操作。
ADO.NET集合了所有允许数据处理的类, 这些类表示具有典型数据库功能的数据容器对象, 其结构图如图2所示。
2、ADO.NET的数据访问机制
从ADO.NET结构分析来看, 我们知道对数据访问的形式有两类:一种是联机模式, 利用DataReader对象来实现对数据的只读访问;另一种是非联机模式, 利用DataSet对象来实现对数据的各类操作。下面我们将基于VB语言为基础, 以对学生信息进行访问为例, 来分析这两种模式的数据访问机制。
2.1 联机模式
在这类模式下, 客户机一直保持与数据库服务器的连接, 这和ADO技术是一致的。它利用DataReader对象从数据源中提取高性能的数据流。其数据访问步骤如下:
(1) 导入命名空间System.Data.OleDb。 (DataReader封装在该命名空间内)
(2) 使用Connection对象连接数据库。
(3) 使用Command (命令) 对象向数据库索取数据。
(4) 把取回来的数据放在DataReader (数据阅读器) 对象中进行读取。
(5) 关闭对象。
提示:ADO.NET的联机模式只能返回向前的、只读的数据, 这是因为DataReader对象的特性决定的。
访问学生信息的代码如下:
2.2 非联机模式
这类模式的数据访问, 只有当进行数据库读写时才需与服务器联机, 其它操作都可在断开联机状态下进行。它利用DataSet对象实现数据源在内存中的映射, 增、删、改、查、排序等操作均可在内存中进行。其数据访问步骤可从如下学生信息访问代码中获知:
注:以上在调用DataAdapter的fill方法时, 该方法将隐式调用数据连接的Open方法, 填充完毕后会自动关闭。
2.3 两种机制性能分析
联机模式的数据访问是利用DataReader对象从数据源中提供只读的向前的高性能的数据流, 用以快速检索查询所返回的行, DataReader支持最小特性集, 所以速度非常快[3]。这种方式对数据库的操作必须是在与数据库连接的状态下, 在网络程序设计和Web应用系统中, 使用这种技术显然是存在着问题, 当网络上有成千上万的用户需要对数据库操作时, 服务器的负载是相当重的, 长时间地打开数据库也是不安全的。
而非联机模式的数据访问是利用DataSet对象实现数据源在内存中的映射, 其各类数据操作对象是本机内存中的数据。这种非联机的“断开”结构体系使得只有在读写数据库时才需要使用数据库服务器资源, 因而提供了更好的可伸缩性, 有效地避免了由于活动连接过多而千万的数据库堵塞和网络资源的浪费。
3、结束语
综上分析, ADO.NET的两种数据访问机制各有千秋, 不能一概而论, 应视具体情况而定。对于联机模式的访问在创建Web页或XML Web服务时尤为有用, 而对于多用户在进行数据库的批量操作时, 非联机模式体现出了它的优越性。
摘要:本文在介绍了ADO.NET的体系结构的基础上, 以访问学生信息为例阐述了ADO.NET的两种数据访问模式, 并对两种机制进行了性能分析。
关键词:ADO.NET,数据库,访问机制
参考文献
[1]王磊.基于.NET平台的数据库访问技术[J].福建电脑, 2006年第12期 (71)
[2]于训全, 于晓冬.基于ADO.NET的数据库访问技术研究与应用[J].企业技术开发, 2006年1月 (3~5)
访问机制 篇8
1 高职院校实施“访问工程师”制度的背景与意义
为贯彻落实2005年国务院《关于大力发展职业教育的决定》和2007年江苏省政府《关于进一步加强师资队伍建设的意见》精神, 加快“双师型”教师培养, 2008年6月江苏省教育厅发布了《关于实施高职高专院校访问工程师项目的通知》[苏教师 (2008) 15号], 决定实施高职高专院校访问工程师项目。
2 高职院校实施“访问工程师”制度实施的保障机制
该制度推行五年来取得了一定的成效, 实践证明:实施“访问工程师”项目是高职高专院校培养“双师型”教师的有效途径;实施“访问工程师”项目是高职高专院校提升师资队伍素质的有效方式;实施“访问工程师”项目是高职高专院校教师自身发展的需求;实施“访问工程师”项目是高职高专院校提高人才培养质量、推动校企合作的绿色通道[2]。但在具体实施过程中也面临一些问题, 特别是高职院“访问工程师”制度实施的保障机制问题。诸如如何调动教师的积极性?如何保障优质的访问企业与导师?如何保障访问时间?如何保障访问教师的薪酬待遇?如何保障访问效果?笔者通过实践发现, 只有制度、时间和经济保障才能确保访问工程师制度在高职院中稳步、健康、有序的开展, 才能真正起到提高师资队伍质量的作用。
2.1 制度保障
(1) “访问工程师”经历纳入职称晋升体系。
江苏省2009年修订的高职院校职称评审中, 强调了讲师对于工程实践经历的要求[3]。江苏省2011年开始执行的高职院校职称评审条件中, 要求申报副教授必须有5个月的专业实践经历[4]。把“访问工程师”经历作为高职教师申报高一级专业技术职称时必要评聘条件之一。让教师从思想上充分认识到参加“访问工程师”的重要性和必要性, 以积极的态度参与这项工作。
(2) 政校教协作落实访问企业。
“访问工程师”项目实施过程中, 最大的困难来源于受访企业的积极性和参与热情普遍不高。在目前的市场经济大环境下, 企业都以经济效益为首要目标, 而目前“访问工程师”项目模式中, 高职院校与访问工程师很难为企业带来利益, 外来人员的加入还会影响企业的正常工作。
政校教协作落实访问企业的模式, 加强了政府、学校、企业和教师之间的相互联系, 实现了多方共赢。
(3) 建立科学、完善的“访问工程师”项目管理与考核制度。
学院要建立科学、完善的“访问工程师”项目管理与考核制度, 严格按照制度执行, 并将“访问工程师”在访问期间的工作表现纳入当年的年度工作考核。
“访问工程师”项目的管理, 应该是全过程的、动态管理。访问工程师到岗后, 学院职能部门不定期派人到企业进行访谈、检查和监督, 了解访问教师工作情况, 及时解决访问过程中出现的问题。
“访问工程师”项目的考核, 包括过程考核和结果考核。以南京化工职业技术学院为例, 学院校企合作处的一项重要工作就是负责访问工程师的管理与考核。访问过程中, 访问教师每周都要向校企合作处递交访问工作周小结。访问结束后, 访问教师要填写访问工程师手册, 提交访问成果, 如科技论文、所参与的技术研究报告、培训材料等, 还要通过学院专家组的公开答辩考核, 即不仅考核过程, 还要考核成果, 并结合访问单位和企业导师的意见, 最终形成考核意见。
对由于个人原因在既定时间内无法顺利完成“访问工程师”计划的教师, 延长其访问时间, 延长期间产生的相关费用自理, 并不再享受学院的相关优惠政策。
2.2 时间保障
目前, 高职院校教师主要利用寒暑假、周末、节假日进行“访问工程师”实践工作, 时间比较分散, 实践过程不连贯, 很难完整参与企业的某个实践项目, 不能完全深刻地理解和掌握实践内容, 致使访问效果大打折扣。
鉴于上述情况, 高职院校应鼓励教师采用脱产或者半脱产的方式进行访问工作, 对于全脱产教师, 薪酬待遇参照学院同职称行政人员标准发放。对于半脱产教师, 可适当降低课时量, 并使授课时间集中, 使访问时间更加连贯。这样既可以打消访问教师的后顾之忧, 又可以确保访问时间, 此乃一箭双雕。
2.3 经济保障
教师在“访问工程师”期间产生的差旅费、业务费等相关费用, 学院应在访问结束并通过考核之后给予教师适当的补贴, 以南京化工职业技术学院为例, 在访问教师通过考核之后, 学院给予教师两千元的访问补贴。
对于脱产进行访问的教师, 访问期间的工资待遇不变, 脱产期间的校内津贴, 应参照同一职称行政人员的津贴标准予以发放。对在“访问工程师”实践工作中取得突出成绩的教师, 应予以适当的表扬和奖励。
3 结语
高职院校“访问工程师”制度是一种新的有效提高师资质量的途径, 此项制度目前仍处于探索阶段, 在今后的实施过程中必然还会遇到许多困难和问题。这就要求我们高职教育者要在实践过程中不断吸取教训、总结经验, 不断完善“访问工程师”制度, 使其更好地服务于高职师资队伍建设。
摘要:本文总结了高职院校推行“访问工程师”制度五年以来取得的成果与存在的问题, 提出要从制度、时间和经济方面进行有效地保障才能确保访问工程师制度在高职院校中稳步、健康、有序的开展, 才能使其真正起到提高师资队伍质量的作用。
关键词:高职院校,“访问工程师”,保障机制
参考文献
[1]肖忠平.高职院校毕业实训实施“访问工程师”制度的探索[J].中国电力教育, 2009 (149) :26-28.
[2]王波, 张崎静.访问工程师:校、企、教师共赢的绿色通道[J].中国电力教育, 2011 (35) :52-53.
[3]王小刚.访问工程师:高职院校“双师”建设新探[J].职教论坛, 2010 (6) :30-33.