WSACd - 一种适用于智能家居设备的可用访问控制框架
1 引言
近年来,计算和通信技术的巨大进步使得人们执行日常各种任务的方式发生了显著变化;这一发展得益于计算设备在现代生活各个方面的普遍存在。这些重大变革不可避免地影响到了居住环境,智能家居正逐渐成为现实,即配备有复杂照明系统(例如智能灯泡)、环境控制(例如通过智能恒温器实现的供暖、通风和空调)等功能的家居。
电器(智能冰箱、烤箱、洗衣机、咖啡机等)、通信系统(包括智能手机)、娱乐(例如智能电视)以及家庭安全(智能摄像头、门窗控制器等)设备。此外,居住环境还与智能家居生态系统中的其他普适计算应用(如智能计量和电子健康)相集成。然而,由于这些设备通常处理个人敏感数据,并且经常与物理世界直接交互,因此更广泛采用和成功应用这些新技术的关键因素在于能否有效解决各种安全[1][2]和隐私[3]问题。成功应对这些问题的必要工具是具备强大的访问控制机制。
本文提出了面向设备的Web服务访问控制(WSACd),该方案旨在通过基于可扩展访问控制标记语言(XACML [4], ,一项OASIS标准)定义基于策略的访问控制(AC)机制,从而提供一种手段,使系统所有者能够集中管理策略约束,并据此控制对智能家居节点资源的访问。典型的XACML部署需要建立复杂的基础设施以支持实体交互和策略检索(例如通过LDAP);这种做法在企业环境中可能是可接受的,但不适合消费类应用和普通家庭用户。为此,所提出的框架利用了面向服务的架构(SOA)的优势,通过采用同样为OASIS标准的Web服务设备配置文件(DPWS [5])来实现关键实体,使得设备能够与Web服务技术保持一致,从而促进资源受限设备所提供的服务之间的互操作性。采用DPWS有助于实现无缝的机器对机器(M2M)发现与交互,允许框架中的实体部署到家庭网络中任意位置的任何平台,且用户只需极少参与。通过结合上述技术,新设备可以轻松加入现有网络,并提供受预定义或动态策略集保护的服务。
根据系统所有者设定的策略规则,所提出的架构可对智能家居环境中可能出现的大量设备和服务实施细粒度访问控制。因此,WSACd有助于更好地使用各类智能设备以提升消费者生活品质,同时解决其安全顾虑。
本工作组织如下:第2节阐述了此项工作的理论依据,并介绍了文献中已识别的相关研究工作。第3节提出了该框架及其关键实体,以及我们实现该框架的方法。第4节包含了在智能家居环境中典型设备上对所开发解决方案进行的性能评估。最后,第5节总结了本文内容,并指出了未来工作可进一步探索以增强所提出方案的方向。
2 原理与相关工作
在典型的普适计算增强的住宅环境中,各种智能设备预计将出现在电器上(例如智能冰箱)以及自动化使能的设备中。
结构(例如智能门),还包括环境传感器和执行器。此外,通常还会配备专门设计的设备,用于组织、管理和增强其余智能基础设施的功能,例如能源监控器和控制节点(如带触摸输入的计算系统,以实现对设备的无缝监控和交互)。
这种异构设备组合将提供多种服务,每项服务都有其自身的内在特性(一些与住户的安全密切相关,另一些涉及私人敏感数据等),因此需要不同的保护配置。例如,所有住户都应能够控制房屋的智能门和窗户,但儿童可能不应在某些时间段(例如夜间)篡改其中的部分设备(如前门)。在另一个场景中,访客可能有权监控住宅的环境传感器,但不能随意设置气候控制。此外,住宅所有者可能认为访客查看其智能冰箱内容是可以接受的,但访客显然不应能够向购物清单中添加物品。假设智能家居生态系统中存在电子健康设备,则预计患者、其配偶以及医务人员应能够监控各项读数并控制执行器以输送处方药物,但只有后者才能访问控制药物剂量的服务。在住宅配备了智能计量设备的情况下,只有授权电力公司人员才能调整和/或重置电表(用于计费目的),但住宅所有者仍应能够访问用电量读数。关于与智能家居相关的安全风险的更深入分析可参见[6];该报告识别了对所有智能家居资产(包括人类居住者)具有高暴露度的威胁。
此外,一项关于智能家居用户的调查[7]显示,不灵活性(通常迫使用户采用单一制造商提供的解决方案)以及在实现安全方面的困难,是相关技术和设备广泛采用的重要障碍。
从上述情况以及考虑到通常家庭环境中唯一普遍存在的保护机制是无线网络访问,显然需要强大且可互操作的访问控制机制,以保护与智能家居环境运行相关的各个方面。此外,这应以灵活、平台无关的方式实现,起到促进作用,而非为“智能”设备和服务的采用引入新的障碍(或进一步加剧现有障碍)。
为此,所提出的框架基于标准化机制,这使得能够利用在Web服务以及XACML策略定义方面已开展的工作。DPWS可以以统一的方式实现用户到机器和机器到机器的交互,从而摆脱当前消费电子制造商提供各种不可互操作的专有协议、锁定消费者并迫使他们使用特定供应商/生态系统的情况。关于XACML,该方案可以轻松扩展以应对其他特定问题,例如隐私问题和/或敏感数据的处理(例如医疗保健,由相关的XACML配置文件[8]涵盖)。
2.1 面向服务的架构
面向服务的架构源于对可互操作、跨平台、跨域且与网络无关的设备及其服务访问的需求。这种方法在商业环境中已取得成功,因为Web服务使利益相关者能够专注于服务本身,而非底层的硬件和网络技术。
Web服务设备配置文件(DPWS)规范定义了一组最小的实现约束,以在资源受限设备上实现安全的Web服务消息传递,包括发现、描述、交互以及事件驱动的变化。DPWS于2004年推出,现已成为OASIS开放标准(自2009年7月起为1.1版本)。它采用与Web服务架构(WSA)类似的消息机制,但对复杂性和消息大小进行了限制,从而能够在完全平台和语言中立的情况下提供服务,类似于传统Web服务所提供的功能,使系统所有者能够在各种智能环境(如家庭、企业等)中异构系统上充分利用面向服务架构(SOA)的优势。
在此背景下,Leong 等人 [9] 提出了一种基于规则的异构智能家居系统管理框架。他们的研究重点是使用 SOAP 实现互操作性,并采用事件-条件-动作(ECA)机制来实现设备间的机器对机器交互与编排。Perumal 等人 [10] 进一步扩展了基于 SOAP 的互操作性框架,增加了服务存 stub 以方便新设备的接入,以及一个数据库模块用于处理 SOAP 消息的查询(包括家庭服务功能、操作逻辑以及对其他本地或远程数据库的访问)。
SOA-DOS [11] 是相关文献中提出的一种基于面向服务架构的分布式操作系统,旨在管理家庭网络中的所有嵌入式设备,并促进各系统之间的互操作性。该研究提供了一种基于面向服务架构的解决方案,适用于资源受限程度很高的平台(如传感器节点),但偏离了标准化机制,例如采用 JSON [12] 格式而非 XML 进行数据交换。
Bourcier 等人也提出了利用面向服务架构(SOA)概念来应对家庭控制应用的动态性和异构性[13]。作者介绍了基于开源、标准化平台的方法实现,提供了桥梁,可将不同的设备(包括DPWS设备)及其服务无缝集成到其家庭控制基础设施中。
DPWS 堆栈还构成了 iVision [14], 的基础,iVision 是一种专用硬件平台,用于为控制家用电器的服务架构及其配套架构添加情境感知功能。在上述工作中,由 iVision 摄像头提取的上下文信息以及所有必要的智能家居电器通信均通过 DPWS 作为 Web 服务暴露出来。
DPWS 的使用及其优势也已在多个其他应用领域中得到广泛研究,包括汽车和铁路系统 [15], 工业自动化 [16], 智能电网 [17], 电子健康 [18] 以及无线传感器网络 [19]。上述所有方面均为所选技术作为本框架底层实现和通信机制的未来前景及其普及潜力提供了积极的信号。
2.2 访问控制
在为具有不同需求和特性的系统所提出的访问控制方案中,一种基于可扩展访问控制标记语言(XACML)策略的跨平台解决方案,能够满足各类嵌入式系统的需求,并提供互操作性(这对下一代普适计算设备至关重要)。XACML 定义了访问控制实体之间交换的访问请求和响应的结构与内容。在本研究中,典型的基于策略的访问控制架构结合 XACML,被映射到一个面向服务架构(SOA)的节点网络,以实现对其分布式资源的受保护访问。
对文献的调查揭示了大量相关工作,包括各种不同的方法,并证明了 XACML在智能家居环境中的适用性。
金等人[20]提出使用基于开放服务网关倡议(OSGi)的框架来集成异构的智能家居设备和服务,包括一种访问控制模型,该模型结合XACML机制与OSGi服务,以适当地生成查询并转发给负责访问控制决策的实体(即策略决策点,PDP)。尽管所提出的方法理论上支持多种协议(包括DPWS设备),但其分析和概念验证实现主要基于通用即插即用(UPnP),而该协议在许多方面存在不足(例如安全性和可扩展性)。此外,所提机制的性能——考虑到许多智能设备资源受限,这是一个重要方面——并未得到评估。
布斯内尔等人[21]提出了一个关于智能家居中远程医疗保健辅助的案例研究。文中广泛讨论了大多数智能家居的安全性和可靠性需求,指出使用面向服务的架构(SOAs)结合XACML是满足这些需求最适用的技术。采用基于 XACML的授权解决方案,并结合安全模式方法,以满足此类环境中常见的安全要求。该研究提出了这一框架的概要,但并未实际实现SOA和XACML机制,也未进行性能评估。在设计阶段,目标设备的资源受限特性以及适当安全机制的选用似乎未被考虑。
研究人员还研究了使用访问控制机制来保护用户的隐私,这是智能环境中的一个关键问题。Faravelon 等人 [22] 在面向服务架构(SOA)支持的普适环境中提出了一种此类架构,并以医疗场景作为测试案例。该研究考虑了与 DP WS 的互操作性以及其他 SOA 技术,但其访问控制功能采用了非标准化的方法。
郑等人[23], 也考虑了隐私问题,他们提出了一种面向家庭自动化网关的通用访问控制概念,旨在保护用户及其数据的隐私和安全。该方案基于一种定制的 SOAP消息结构,将XACML属性集成到基于SAML的
访问令牌中。然而,对所提方案的初步理论评估表明,这种方法开销较大(尤其是在数据包大小方面),这使其在嵌入式智能家居设备环境中的适用性受到质疑。
作者承认这一缺点,并指出将在未来的工作中在实际平台上对此进行研究。
穆勒等人 [24] 也提出了将DPWS与XACML结合使用,但其重点在于最终用户内容(例如多媒体文件的分发)以及使用代理在智能家居域之间建立信任关系(这种方法也可在WSACd中加以利用)。此外,这些作者在其XACML架构的实现和部署中并未利用DPWS。
3 提出的模型和实现方法
本节旨在详细介绍所提出解决方案的基本组件,以及用于开发概念验证实现的工具包。
3.1 XACML 实现
在提出的框架中,存在以下关键实体,可根据其角色和资源部署在不同的智能家居节点上:
策略执行点(PEP): 发出决策请求并执行授权决定。预计每个向终端用户提供资源且需要受当前策略集保护的智能设备(如电器、传感器、电子健康设备、能源监控或智能计量设备等)中都应包含该组件。
策略决策点(PDP): 根据适用策略评估请求并作出授权决策。它通常部署在功能较强的节点上,例如个人计算机或作为整个智能家居基础设施控制节点的嵌入式系统。
策略管理点(PAP)与策略信息点(PIP): 前者负责创建和管理策略或策略集,后者则作为属性值的来源。这两个实体通常部署在同一功能较强的节点上,以便与最终用户(例如家庭用户)进行直接交互。台式计算机或笔记本电脑是担任此角色的理想选择。
从上述内容可以明显看出,考虑到嵌入在智能家居中的节点可能不具备足够的计算资源来支持高开销机制,核心决策过程由功能更强大的节点在该节点的受信任环境中执行。这种方法允许直接向相关节点发送请求,同时保持对这些节点的集中管理和控制能力。该架构的概览如图1所示。
3.2 XACML实体的DPWS实现
该框架的所有实体均通过DPWS暴露到网络中,从而利用了面向服务架构(SOA)所提供的优势。目前存在多种用于DPWS开发的API,包括由设备Web服务(WS4D)倡议以及基于多种编程语言(如C、C++、Java等)的设备面向服务的架构(SOA4D)工具包所提供的工具,每种工具都有其自身固有的特性。
然而,在关注代码可移植性、在异构平台上的部署、对IPv6的支持(对于普适计算应用至关重要)以及最重要的工具的活跃开发与支持等关键特性时,WS4DJMEDS 目前是最具吸引力的选择。它是WS4D倡议中最先进且处于活跃开发状态的项目,支持大多数现有的DPWS功能,并能实现广泛的平台可移植性;同时也是我们开发本文所述DPWS实体的首选工具包。
XACML功能按如下方式暴露:
PEP到PDP的实现: 策略执行点必须位于每个需要保护资源免受未授权访问的设备上。除了该框架旨在保护的设备功能元件(例如对其传感器的访问)之外,每个DPWS设备上还必须具备另外两个操作。
这些操作本质上构成了PEP的功能及其与PDP的通信。后者作为DPWS客户端,访问这些PBAC特定的操作。具体而言,第一个操作是“SAREvent”(服务访问请求事件),指遵循WS-Eventing规范的操作,设备可以订阅该操作。当触发时,该操作输出“SAROut”消息,其中包含PDP评估请求所需的所有信息(即主体、操作和资源)。第二个操作是“PDPResponse”(策略决策点响应),由PDP调用以传递对未决访问请求的答复。
PDP到PIP/PAP的实现: 在基础设施实体(PDP、PIP、PAP)之间必须进行的发现和信息交换方面,存储活动策略集的实体(即 PIP/PAP)必须具备一个额外的操作。该额外操作称为“PIPOperation”(策略信息点操作)。它包含来自 PDP 请求的输入(请求所有适用的策略规则),以及输出 PIP 所识别的所有相关信息(即策略和规则)。
上述DPWS操作以及在收到受保护资源的访问请求时发生的事件序列如图2所示。
3.3 安全考虑
任何访问控制机制的有效性都可能轻易地受到破坏,除非部署适当的安全机制来保护策略消息传输。否则,恶意实体可能能够窃听、重放或篡改访问控制消息,从而绕过所提供的保护,使未授权实体获得访问权限,或阻止授权实体访问。在可行的情况下,通过可信和/或安全网络(例如虚拟专用网络,VPN)进行部署可以解决大部分此类问题,但对于无法实现这些条件的部署场景,则必须考虑替代机制。
Web服务安全规范(WS‐安全或WSS,[25])是OASIS发布的WS‐* 规范系列的一部分。该协议规定在SOAP消息的头部集成安全功能。它工作在应用层,确保SOAP消息的端到端完整性和机密性。
因此,还开发了一种概念验证实现的变体,采用了WSS中规定的安全机制。这些机制对实体进行认证,并保障框架实体之间交换的策略消息传输的完整性和机密性。
4 性能评估
使用平台无关技术(即DPWS和Java)使得所提出的框架在设计上能够部署于多种平台和操作系统。然而,为了切实评估所提出框架的性能及其对目标设备的影响,开发的实体必须部署在智能家居环境中可能存在的设备上。因此,基础设施实体(即PDP和PIP/PAP)被部署在一台笔记本电脑(2.6GHz四核CPU,4GB内存)上,因为个人计算机通常存在于家庭环境中,并预期作为管理中枢,供住户监控和控制其智能家居。策略存储库中总共存储了50条策略,考虑到智能家居中设备数量相对有限,我们认为这是所需策略数量的一个合理近似值。此外,还进行了500条策略的测试,以评估更多策略对框架性能的影响。
关于目标平台——即提供需要保护的服务的平台——我们选择使用相对资源受限的智能嵌入式设备(600MHz 低功耗单核 CPU,512MB内存),这些设备运行一种流行的用于移动设备的开源操作系统。此类操作系统已经广泛应用于多个消费厂商提供的智能商用设备(例如智能冰箱)中。此外,随着面向终端用户的更复杂的家用设备不断推出,这类系统的采用预计将更加普及;因此,上述平台可被视为评估所提出机制性能的一个合理选择。
部署在智能平台上的DPWS设备不仅具有访问控制相关操作(如图2所示),还具备三种简单的操作,模拟了智能家电部分功能。通过上述操作,用户可以获取当前温度,订阅定期通知该温度的服务,并在需要时设置期望的温度。为此设备开发了一个基本的触摸图形用户界面,如图3所示。
还开发了一个用于测试的客户端应用程序——“智能家居浏览器”。该应用程序可部署在各种终端设备(个人计算机、智能手机或平板电脑)上,允许用户发现并控制各种支持DPWS的智能电器(例如获取智能冰箱的当前内容,订阅智能计量设备提供的功耗读数等)。图4显示了智能家居浏览器原型实现的截图。
开发了一种仅命令行版本的客户端,用于自动调用操作并记录响应时间,以进行基准测试。该基准测试客户端被用来评估三种设置的性能:一种是简单的 DPWS设备,未实现PEP(即对其服务的直接访问);第二种是受本文提出的访问控制实体保护并通过明文通信的DPWS设备;第三种设置中,这些实体之间的通信通过WS‐Security进行保护。这使我们能够分别评估访问控制功能的影响,以及在某些部署中为保护策略消息传输可能需要的安全机制的影响。
除了客户端测量外,还监测了托管PDP以及PIP/PAP的个人计算机和配备 PEP的智能设备上的CPU和内存利用率。此外,研究了两种不同的使用场景:在第一种场景中,客户端发出100个并发请求以调用服务,从而可以考察高负载条件下的性能表现;在第二种场景中,客户端每3分钟发出一个请求,共20个请求,模拟智能家居环境中的实际使用条件。
上述评估在平均响应时间(即用户在接收到其 intended to access 的数据之前需要等待的时间)方面的结果如图5所示。在两种使用场景中,访问控制机制的开销均被视为可接受。WSS 保护的影响在请求不频繁的情况下较为显著(如第二种场景中,连接在请求超时后关闭,因此必须重新建立连接)。
在目标受PEP保护的设备所消耗的资源方面,并聚焦于最苛刻的场景(即并发请求),性能分析表明,即使在此设置中使用的相对资源受限的智能平台情况下,测试期间的占用也很轻微。平均内存消耗如图6所示,与更简单的设备相比,访问控制机制的开销显得微不足道。
平均CPU负载与客户端响应时间成反比(见图5);当设备在响应客户端之前需要等待框架(即PDP)的回复时,其CPU负载相应地较低。记录到的值分别为:无访问控制时为11.6%,使用WSACd时为9.3%,使用WSACd与WSS时为8.4%。在监控目标设备的平均传输(TX)和接收(RX)速率时,也观察到了相同的排序——此处未展示以节省空间。从网络角度来看,最耗资源的情况是无访问控制的设备,但在所有情况下数据速率都相对较低,最低记录值为16.13kB(WSACd与WSS设备的平均TX),最高为26.5kB/sec(无访问控制的DPWS设备的平均RX)。
5 结论与未来工作
本文提出了WSACd,这是一种利用面向服务架构(SOA)优势、特别是DPWS的优势的框架,旨在将XACML提供的经过充分研究的细粒度和可适应的访问控制集成到智能家居中。该框架考虑了智能家居环境的内在需求、用户需求以及设备通常具有的资源受限特性。
其设备从根本上影响了构成本工作基础的标准化机制的选择与实现。因此,WSACd 的实体具有平台无关性、轻量级特性,并能无缝交互,最大限度地减少家庭用户在系统部署、设置和维护中的参与。
然而,家庭用户将根据自身需求和偏好负责定义活动策略集的某些参数。因此,需要研究的一个重要方面是提供用于指定访问控制策略的用户友好型界面,例如使用带有易于操作的下拉菜单和复选框的图形用户界面,或让用户回答简单问题,并将用户输入自动转换为策略。最后,尽管本文重点关注无处不在的智能设备的授权方面,另一个重要的组成部分是用户认证,作者目前正在对此进行研究,并计划在未来的工作中予以呈现。
76

被折叠的 条评论
为什么被折叠?



