云计算环境下虚拟实验室云端访问的权限控制方法

2023-02-08 08:14曾志区
华东科技 2023年12期
关键词:计算环境开发人员访问控制

文/曾志区

本文基于OpenStack(开源的云计算管理平台),采用CP-ABE(基于属性的加密)方案,构建虚拟实验室,使用户能够在云计算管理平台创建、管理计算实例,并提出云计算环境下虚拟实验室云端访问权限控制方法的实现路径,旨在帮助服务方通过简化工作流程,省略用户权限数据的维护环节,提升服务能力。

相关调查结果显示,在高速发展的同时,云计算应用也存在较多问题,且随着人们个性化需求的不断提升,访问权限的管理成为云计算应用中的突出问题。虽然上传服务的方式有利于数据的传输与共享,但其也会降低数据的私密性。因此,传统访问控制方法已逐渐不能满足现阶段的发展需求。基于此,笔者提出以属性为依托的非对称加密方法,并将其作为云计算中控制访问权限的基础,以供借鉴。

一、构建虚拟实验室

IaaS 又称基础设施即服务,是云计算的三种服务模式之一,其作用是向用户提供计算资源。与PaaS(平台即服务)、SaaS(软件即服务)相比,IaaS 便利度有待提升,但用户的自主性更强。而OpenStack 作为应用较为广泛的云计算管理平台,可为IaaS 层服务。OpenStack 平台具有开放的源代码,能够提高用户操作的自主性。基于此,笔者在OpenStack 平台的基础上,构建了虚拟实验室,并研究了云端访问权限控制方法。

(一)方案选择

在虚拟实验室搭建环节,笔者将CP-ABE 算法库融合在服务器与客户端,以简单、高效为设计目标,有效把控密文、密钥长度,合理调节系统运行时的网络流量。

(二)虚拟实例访问

虚拟实验室本身属于B/S(服务器模式)架构的服务,用户与服务端可通过浏览器进行交互,且用户可以在Web(全球广域网)页面查看计算实例,借助VNS 协议,访问虚拟机交互界面。同时,在大型IaaS 服务中,许多厂商通常会设置公共IP 地址,以此为访问互联网的用户提供计算实例。但由于在设计环节,设计人员要避免IPv4 地址资源不够充足的问题,一个服务端无法为实例分配多个公共IP 地址。基于此,笔者提出应当为计算实例提供端口转发服务。这样的话,用户便可在虚拟实验室界面添加相应规则,进一步指定本地端口,系统便可在无人员干预的情况下自行选择外部端口。

二、云计算环境下虚拟实验室云端访问权限控制的实现路径

在完成云计算环境下虚拟实验室的构建后,笔者认为可利用基于属性的加密方式,实现云端访问的权限控制。具体实现路径如下。

(一)角色划分

在云计算环境中,用户可结合个性化需要,进行多种角色的扮演,但不同角色拥有的权限应存在一定的差异性(见表1)。

表1 角色权限示例

在通常情况下,云计算环境更像是较为开放的平台,与传统计算模式相比,其局限性在于难以将资源布置在完全受控的环境下。也就是说,任何用户都可凭借客户端访问云计算服务。因此,在实际操作时,系统开发人员需要根据角色间的差异性来进行访问权限的控制。

(二)OpenStack 权限控制

访问控制矩阵是指用矩阵的形式描述系统的访问控制模型,其最初是由学者Lampson提出的。而访问控制列表也正是以此为依托设计的,相关示例如表2 所示。

表2 访问控制示例

由表2 可知,访问控制矩阵是一种相对抽象的模型。现阶段,我国大部分云计算平台将访问控制矩阵作为应用基准,借助OpenStack 组件的权限功能,保证访问控制矩阵可存储于服务器数据库中。但需要注意的是,随着用户规模的持续扩大,访问控制矩阵存储难度也会随之提升;资源规模的逐渐攀升也会影响系统维护效率,最终影响云计算平台的整体性能。同时,OpenStack 组件无法对用户进行细粒度划分,其主要功能停留在:凭借用户所在项目组开展特定的权限管理。为解决此类问题,开发人员需要以CP-ABE 为核心实现权限控制。

(三)以CP-ABE 为核心的权限控制

