一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

授权对计算机化系统中的对象的访问的方法、计算机程序产品和现场设备与流程

2021-11-22 22:20:00 来源:中国专利 TAG:

授权对计算机化系统中的对象的访问的方法、计算机程序产品和现场设备
1.本公开涉及一种用于授权对计算机化系统(例如自动化系统)中的对象(诸如文件或进程)的访问的方法。本公开进一步涉及自动化系统中的现场设备。
2.授权对计算机化系统(诸如工业自动化或控制系统)中对象的访问需要安全且有保障。授权或拒绝对自动化系统中涉及的设备中的文件、接口或功能的访问是提高相应自动化系统完整性的一个关键措施。
3.自动化系统通常在涉及的控制器上运行操作系统。例如,常规的操作系统依据访问控制列表(acl)对操作系统的资源(如例如文件)使用访问控制方法。例如,访问控制列表(acl)规定了是否允许某些用户访问文件。诸如linus、unix、bsd、windows或macos之类的常规的操作系统都使用acl模型。
4.访问权限的管理通常基于自由访问控制(dac)模型,其中用户可以定义对他们在系统中拥有的对象的访问权限。在强制访问控制(mac)系统中,访问权限是针对整个系统定义的,并且不能被用户更改。acl、dac或mac模型对于工业应用、如例如在计算机化自动化系统中可能不够充分和灵活。
5.因此,本公开的目的是提供一种用于授权对计算机化系统中的对象的访问的改进方法。
6.根据本公开的一个方面,一种用于向计算机化系统中的实体授权对对象的访问的方法包括以下步骤:提供访问控制列表(acl),所述访问控制列表(acl)针对每个对象指定对计算机化系统的对象的访问权限;将能力要求信息分配给访问控制列表中的至少一个对象;将能力信息分配给计算机化系统的实体中的至少一个实体;请求由实体对对象的访问;根据acl检查请求实体是否具有的访问权限;和仅当分配给请求实体的能力信息与分配给被询问对象的能力要求信息相匹配时,才向请求实体授权对被请求对象的访问。
7.计算机化系统中的术语“实体”被用作请求对系统中特定对象的访问的主体的名称。进一步理解,“匹配”将解释为彼此一致或符合。因此,能力要求信息指定请求实体必须具有什么能力才能访问所请求的对象。
8.计算机化系统可以是包括通信耦合设备的分布式系统。提出的用于授权访问的方法将常规的基于acl的访问控制方法与对分配给主体(即请求实体)的附加的基于能力的能力验证相组合。能力要求信息指示,为了访问所请求的对象,可以由能力信息定义的特定能力是必要的。特别是,在自动化系统或工业网络中,基于能力的附加验证可以容易地实现。特别是,关于安全性相关的访问,可以实现acl与能力检查相组合来提高安全性。
9.在该方法的实施例中,所述至少一个对象是文件、接口、组件、服务和/或操作系统的注册表条目。例如,文件可以根据操作系统依据文件系统来存储。接口可以是网络接口,
或者是可连接到传感器或致动器的输入/输出接口。计算机化系统的组件可以是电源管理单元、看门狗组件或集成实时时钟。在实施例中,通过文件系统中的文件访问来实现对接口的访问。服务可以是允许或实现计算机化系统中某些动作的软件服务。
10.在该方法的实施例中,所述至少一个实体是用户或进程。在操作计算机化系统的方法中,诸如读或写操作之类的进程不仅依据acl来记录,而且具有依据能力信息来分配的它们的能力。这同样适用于指示特定身份的用户或用户id,能力信息被分配给所述用户或用户id。
11.在实施例中,能力要求信息是acl中的数据标志,指示在授权访问之前要检查能力要求。能力要求信息可以是能力要求数据条目(crde)和/或指向能力要求数据条目的指针。
12.例如,数据标志指示除了成功的acl检查之外,还需要在授权对对象的访问之前执行能力检查,使得请求实体可以访问该对象。标志或crde可以依据文件头、文件属性、文件名或文件扩展名来存储。特别是,如果对象是文件系统中的文件,则crde可以显式或隐式地被包括在文件名中。例如,例如self

check.execap的文件扩展名可以指示,只有在证明了特定能力的情况下,才能访问该文件。还可以考虑将crde直接包括在文件头中,例如要存储的文件的前八或十六个字节中。
13.在实施例中,crde可以是文件属性的一部分,该文件属性可以是与相应计算机文件相关联的元数据。常规的操作系统已经提供了文件属性,因此可以添加附加的能力属性。这还包括可以用于存储crde的诸如扩展属性的文件系统特定的字段。
14.在实施例中,crde存储在与acl分离的数据库中。可以设想计算机化系统中的可信硬件模块、安全元件和/或密码保护元件。
15.在该方法的实施例中,能力信息是能力表中的条目,包括实体的标识符和分配的能力数据条目cde。能力表可以存储在能力配置文件中。还可以考虑使用硬件安全性模块或安全性加密狗(dongle)来存储能力表。
16.在实施例中,诸如linux安全性模块的内核级组件被用于存储能力表。例如,如果用户被认为是访问请求实体,则用户名或用户id可以用作实体的标识符。可替代地或附加地,当进程需要访问由实现所提出方法的各方面的相应操作系统管理的某些文件时,进程id可以用作标识符。
17.可以考虑将能力表存储为用户数据库的一部分。
18.在实施例中,cde被分配给每个用户或用户组。crde可以被包括在二进制文件的属性中,如例如包含程序代码的文件或属于程序代码库的文件。属性可以定义访问和执行文件中的程序代码所需的能力数据条目的特性。
19.在一些实施例中,在操作系统下运行的进程是请求实体。然后,进程可以具有分配的能力数据条目,该能力数据条目可以被传送到结果得到的进程(子进程),使得能力可以从一个进程继承到另一个进程。
20.检查或验证能力信息是否与特定进程的能力要求相匹配可以包括对外部凭证的请求,例如从服务器或从专用硬件安全性模块检索附加能力或安全性数据。
21.在实施例中,crde包括用于验证cde的验证数据条目vde,其中cde特别包括作为指示实体身份的数据的函数计算的密码校验和。
22.在实施例中,使用单独的安全元件来执行验证cde。可以设想,实现所提出的方法
的操作系统为用户生成专用的能力存储器区段。这样的专用能力存储器区段可以用作能力白板,用户可以在其中安全地存储他们的能力条目。
23.例如,计算机化系统可以包括工业pc、现场设备和/或根据操作系统操作的控制器设备。当启动计算机化系统时,能力信息可以作为随机变量的函数来存储。因此,每次系统启动时,专用能力存储器区段改变其外观,这提高了安全性。
24.验证cde可以包括身份检查,即如果cde在位序列方面与相应的crde中所需的位序列相同,则cde和crde彼此匹配。例如,位序列可以具有32、64、128、256或512位的长度。所述位可以随机选择,使得实际上不能猜测有效的cde。这提供了高级别的保护。
25.如果cde包括从请求实体的身份数据(例如用户名或用户id)导出的密码校验和,则可以实现有效的访问控制。验证可以通过内核组件或安全元件来执行,如例如trustzone、tee、hsm或cryptocontroller。当请求实体包括用于更新计算机化系统的固件或与计算机化系统的固件相关的进程时,外部验证cde特别有利。
26.在实施例中,cde可能进一步需要与用户交互。例如,可以考虑依据硬件令牌来附加地确认特定于对象的密码或用户标识。
27.在实施例中,cde具有有限的有效性时段。例如,有效性可以限制在一定的时间段内。还可以设想,cde仅可以用于访问对象一定次数。可以设想对与安全性非常相关的访问的访问控制的一次性有效性。还可以设想,cde仅可以在操作系统或设备的某些全局条件下使用,例如,某个usb设备的存在,或者如果外部篡改开关指示设备仍然完好无损的话。
28.在实施例中,cde根据其用途而改变。例如,cde最初可以在引导阶段期间允许特定的重新配置过程。然而,在计算机化系统的常规操作期间,这样的重新配置不再被允许。一次性部署后,该能力被移除。
29.根据本公开的另一方面,公开了一种用于自动化系统的现场设备,包括处理设备和用于存储对象的存储器设备。处理设备被配置为执行根据以上或下文中公开的方面的用于由实体访问对象的方法。例如,现场设备可以包括包含文件系统的存储器设备,并且对象被归档在文件系统中。
30.优选地,现场设备包括用于存储和/或检查能力信息的单独存储器设备或区段。
31.现场设备可以进一步包括用于执行特定安全性功能的安全元件。例如,仅当请求方或对象可以提供匹配能力信息时,才对现场设备的特定硬件特征进行授权。
32.实现所提出的方法具有如下优点:可以容易地实现对硬件组件攻击的鲁棒保护。这是因为acl访问控制和附加能力检查的组合导致了提高的硬件安全性,并且可以被添加到常规操作系统的访问控制机制。
33.例如处理设备的相应实体可以以硬件和/或以软件来实现。如果所述实体以硬件实现,则它可以体现为设备,例如作为计算机或作为处理器,或者作为系统(例如计算机系统)的一部分。如果所述实体以软件实现,则它可以体现为计算机程序产品、功能、例程、程序代码或可执行对象。可以考虑虚拟化设备。
34.根据另外的方面,本公开涉及一种计算机程序产品,包括用于在至少一台计算机或处理设备上运行时执行上述方法的程序代码。
35.诸如计算机程序部件之类的计算机程序产品可以体现为存储卡、usb棒、cd