根据上文研究可知,用户身份角色可采用属性来完成标识操作。以某学院教师为例,开发人员可直接将其属性串设置为SIST teacher。这样的话,属性串的释义便可直接从字面解读出来,但属性值却无特殊含义,只是任务字符串。因此,开发人员可以采用属性串标识用户,并进行加密操作,实现权限控制。关于CPABE 算法,由于结构树本身与密文之间的关联性较高,因此开发人员可将用户属性上传到私钥中。由此可见,在开展加密算法的过程中,开发人员可忽略用户的实际身份。此外,云计算的本质表现为分布式环境,所有参与者集合始终处于动态变化状态,而CPABE 极为适合此类环境。因此,开发人员可以将CP-ABE 作为访问权限控制的核心架构。[1]

通常来说,虚拟实验室用户会基于CP-ABE 私钥进行个人标识,而私钥内的属性集合则主要用于反映用户属性,与之相对应的资源在构建环节可直接用于访问结构树。此时,管理员具备修改权限,能够为用户访问结构树可以提供必要条件。在用户完成密钥选取后,浏览器会自动进行密钥解析,并呈现密钥属性集。这时候,用户可以同时拥有多个属性。虚拟实验室服务器集群涵盖认证、资源服务器,其系统公钥保持公开状态,而用户持有的私钥则是保密的。用户若想要得到指定资源,则应先发出请求,使服务器形成一个秘密。服务器在获取访问结构树的权限后,便可在无人员干预的情况下自动运行Encrypt 软件以获取秘密,然后将相关数据反馈给用户。用户在拥有私钥后,主动启动运行Decrypt 软件,便可解密秘密。直至私钥属性满足访问结构树的条件,Decrypt 软件便可进行明文秘密的输出,再将秘密发送至资源地址。对秘密进行查询且评估了秘密的合法性后,资源服务器便会研判是否提供服务。需要注意的是,虚拟实验室的认证是指服务器不定向形成的秘密,当完成加密处理后,服务器会将秘密发送给指定用户。当用户解密出明文后,相关数据参数才会反馈给服务器。另外,在模型中,用户若想解密,需要满足结构树要求,取得相应授权。[2]

相较于传统的认证机制来说,上述权限控制方法的优势在于:云服务提供商无须维护用户权限信息,只需充分扩展系统,并根据用户特点,做出细粒度的权限管理划分。

(四)属性撤销

在OpenStack 平台中,用户属性集可实现自动改变,授权机构也能通过撤销用户属性的形式,使用户失去相应权限。属性撤销可以通过为属性添加失效日期来实现,比如当属性名为teacher时,授权机构可通过将属性编成“teacher2023-09-20”,使属性在2023 年9 月20 日之前有效。授权机构通常会进行周期性的密钥更新,但这种方式也存在一定问题:每个周期的密钥存在一定差异性;用户可能要进行多个周期密钥的储存,并结合实际情况开展针对性使用;此类操作相对烦琐。在虚拟实验室中,用户可直接持有最新密钥,这主要是因为:在虚拟实验室认证系统中,若用户请求资源,系统就会自动实现密文解密,而服务端则可通过最新属性集开展加密,用户并非作为解密历史文件需求的生产者。因此,开发人员可对CP-ABE 方案稍做修改,使之满足虚拟实验室的需求。

上述通过更新版本号实现属性撤销的方式,无法做到及时撤销。对此,开发人员需要采用一些技巧以达到即时撤销的目标。简单来说,开发人员需要保持虚拟实验室服务器的属性集与授权机构的更新频率一致,这样,任何属性撤销都会第一时间反映在密文内。[3]

三、结语

综上所述,本文基于Open Stack 平台,采用CP-ABE 方案,构建云计算环境下的虚拟实验室,并提出云计算环境下虚拟实验室云端访问权限控制方法。通过本文研究,笔者希望服务方能够舍弃原始的认证机制,实现对单个用户细粒度的权限划分,提高管理的质量与效率。

猜你喜欢
计算环境开发人员访问控制
云计算环境下网络安全等级保护的实现途径
Semtech发布LoRa Basics 以加速物联网应用
大数据云计算环境下的数据安全
ONVIF的全新主张:一致性及最访问控制的Profile A
动态自适应访问控制模型
浅析云计算环境下等级保护访问控制测评技术
大数据平台访问控制方法的设计与实现
云计算环境中任务调度策略
后悔了?教你隐藏开发人员选项
基于云计算环境下的分布存储关键技术探讨