rom、dvd或可以从网络中的服务器下载的文件。例如,这样的文件可以通过从无线通信网络传输
包括计算机程序产品的文件来提供。
36.参照现场设备描述的方面和特征在细节上作必要修改后适用于授权访问的方法。
37.访问授权方法的另外可能的实现或替代解决方案还包括上面或下面关于实施例描述的特征的组合,本文没有明确提及。本领域技术人员还可以向本发明的最基本形式添加单独或孤立的方面和特征。
38.结合附图考虑,从随后的描述和从属权利要求中,本发明的进一步实施例、特征和优点将变得清楚,其中:图1示出了包括用于授权对计算机化系统中的对象的访问的方法的实施例中所涉及的方法步骤的过程流程;图2示出了用于现场设备的实施例的示意图;图3示出了包括用于授权对计算机化系统中的对象的访问的方法的另外实施例中涉及的方法步骤的过程流程;和图4示出了针对文件系统的实施例的示意图。
39.在各图中,除非另有指示,否则相同的附图标记指定相同或功能等同的元件。
40.图1示出了包括用于授权对计算机化系统中的对象的访问的方法的实施例中所涉及的方法步骤的过程流程。计算机化系统包括例如文件形式的对象。对象将由实体(诸如用户)访问。如果用户想要访问某个文件,则一方面,授权或拒绝对该文件的访问的操作系统执行基于acl的检查。附加地,用户必须提供一定的访问文件的能力。acl定义了必须提供哪种能力。仅在满足这两个要求的情况下,即acl合规性与访问文件所需能力一致和相匹配的能力,用户才可以访问文件和相应的数据。
41.因此,在第一步骤s1中,为对象,即为计算机化系统中的文件提供访问控制列表。例如,图4示出了包括目录和文件的文件系统10。图4示出了目录bin、config、log和dev。文件系统10由计算机化系统的操作系统来组织。acl条目的示例可以在bin目录11中看到。例如,指定根据dac属性dr

xr

xr

x授权访问。
42.除了acl之外,在步骤s2中,能力要求信息被分配给文件系统的文件。例如,能力要求信息是依据属性添加到某些文件的标志,其指示为了访问文件,附加的能力检查是必要的。再次参考图4,在bin目录11中,具有acl条目

r

xr

x

的config(配置)文件携带附加属性“x

capability”。“x

capability”可以被认为是指示如下的能力信息:为了访问bin目录11中的config文件,用户需要具有匹配的能力信息。
43.因此,向每个用户分配能力信息。如果用户请求访问bin目录11中的config文件,则步骤s3需要检查步骤,以根据acl确定请求用户是否具有访问权限,并且附加地必须具有分配给用户的能力信息,该能力信息与分配给所请求文件的能力要求信息相匹配。如果不是这样,则在步骤s4中拒绝访问。
44.如果请求用户具有所分配的匹配或兼容的能力信息,则他或她可以在步骤s5中访问该文件。
45.图2示出了现场设备1的实施例的示意图,该现场设备1可以根据用于授权或拒绝对对象的访问的方法来使用和操作。图3示出了包括方法步骤的处理流程,所述方法步骤在用于授权对这样的对象、特别是文件的访问的方法的另外实施例中涉及。
46.图2中所示的现场设备1包括处理设备2,如例如中央处理单元(cpu)。存在存储器
设备3和4,其中例如3是随机存取存储器(ram),并且4是闪速存储器。现场设备1具有网络接口5和输入/输出接口,以与例如自动化系统中的传感器或致动器7耦合。此外,现场设备1包括被实现为硬件安全性模块(hsm)的安全性元件(se),该硬件安全性模块(hsm)可以是片上系统的安全元件。
47.在另外的实施例中,现场设备1可以包括可信执行环境、硬件密码引擎、安全防护扩展sgx或集成可信平台模块tpm。
48.图2进一步示出了用户9,作为试图访问例如文件和/或发起控制传感器7的过程的实体的示例。
49.闪速存储器4例如存储操作系统,如例如linux、bsd或windows。ram存储器4还包括文件系统,如例如图4中所示。在实施例中,在现场设备1的系统启动时,文件系统10被复制到ram存储器3中。
50.操作系统被实现为对文件实行基于acl的访问控制。相应acl定义了操作系统/现场设备1的用户9可以访问文件系统10的特定文件。例如,acl定义特定类型的用户,例如“web服务”、“控制”、“config”或“诊断”用户。例如,acl定义仅控制用户可以访问i/o设备6。对于其他用户,对i/o接口设备6的访问可能被阻止。
51.再次参考图4中所示的文件系统10,示出了具有目录bin 11、config 12、log 13和dev 14的树结构,其包括几个另外的子目录或文件。对于每个文件,根据已知技术分配acl。acl依据用户或用户组的读取(r)、写入(w)和执行权限(x)来编写。文件可以具有另外的属性,如例如指定目录的“d”。例如,根据acl条目drwxr

xr

x,目录log 13可用于访问。
52.图3现在示出了用于访问文件系统10中的文件的处理流程。该过程从步骤s0开始。接下来,在步骤sll中,用户9请求对特定文件的访问。例如,用户9想要访问bin目录11中的文件/bin/config。
53.在步骤s12中,首先根据相应的acl检查用户是否具有访问权限。如果不是这种情况,则在步骤s13中不允许访问,使得过程分别在步骤s18和s19中以拒绝访问停止。
54.bin目录11中的config文件还具有依据标志和/或能力要求数据的能力要求信息。config文件中的能力要求数据条目为x

capability:service。因此,仅当请求用户具有服务能力时,才可以访问config文件。根据图3中的处理流程,首先,操作系统在步骤s14中检查是否存在指示能力是必要的文件属性。对于配置文件bin目录11,就是这种情况。因此,在步骤s15中检查和验证该能力。
55.如果用户具有依据相应能力数据条目cde的相关联的能力信息,则他或她可以操纵config文件,并且在步骤s17中授权访问。
56.如果访问请求指向不具有能力属性的文件,如例如bin目录11中的控制文件,则在步骤s14中,没有必要进行能力属性检查,从而在步骤s17中立即授权访问。
57.以模拟方式,例如可执行文件的其他文件可以具有指定的能力要求。例如,仅当用户具有secrun能力时,他或她才可以运行或访问bin目录11中的安全性自测应用sectest(安全测试)。我们注意到,sectest acl条目拒绝对sectest程序进行任何改变。
58.结合拒绝或授权对现场设备1的io模块6的访问,dev目录14需要w

capability:iostartup。例如,“iostartup”暗示着进程ioconfig仅可以在设备1的引导过程期间执行。例如,iostartup能力仅可以使用一次,并在第一次系统启动后过期。这防止了在现场设备1
的操作期间,出现对i/o模块6的操纵。
59.例如,安全性元件8可以通过计算密码校验和来执行对分配给请求用户的能力的验证。如果安全性元件8验证例如用户id的校验和是正确的,则i/o接口6的配置以及由此对传感器和执行器设备7的访问被允许。这特别是因为配置文件ioconf仅可以根据acl进行读和写。
60.分配给用户或进程的能力可以例如通过特定的操作系统内核被硬编码。这样的硬编码能力或能力数据条目相应地具有它们不能被用户改变的优点。然而,在其他实施例中,依据包括用户标识符和所分配的能力数据条目的能力表的能力列表可以依据配置文件来存储。例如,这可以依据图4中的config目录12来实现。
61.一般来说,针对计算机化系统中的现场设备,提高了对抗未授权访问的完整性和鲁棒性。这是如下优点:诸如linux、unix、bsd或windows的常规的操作系统可以通过对访问控制文件或进程的能力检查来扩展。特别地,特定于硬件的功能可以通过特定的能力要求来保护。因此,提高了计算机化系统的总体安全性。
62.尽管已经根据优选实施例描述了本发明,但是对于本领域的技术人员而言清楚的是,在所有实施例中的修改都是可能的。
63.参考标号:1现场设备2处理设备3ram存储器设备4闪速存储器设备5网络接口6输入/输出接口7传感器/执行器设备8安全性元件9用户10文件系统11

14目录s0启动s1提供acls2分配能力s3检查acl一致性s4拒绝访问s5在能力检查成功时授权访问s11文件访问请求s12检查文件acls13允许访问s14文件能力属性s15检查能力s16允许访问
s17授权访问s18拒绝访问s19结束。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献