CN113767609B - 控制对边缘设备的资源的访问 - Google Patents

控制对边缘设备的资源的访问 Download PDF

Info

Publication number
CN113767609B
CN113767609B CN202080033121.XA CN202080033121A CN113767609B CN 113767609 B CN113767609 B CN 113767609B CN 202080033121 A CN202080033121 A CN 202080033121A CN 113767609 B CN113767609 B CN 113767609B
Authority
CN
China
Prior art keywords
computing device
user
edge computing
requested
resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202080033121.XA
Other languages
English (en)
Other versions
CN113767609A (zh
Inventor
K·T·达穆
D·M·桑特里
P·G·米勒
S·托卡拉
T·S·普拉克里亚
B·S·帕内萨
L·B·小沙利文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN113767609A publication Critical patent/CN113767609A/zh
Application granted granted Critical
Publication of CN113767609B publication Critical patent/CN113767609B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/44Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/468Specific access rights for resources, e.g. using capability register
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

用于控制边缘计算设备的系统和方法。该方法包括,接收请求对边缘计算设备的资源的访问的用户输入,通过下列步骤来确定用户是否有权访问资源:基于所确定的用户身份来制定请求声明的声明请求,将该声明请求发送到由边缘计算设备的处理器执行的本地声明提供者代理,基于声明请求处理因素来确定本地声明提供者代理是否能够生成包括所请求的声明的令牌,如果是,则生成具有所请求的声明的令牌;如果否,则可以向云服务侧声明提供者发送请求以接收令牌。该方法包括基于预定策略来授权访问资源,该预定策略指定在所请求的声明中预定义的资源参数的存在就足够了。

Description

控制对边缘设备的资源的访问
背景技术
最近,无线连接性和计算能力已经在越来越小的计算设备中被提供,使得这些计算设备能够在被称为物联网(IoT)的技术趋势中通过互联网与云服务进行通信。这种计算设备已经被称为边缘计算设备,因为它们被提供在计算网络的逻辑边缘处,例如,被提供在终端用户附近的设备内或设施中,而不是在这种系统的逻辑中心处被提供在数据中心或提供在形成互联网并将数据中心连接到边缘计算设备本身的中间网络硬件中。这种趋势极大地增加了连接设备的数量以及与之交互的人、服务和对象之间互连复杂性。所有这些实体的大规模性质为在软件系统内有效管理和实施授权关联创造了复杂的场景,该软件系统是在包括边缘计算设备的环境中实现的。这些授权关联可以在软件系统内逻辑定义的人、服务和对象之间被定义,并且可以在与软件系统交互的人请求动作时被使用,以使软件系统的访问控制系统能够基于这些关联来许可或拒绝涉及用户、资源和/或操作的所请求的动作。
发明内容
提供了一种用于控制边缘计算设备的方法。该方法包括,在边缘计算设备处,标识边缘计算设备处的用户或系统进程的认证因素,基于认证因素来确定用户或系统进程的身份,以及从用户或系统进程接收输入,该输入请求对边缘计算设备的资源的访问或配置。该方法还包括通过以下方式来确定用户或系统进程是否有权访问资源或配置资源:基于所确定的用户或系统进程的身份来制定请求声明的声明请求,将声明请求发送到由边缘计算设备的处理器执行的本地声明提供者代理,基于一个或多个声明请求处理因素来确定本地声明提供者代理能够生成包括所请求的声明的令牌,并且作为响应,生成具有所请求的声明的令牌。该方法还包括在访问控制程序处接收包括所请求的声明的令牌,检查声明以标识预定义的资源参数,以及基于预定策略来授权对资源的访问或配置,预定策略指定在所请求的声明中预定义的资源参数的存在足以允许对资源的访问。
本发明内容被提供来以简化的形式引入在以下详细描述中进一步描述的概念的选择。本概述不旨在确定要求保护的主题的关键特征或必要特征,也不旨在被用来限制要求保护的主题的范围。此外,要求保护的主题不限于解决在本公开的任何部分中指出的任何或所有缺点的实现。
附图说明
图1图示了根据本公开示例实施例的与边缘计算设备一起使用的访问控制系统。
图2A图示了根据本公开示例实施例的用于音乐流服务的声明层次结构。
图2B图示了根据本公开示例实施例的由标签引用的声明集。
图3A图示了根据本公开示例实施例的与交通工具的边缘计算设备一起使用的访问控制系统。
图3B和图3C图示了根据本公开示例实施例的与交通工具的边缘计算设备或云服务器进行通信的用户计算设备的用户界面。
图3D图示了根据本公开示例实施例的交通工具的边缘计算设备的边缘设备用户界面。
图4是根据本公开示例实施例的用于执行对边缘计算设备的访问控制的方法的流程图。
图5是根据本公开示例实施例的用于执行对边缘计算设备的访问控制的方法的流程图。
图6示出了本公开的示例计算环境。
具体实施方式
本发明涉及基于软件系统中的资源访问或资源配置的授权的声明。描述了一种方法、系统、计算机程序产品和数据结构,它们允许处理高效、细粒度的授权数据和决策策略,以用于在包括基于云的服务和IoT边缘设备处理的多个级别进行访问控制。在人、所提供的服务/收集操作和对象之间定义的授权关联被组织为对个人(或可以表示人或自动化的主体身份)、服务和对象记录(例如交通工具)及其交叉关联的声明。具体的控制被提供以许可将声明指导至具体级别以用于决策和实施。通过正确组合这些声明并针对访问策略表达式进行评估,可以做出有效的授权决策。
图1图示了包括访问控制系统10的分布式计算系统,该系统利用基于声明的授权来控制对软件资源的访问或控制对软件资源的配置,其中多级声明生成分布在云服务器40和边缘计算设备34之间。在下文中,对资源访问的控制和对资源访问的授权在本公开中也将分别被理解为指的是对资源配置的控制和对资源配置的授权。云服务器40包括基于云的场景特定程序42和具有本地声明提供者代理26的边缘计算设备34。云服务41可以在云服务器40上执行。在一个示例中,基于云的场景特定程序42是在
Figure BDA0003334133640000031
物联网中心环境中执行的
Figure BDA0003334133640000032
互联交通工具平台(MCVP)的服务器。处理器是特定于场景的,因为它执行专门编程以在诸如联网交通工具场景之类的特定场景中控制边缘计算设备的软件。还设想了无数的其他场景,诸如工业机器人、家庭自动化、车队物流等。
由用户11操作的用户计算设备12向云服务器40发送输入请求18。针对云级别的输入请求18由场景特定程序42接收和处理,场景特定程序42验证输入请求18的请求者的身份并且核实输入请求18的正确格式。同样,由用户11操作的边缘计算设备34的边缘设备用户界面13发送设备输入请求16a。边缘设备用户界面13可以由用户11经由用户进程14b进行操作,用户进程14b是由用户11在边缘计算设备34的操作系统(OS)14上执行的应用程序生成的。针对设备等级的设备输入请求16a在边缘计算设备34处被接收和处理,边缘计算设备34确定设备输入请求16a的请求者的身份并验证请求16a的正确格式。设备输入请求16a可以包含来自用户(请求者)11的请求访问边缘计算设备34的资源的用户输入,以及用户认证因素,诸如生物特征参数(例如,用户11的指纹、面部特征、眼睛扫描或红外签名)、从密钥FOB、智能手机、智能手表或其他代理设备接收的信号、经由图形、硬按钮、语音等与边缘计算设备34的用户界面或使用诸如智能电话之类的用户计算设备12经由通信接口(例如,蓝牙连接)来与边缘计算设备34的用户交互(例如,其可以包括登录ID和PIN或密码的输入)。
在边缘计算设备34处,在设备输入请求16a中标识用户的用户认证因素,基于设备输入请求16a中的用户认证因素来确定用户身份,并且在边缘设备用户接口13处从用户11接收请求访问边缘计算设备34的资源的用户输入。边缘计算设备34可以具有通信接口15以促进用户11、用户计算设备12、以及边缘计算设备34之间的通信。例如,通信接口15可以是蓝牙接收器或WiFi接入点。
边缘计算设备34通过以下步骤来确定用户是否有权访问资源:基于所确定的用户身份来制定请求声明的声明请求22a,将声明请求22a发送到由边缘计算设备34的处理器执行的本地声明提供者代理26,以及基于一个或多个声明请求处理因素来确定本地声明提供者代理26可以生成包括所请求声明的令牌,并且作为响应,生成具有所请求声明的令牌24a。
边缘计算设备34可以将声明请求22a发送到由边缘计算设备34的处理器执行的本地声明提供者代理26,并且基于一个或多个声明请求处理因素来确定本地声明提供者是否代理26可以生成包括所请求声明的令牌。当确定本地声明提供者代理26可以生成令牌时,则本地声明提供者代理26生成具有所请求声明24a的令牌。当确定本地声明提供者代理26无法生成包括所请求声明的令牌时,则基于该确定,本地声明提供者代理26通过计算网络向由云服务器40执行的云服务侧声明提供者44发送请求28a并且作为响应从云服务侧声明提供者44接收包括所请求声明30a的令牌。访问控制程序27接收包括所请求声明24a的令牌,检查声明24a以标识预定义的资源参数,并且基于预定策略来授权访问资源,预定策略指定在所请求声明24a中存在预定义的资源参数足以允许访问资源。
作为处理的一部分,场景特定程序42和/或本地声明提供者代理26解释分别需要哪些用户、资源和/或操作来完全处理所接收的输入请求18或设备输入请求16a,并且连同被确定为完全处理输入请求18或设备输入请求16a所需的所请求的用户、资源和/或操作一起,基于请求者的确定身份向声明提供者44发送声明请求。声明提供者44可以参考外部数据库64来处理请求48或存储请求48中包含的数据。声明提供者44确定用户、资源和与用户和/或资源相关联的操作之间的关系。然后,声明提供者44基于请求48生成一个或多个声明,并且将该一个或多个声明在令牌中输出到场景特定程序42和/或本地声明提供者代理26。具有由声明提供者44输出的结果声明的令牌可以具有声明名称,声明名称的格式指定了要使用的声明的目标级别。
在本公开中,术语“身份”将被用来表示描述安全系统中的用户或某个其他实体的属性集。在输入请求18或设备输入请求16a中确定的身份可以是请求者的主体身份或来自诸如在IoT应用情况下的连接设备之类的对象的标识信息。例如,请求者的主体身份可以标识执行自动化过程的人、组织或实体。
术语“声明”将被用来描述声明提供者44做出的关于用户、资源和/或操作的陈述。该陈述指示指派给用户、资源、用户和资源、用户和操作、或资源和操作的授权。对用户和资源的声明可以授权用户使用资源,对用户和操作的声明可以授权用户使用操作,对特定资源和操作的声明可以授权将被用于特定资源的操作。资源和所请求的操作与在边缘计算设备34上执行的应用程序相关联,并且在每个应用程序20a和20b的安全环境内,基于声明,请求用户11对所请求操作的资源访问由边缘计算设备34的操作系统的访问控制程序27控制。应用程序20a和20b本身可以与经由边缘计算设备34递送给用户11的服务供应相关联,并且服务供应的各方面可以经由场景特定程序来控制,诸如实现联网交通工具平台的程序,如图所描绘。
每个声明可以包括对应于被指派给用户、交通工具、用户和交通工具、用户和服务、或交通工具和服务的授权的密钥和值。密钥和值可以指示多个授权级别之一。例如,声明提供者44可以将包含声明50的令牌返回给场景特定程序42。每个令牌可以具有声明路径和一个或多个声明。声明路径是一种以预定格式进行格式化以描述声明的唯一代码。作为一个示例,格式化的声明名称可以被编码为:“//device[:deviceName[:module]]/key”,其中“//”指示使用目标级别声明。在此示例中,“device”指示IoT边缘设备处理级别,方括号指示可选内容,其中“:deviceName”是被称为“deviceName”的具体设备,“:module”是目标级别内的可选指定模块,而“key”是声明键名称。声明键名称可以包括“/”字符以指示声明层次结构,其中层次结构中的多个声明为声明提供本地化上下文。示例的声明层次结构可以是“/service/option1”和“/service/option2”,其中option1和option2在“service”的上下文中。
参考图2A,声明层次结构可以扩展多个级别。例如,当音乐流服务提供多个服务(例如service1、service2)时,这些服务被提供给多个用户(例如,username1、username2),其中每个用户可以配置多个可能的服务级别之一(例如,ServiceLevel1、ServiceLevel2),一个示例的声明层次结构可以是“//music/streaming/service1/username1/ServiceLevel1”。声明可以仅用指定的“关键字”来编码,以指示该声明适用于整个处理并且可能与或可能不与任何特定级别相关联。
边缘计算设备34可能需要针对边缘计算设备34内的各种操作以及在交通工具内运行的模块的声明集。参考图2B,声明集路径可以被分组在一起作为声明集并由标签引用。例如,claimpath1和claimpath2可以通过Label1分组在一起;而claimpath4到claimpath7可以通过Label2分组在一起。声明集中指定的所有标签和声明路径的集被称为清单。必须为交通工具提供该清单,因为只有存在于清单中的声明路径才将被允许被传输到交通工具的边缘计算设备34。
返回参考图1,基于预定策略,本地声明提供者代理26可以检查本地设备输入请求16a中的声明以标识预定义的资源参数,并且对本地设备输入请求16a做出决定并且执行访问控制实施,基于预定策略来授权或拒绝访问在本地设备输入请求16a中包含的所请求的用户、资源和/或操作。响应于接收和检查本地设备输入请求16a中的声明,边缘计算设备34的应用20a可以执行设备级动作17a。同样,响应于接收和检查本地设备输入请求16b中的声明,边缘计算设备34的应用20b可以执行设备级动作17b。场景特定程序42和本地声明提供者代理26可以相互通信以检查本地设备输入请求16a中的这些声明,以基于预定策略来标识预定义的资源参数并授权访问资源,预定策略指定在请求声明中存在预定义的资源参数足以允许访问资源。本地化处理不限于仅由本地声明提供者代理26进行的设备级处理:基于处理操作的实现和应用于处理操作的预定策略,输入请求18和设备输入请求16a可以在场景特定程序42处以云级或者在本地声明提供者代理26处以设备级被处理。
同样地,基于预定策略,场景特定程序42可以检查输入请求18中的声明以标识预定义的资源参数,以对输入请求18执行访问控制实施。换言之,在实施访问控制时,响应于接收和检查输入请求18中的声明,如果由声明提供者返回的声明集不满足策略,则场景特定程序42可以执行动作/操作19或拒绝输入请求18。如果声明的目标级是在设备级,则该声明通过场景特定程序42被传递到本地声明提供者代理26。
要实施的预定策略可以是授权策略,其被认为是场景特定程序42和本地声明提供者代理26的一部分,但可以可替代地由其他外部手段或过程来提供。另外,从声明提供者44返回的声明可以被用来提供处理的细粒度控制,场景特定程序42或本地声明提供者代理26取决于实现和声明中包含的目标级对输入请求18和设备输入请求16a做出该处理。
参考基于云的声明提供者44,提供者处理器程序46从场景特定程序42接收给定的声明请求48,然后参考存在于数据库中的一系列记录以编译并发送声明集50(一个或多个声明)到场景特定程序42。提供者处理器程序46使用策略集来确定用户(包含在用户记录52中的信息)、资源(包含在对象记录中的信息54)和操作(服务或收集操作)(包含在实体记录56中的信息)之间的关联。记录包括关联信息(记录,描述了用户、服务和对象之间的关联,或用户之间的关联、作为服务的操作、和作为对象的资源)、声明、配置文件、远程信息处理或模型信息,但不仅限于此信息集。可以存在附加的关联记录以提供关联的进一步细化,诸如用于与具体对象交互的人(由交叉关联用户/对象记录60表示)、人与服务的具体细节(由交叉关联用户/实体记录58表示),或交叉关联对象/实体记录62。该关联可以描述用户和服务、服务和对象、用户和对象的组合,和/或用户和服务和对象的组合。这一系列记录可以描述关联的层次结构关系。这三个表示性的交叉附加关联记录只是许多可能的交叉关联记录的示例,并且本发明不限制由提供者处理器程序46使用的其他类型关联记录的使用。这些记录可以从诸如提供信息的数据库或服务之类的外部数据源64创建,或者可能是声明提供者44中的数据库内的相应记录的权威保存。
记录内的数据使用和管理可以被其他请求服务访问以进行一系列操作。传入请求48可以包含范围界定信息以限制被返回给场景特定程序42的关联声明50的范围。此外,可以在声明50中返回日期范围,日期范围限制了声明50被认为有效的时间范围,并且如果当前时间超出此日期范围,则需要另一个请求。换言之,声明中的至少一个可以具有在预定有限时间段内的有效范围或到期时间和日期。如果没有指示人与对象之间的关联的记录,则可以返回空响应50或错误。任何声明都可以包含格式化的声明名称。
作为声明提供者44内的记录组织的示例,用于声明记录的格式化记录标识符(RecordID)可以被编码为:“Claim|VehicleID|UserID|ServiceID”,其中“|”表示声明记录中的声明的级别。每条记录可以包括一个或多个声明。在本示例中,“VehicleID”指示交通工具,“UserID”指示用户,而“ServiceID”指示服务。可以理解,如果声明是指派给用户(“Claim||UserID|”)、交通工具(“Claim|VehicleID||”)、用户和交通工具(“Claim|VehicleID|UserID|”)、用户和服务(“Claim||UserID|ServiceID”)或交通工具和服务(“Claim|VehicleID||ServiceID”)的授权,则RecordID中只可能出现一个或两个级别。因此,用于声明记录的RecordID被格式化以描述用户、服务和对象之间的关联。
参考图3A-图3D,为汽车工业提供了说明性示例。该示例不限制本发明的操作或效用,而是被提供以提供对本发明的更深入的了解。支持IoT的联网交通工具35归用户11所有,并且用户11订阅了多个联网服务。对于这个具体的示例,交通工具35是对象实例,而订阅的服务是实体实例之一。参考图1和图3A,在由系统10进行处理中,输入请求18由名为“John”的用户11的计算设备12发送到云服务器40,以利用ID名称为“car123”的交通工具35上的服务。例如,该服务可以是卫星无线电服务或汽车租赁。输入请求18可以是对访问由请求用户11请求的资源的操作的访问请求,例如,诸如点火锁、发动机控制设备、防盗设备或车门。参考图3B,用户可以与请求解锁交通工具35服务的计算设备12的图形用户界面进行交互。云服务器40的场景特定程序42接收输入请求18,解释哪些用户、资源和/或操作需要对所接收的输入请求18进行完全处理,并且基于作为请求用户的“John”的确定身份,将请求48发送到被确定需要对输入请求18进行完全处理的声明提供者44。
参考图3D,用户11可以与安装在交通工具35上的边缘计算设备34中内置的边缘设备用户界面13交互。在此实施例中,设备输入请求16a由名为“John”的用户11操作的边缘设备用户界面13发送,以使用具有ID名“car123”的交通工具上的服务。在交通工具的边缘计算设备34上执行的应用20a接收设备输入请求16a。应用20a可以是卫星无线电应用。响应于接收到设备输入请求16a,可以基于设备输入请求16a来制定对无线电声明的请求22a,并且将其发送到边缘计算设备34上的本地声明提供者代理26。应用20a可以被指派唯一标识符并且被放置在安全边界21a内以将应用20a资源与系统10的其余部分并且与应用20b隔离。
同样,另一个设备输入请求16b可以由用户11所操作的边缘设备用户界面13发送,以利用具有ID名“car123”的交通工具上的地图服务。在交通工具的边缘计算设备34上执行的地图应用20b接收设备输入请求16b。响应于接收到设备输入请求16b,可以基于设备输入请求16b来制定用于对声明绘制地图的请求22b,并将请求22b发送到边缘计算设备34上的本地声明提供者代理26。可以为应用20b指派唯一标识符并且将其放置在安全边界21b内,以将应用20b资源与系统10的其余部分和应用20a隔离。
设备输入请求16a和16b可以包含来自用户(请求者)11的请求访问边缘计算设备34资源的用户输入,以及用户认证因素,诸如数字密钥、证书、生物特征签名、密钥FOB的操作、与用户显示设备的交互、用户的红外签名或用户登录名和密码。确定请求者的身份可以涉及应用20a和应用20b与访问控制程序27通信以在边缘计算设备34处标识用户11的用户认证因素,以及基于用户认证因素来确定用户(请求者)11的身份。在确定用户(请求者)的身份后,应用20a和应用20b被授权基于所确定的用户身份为其各自应用的声明制定请求22a和22b,并将声明请求22a和22b发送到本地声明提供者代理26。为了确定用户是否有权访问所请求的资源或获得在设备输入请求16a和16b中包含的配置设置,请求22a和22b被发送到由边缘计算设备的处理器34执行的本地声明提供者代理26。
响应于接收对无线电声明的请求22a,本地声明提供者代理26确定用户是否有权访问在设备输入请求16a中包含的所请求资源。基于一个或多个声明请求处理因素,本地声明提供者代理26确定它可以生成包括所请求声明的令牌。响应于本地声明提供者代理26确定它可以生成包括所请求声明的令牌,生成包括所请求声明24a和/或24b的令牌。例如,在接收用于地图声明的请求22b并基于所确定的用户身份制定了声明请求28b之后,当一个或多个声明请求处理因素包括边缘计算设备34的缓存存储器中存在未到期声明时,然后本地声明提供者代理26可以通过从边缘计算设备34的缓存存储器中取回所请求的未过期声明并将其包含在令牌中来确定它可以生成令牌。
如果本地声明提供者代理26确定由于数据未包含在本地声明提供者代理26内或因为数据已过期而无法生成令牌,则本地声明提供者代理26可以基于所确定的用户身份来制定声明请求28a。
因此,响应于确定一个或多个声明请求处理因素,本地声明提供者代理26生成包含所请求声明的令牌。声明请求处理因素包括在边缘计算设备34的存储器中仍然存在未到期的请求声明,但是也可以包括授权本地声明提供者代理26生成包括请求声明的某些类别令牌的预定规则。例如,预定规则可以授权本地声明提供者代理26生成包括授权用户驾驶交通工具的声明的令牌。镜像基于云的声明提供者44,本地声明提供者代理26可以查找和接收对象记录、实体记录、用户记录、对象/实体记录、用户/对象记录和作为本地存储记录29被本地存储在边缘计算设备34内的大容量存储器中的用户/实体记录。例如,当名为“John”的用户11发送驾驶具有ID名“car123”的交通工具的输入请求16a时,应用20a是汽车访问应用,并且用户/实体记录揭示用户被注册以驾驶交通工具“car123”,然后本地声明提供者代理26编译包含具有RecordID“Claim||John|”的声明的令牌,其中该声明具有陈述//Service的键,并且该声明具有陈述包含访问汽车点火装置的声明的[“car key”]的值,并且本地声明提供者代理26将包含声明24a的令牌发送到应用20a,然后应用20a将令牌发送到访问控制程序27。访问控制程序27检查声明24a以标识预定义的资源参数,并且当访问控制程序27基于预定策略确定在声明24a中存在预定义的资源参数足以允许访问汽车点火装置时,执行准许用户11访问汽车点火装置的动作17a。
当本地声明提供者代理26确定它不能生成包括所请求声明的令牌时,它可以通过计算网络向由云服务器40执行的云服务侧声明提供者44发送请求36,并且作为响应从云服务侧声明提供者接收包括所请求声明30a的令牌。为了获得包括所请求声明30a的令牌,本地声明提供者代理26可以将声明请求28a发送到设备到云通信代理32以从云服务器40取回声明。响应于从云接收到对声明的请求28a,设备到云通信代理32可以向云服务器40的场景特定程序42发送对声明的请求36。场景特定程序42可以从边缘计算设备34接收请求36,解释需要哪些用户、资源和/或操作对请求36进行完全处理,并且连同被确定需要对请求36进行完全处理的用户、资源和/或操作一起,基于所确定的“John”的身份将请求48发送到声明提供者44。
设备到云通信代理32可以经由专门的设备到云过程向场景特定程序42发送请求36。特别格式化的请求36可以请求场景特定程序42将来自交通工具清单的一个或多个声明集发送到交通工具的边缘计算设备34。请求36可以具有指示请求36是用于声明的报头,或者该报告可以指示请求36是用于声明重置。请求36的主体可以包含与清单中指定的声明集相对应的标签列表。
作为响应,声明提供者44可以从用户记录52和对象记录54中包含的信息中查找针对用户的用户记录52、针对交通工具的对象记录54、以及实体记录56中针对订阅服务的记录范围。在某些实施例中,如果某些记录被存储在外部数据库64中,则可以向外部数据库64发送对外部数据的请求68,并且作为响应,提供者处理器程序46可以从外部数据库64接收外部记录66。如果用户/实体记录58揭示用户被注册使用卫星无线电服务,则提供者处理器程序46可以编译包含具有RecordID“Claim||John|”的声明的令牌,其中该声明具有陈述包含对卫星无线电服务的声明的[“satellite radio”]的值,并将包含声明50的令牌发送到场景特定程序42。此声明授权用户“约翰”使用卫星无线电服务。如果对象记录54揭示具有ID名“car123”的交通工具已注册使用卫星无线电服务,则声明提供者44可以编译具有RecordID“Claim|car123||”的令牌,其中该声明具有陈述//Service的键,并且该声明具有陈述包含对卫星无线电服务的声明的[“satellite radio”]的值,并且将包含声明50的令牌发送到场景特定程序42。该声明授权交通工具“car123”使用卫星无线电服务。应当理解,声明提供者44中的记录可以经由安全的在线门户创建,例如,这允许用户注册其自己和其他人以使用具体的交通工具。
如果用户/对象记录60揭示了交通工具“car123”和注册使用卫星无线电服务的“John”之间的关联,则提供者处理器程序46可以编译具有RecordID“Claim|car123|John|”的令牌,其中该声明具有陈述//Service的键,并且该声明具有陈述包含对卫星无线电服务的声明的[“satellite radio”]的值,并将包含声明50的令牌发送到场景特定程序42。该声明授权用户“John”在交通工具“car123”中使用卫星无线电服务。
声明不仅可以授权具体服务,还可以授权诸如地理围栏之类的对交通工具的限制,其将交通工具的移动限制到预定的地理区域。例如,如果对象记录54揭示具有ID名“car123”的交通工具被限制在城市A内运行,则声明提供者44可以编译具有声明的令牌,该令牌会被存储在具有RecordID“Claim|car123||”的记录中,其中该声明具有陈述//Geofence/LimitArea的键,并且该声明具有陈述包含限制交通工具移动到城市A的声明的[“City A”]的值,并且将包含声明50的令牌发送到场景特定程序42。
响应于从声明提供者44接收声明50,场景特定程序42可以经由专门的云到设备过程将声明发送到设备到云通信代理32。包含声明50的令牌可以具有指示该令牌包含声明的报头,或者该令牌可以具有指示声明将被刷新或重置为原始默认设置的报头。令牌的主体可以包含所请求的标签和交通工具清单中指定的相应声明。
响应于在令牌中接收声明38,边缘计算设备34的设备到云通信代理32可以将声明30a和30b发送到本地声明提供者代理26。如果声明是由地图应用20b请求的,则本地声明提供者代理26可以将地图声明24b发送到应用20b。如果声明是由卫星无线电应用20a请求的,则本地声明提供者代理26可以将无线电声明24a发送到应用20a,然后应用20a将带有无线电声明24a的令牌发送到访问控制程序27。访问控制程序27接收包括所请求声明24a的令牌,然后检查声明24a以标识预定义的资源参数,并且基于预定策略,通过执行动作17a、授权或拒绝访问在本地设备输入请求16a中包含的请求的用户、资源和/或操作,做出决定并执行对设备输入请求16a的访问控制实施。参考图3C,可以在用户计算设备12的用户界面12a或交通工具35的边缘计算设备34的边缘设备用户界面13上指示访问的授权或拒绝。换言之,访问控制程序27检查声明24a以标识预定义的资源参数,并且基于指定在声明中存在预定义的资源参数足以允许访问资源的预定策略来授权访问资源。例如,如果地图声明24b被检查,则访问控制程序27可以授权或拒绝对所请求地图或地图应用20b的请求特征进行访问。例如,如果无线电声明24a被检查,则访问控制程序27可以授权或拒绝访问所请求的无线电台或卫星无线电应用20a的请求特征。对声明24a和24b的检查可能涉及确定在声明中指示的授权级别。
尽管在此示例中,场景特定程序42被描述为检查声明50并响应于检查而执行动作19,并且应用20a被描述为检查声明24a并响应于检查而执行动作17a,然而应当理解,取决于实现,可以将声明检查指派给场景特定程序42、应用20a或本地声明提供者代理26。替代于边缘计算设备34的边缘设备用户接口13来发送设备输入请求16a,用户计算设备12的用户接口12a可以经由通信接口15来发送设备输入请求16a。例如,如果在边缘计算设备34中存在多个应用20a和20b,则预定声明的检查和处理可以限于第一应用20a,而另一个预定声明的检查和处理可以限于第二应用20b,以使在第一应用20a和第二应用20b中处理的信息彼此不共享,因为安全边界21a和21b将应用彼此隔离并与系统10的其余部分隔离。
进一步,作为对用户11操作边缘设备用户界面13发送设备输入请求16a的替代,用户11操作用户计算设备12向云服务器40发送输入请求18,或者用户11操作用户计算设备12经由通信接口15与边缘计算设备34通信以发送设备输入请求16a的替代,OS 14的系统进程14a可以控制边缘计算设备34发送设备输入请求16a。响应于接收和检查本地设备输入请求16a中的声明,边缘计算设备34的应用20a可以在OS 14的系统进程14a处执行设备级动作17a。在该替代实施例中,系统进程14a指的是多线程OS 14或OS组件中的“线程”或进程。因此,基于声明的对软件系统中的资源访问或资源配置的授权不仅可以由用户进程控制,还可以由系统进程控制。
图4图示了根据本公开实施例的用于执行访问控制的方法600的流程图。方法600的以下描述是参考在上面描述并在图1和图3A到图3D中所示的软件和硬件组件来提供的。应当理解,方法600也可以使用其他合适的硬件和软件组件在其他上下文中执行。
参考图4,在602处,方法600可以包括边缘计算设备接收,其通过用户请求访问或配置边缘计算设备的资源来接收输入请求。在604处,方法600可以包括基于在输入请求中标识的用户认证因素来确定请求者的身份。在606处,方法600可以包括制定声明请求。在608处,方法600可以包括在本地声明提供者处确定用户、资源和操作之间的关联。在610处,方法600可以包括生成包括所请求声明的令牌。在612处,方法600可以包括在访问控制程序处检查声明以标识预定义的资源参数。在614处,方法600可以包括基于预定策略来确定声明中的预定义的资源参数是否足以允许访问所请求的用户、资源和/或操作。当确定声明中的预定义的资源参数不足以允许访问请求中的请求用户、资源和/或操作时,在616处,访问控制程序拒绝访问请求中所请求的用户、资源和/或操作。当确定声明中的预定义的资源参数足以允许访问请求中的所请求的用户、资源和/或操作时,在618处,访问控制程序授权访问请求中所请求的用户、资源和/或操作。
图5图示了根据本公开实施例的用于执行访问控制的方法700的流程图。方法700的以下描述是参考在上面描述并在图1和图3A到图7中所示的软件和硬件组件提供的。应当理解,方法700也可以使用其他合适的硬件和软件组件在其他上下文中执行。
参考图5,在702处,方法700可以包括边缘计算设备接收来自用户的请求访问或配置边缘计算设备的资源的输入请求。在704处,方法700可以包括基于在输入请求中标识的用户认证因素来确定请求者的身份。在706处,方法700可以包括制定声明请求。在708处,方法700可以包括,在本地声明提供者处基于一个或多个处理因素来确定是否可以生成包括所请求声明的令牌。在714处,在基于一个或多个处理因素而确定边缘计算设备不能生成包括所请求声明的令牌时,边缘计算设备向云服务侧声明提供者代理发送声明请求,在云服务处的云服务侧声明提供者代理接收该声明请求并确定用户、资源和操作之间的关联。在716处,在云服务侧声明提供者代理处生成包括所请求声明的令牌并基于声明请求将其发送到边缘计算设备。在718处,边缘计算设备从云服务侧声明提供者接收包括所请求声明的令牌,并且边缘计算设备的访问控制程序检查来自声明提供者的声明以标识预定义的资源参数。在720处,边缘计算设备基于预定策略来确定声明中的预定义的资源参数足以授权对所请求的用户、资源和/或操作的访问。在722处,在基于预定策略而确定声明中的预定义的资源参数足以允许访问所请求的用户、资源和/或操作时,边缘计算设备执行动作以实施访问控制,从而授权对请求中所请求的用户、资源和/或操作的访问或配置。
本发明可以在不脱离其精神或本质特性的情况下以其他的具体形式实现。所描述的实施例在所有方面都应被视为说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是由前面的描述来指示。落入权利要求的等效含义和范围内的所有变化都应包含在其范围内。
在一些实施例中,本文描述的方法和过程可以被绑定到一个或多个计算设备的计算系统。特别地,这种方法和过程可以被实现为计算机应用或服务、应用编程接口(API)、库和/或其他计算机程序产品。
图6示意性地示出了可以进行上述方法和过程中的一个或多个的计算系统900的非限制性实施例。计算系统900以简化形式被示出。计算系统900可以体现图1的交通工具边缘计算设备34和云服务器40。计算系统900可以采用一个或多个个人计算机、服务器计算机、平板计算机、家庭娱乐计算机、网络计算设备、游戏设备、移动计算设备、移动通信设备(例如,智能电话)和/或其他计算设备,以及诸如智能手表和头戴式增强现实设备之类的可穿戴计算设备的形式。
计算系统900包括逻辑处理器902、易失性存储器904和非易失性存储设备906。计算系统900可以可选地包括显示子系统908、输入子系统910、通信子系统912和/或其他在图6中未示出的组件。
逻辑处理器902包括一个或多个被配置为执行指令的物理设备。例如,逻辑处理器可以被配置为执行指令,该指令是一个或多个应用、程序、例程、库、对象、组件、数据结构或其他逻辑构造的一部分。这种指令可以被实现以执行任务、实现数据类型、变换一个或多个组件的状态、实现技术效果,或以其他方式达到期望的结果。
逻辑处理器可以包括一个或多个被配置为执行软件指令的物理处理器(硬件)。附加地或可替代地,逻辑处理器可以包括一个或多个被配置为执行硬件实现的逻辑或固件指令的硬件逻辑电路或固件设备。逻辑处理器902的处理器可以是单核或多核,并且在其上执行的指令可以被配置用于顺序、并行和/或分布式处理。逻辑处理器的各个组件可选地可以分布在两个或多个单独的设备中,这些设备可以远程定位和/或被配置用于协调处理。逻辑处理器的各方面可以被配置在云计算配置中的远程可访问的联网计算设备虚拟化和执行。在这种情况下,将理解,这些虚拟化方面在各种不同机器的不同物理逻辑处理器上运行。
非易失性存储设备906包括一个或多个物理设备,这些物理设备被配置为保存可由逻辑处理器执行的指令以实现本文描述的方法和过程。当这种方法和过程被实现时,非易失性存储设备906的状态可以被变换——例如,以保存不同的数据。
非易失性存储设备906可以包括可移除和/或内置的物理设备。非易失性存储设备906可以包括光学存储器(例如,CD、DVD、HD-DVD、蓝光光盘等)、半导体存储器(例如,ROM、EPROM、EEPROM、闪存等),和/或磁存储器(例如,硬盘驱动器、软盘驱动器、磁带驱动器、MRAM等)或其他大容量存储设备技术。非易失性存储设备906可以包括非易失性、动态、静态、读取/写入、只读、顺序访问、位置可寻址、文件可寻址和/或内容可寻址设备。应当理解,非易失性存储设备906被配置为即使在非易失性存储设备906的电源被切断时也保持指令。
易失性存储器904可以包括的物理设备包括随机存取存储器。易失性存储器904通常由逻辑处理器902用来在软件指令处理期间临时地存储信息。应当理解,当易失性存储器904断电时,易失性存储器904通常不会继续存储指令。
逻辑处理器902、易失性存储器904和非易失性存储设备906的各方面可以一起集成到一个或多个硬件逻辑组件中。这种硬件逻辑组件可能包括现场可编程门阵列(FPGA)、程序和专用集成电路(PASIC/ASIC)、程序和专用标准产品(PSSP/ASSP)、片上系统(SOC)和复杂可编程逻辑器件(CPLD)。
术语“模块”、“程序”和“引擎”可以被用来描述计算系统900的方面,该方面通常由处理器在软件中实现以使用易失性存储器的部分来执行特定功能,该功能涉及专门配置处理器以执行该功能的变革性处理。因此,使用易失性存储器904的部分,模块、程序或引擎可以经由执行由非易失性存储设备906保存的指令的逻辑处理器902来实例化。应当理解,不同的模块、程序和/或引擎可以从相同的应用、服务、代码块、对象、库、例程、API、函数等进行实例化。同样,相同的模块、程序和/或引擎可以由不同的应用、服务、代码块、对象、例程、API、函数等进行实例化。术语“模块”、“程序”和“引擎”可以包括单独的可执行文件、数据文件、库、驱动程序、脚本、数据库记录等或其群组。
当被包括时,显示子系统908可以被用来呈现由非易失性存储设备906保存的数据的视觉表示。视觉表示可以采用图形用户界面(GUI)的形式。由于本文描述的方法和过程改变了非易失性存储设备保存的数据,从而改变了非易失性存储设备的状态,显示子系统908的状态同样可以被变换为在视觉上表示底层数据的变化。显示子系统908可以包括使用几乎任何类型的技术的一个或多个显示设备。这种显示设备可以在共享壳体中与逻辑处理器902、易失性存储器904和/或非易失性存储设备906进行组合,或者这种显示设备可以是外围显示设备。
当被包括时,输入子系统910可以包括一个或多个用户输入设备或与之接合,诸如键盘、鼠标、触摸屏或游戏控制器。在一些实施例中,输入子系统可以包括选定的自然用户输入(NUI)组件或与之接合。这种组件可以是集成的或外围的,并且输入动作的转换和/或处理可以在板上或板外进行处理。示例NUI组件可以包括用于语音和/或话音标识的麦克风;用于机器视觉和/或手势标识的红外、彩色、立体和/或深度摄像头;用于运动检测和/或意图标识的头部追踪器、眼部追踪器、加速度计和/或陀螺仪;以及用于评估大脑活动的电场传感组件;和/或任何其他合适的传感器。
当被包括时,通信子系统912可以被配置为将本文描述的各种计算设备彼此通信地耦合,并且与其他设备通信耦合。通信子系统912可以包括与一种或多种不同通信协议兼容的有线和/或无线通信设备。作为非限制性示例,通信子系统可以被配置为经由无线电话网络、或有线或无线局域网或广域网(诸如蓝牙和通过Wi-Fi连接的HDMI)进行通信。在一些实施例中,通信子系统可以允许计算系统900经由诸如互联网之类的网络向和/或从其他设备发送和/或接收消息。
以下段落为本主题申请的权利要求提供额外的支持。一个方面提供了一种控制边缘计算设备的方法,该方法包括:在边缘计算设备处:在边缘计算设备处标识用户或系统进程的认证因素;基于认证因素来确定用户或系统进程的身份;从用户或系统进程接收请求访问或配置边缘计算设备的资源的输入;通过以下步骤来确定用户或系统进程是否有权访问或配置资源:基于确定的用户或系统进程的身份来制定请求声明的声明请求;将声明请求发送到由边缘计算设备的处理器执行的本地声明提供者代理;基于一个或多个声明请求处理因素,确定本地声明提供者代理可以生成包括所请求声明的令牌,并且作为响应,生成具有所请求声明的令牌;在访问控制程序处接收包括所请求声明的令牌;检查声明以标识预定义的资源参数;并且基于指定在所请求声明中存在预定义的资源参数足以允许访问资源的预定策略来授权对资源进行访问或配置。在这方面,附加地或可替代地,边缘计算设备可以被安装在交通工具上;该请求可以指示与交通工具有关的用户、资源和/或操作;并且访问可以是为了对由请求用户或请求系统进程请求的资源进行操作。在这方面,附加地或可替代地,确定用户或系统进程是否有权访问或配置资源还可以通过以下步骤完成:基于一个或多个声明请求处理因素来确定本地声明提供者代理不能生成包含所请求声明的令牌,并基于此确定,通过计算网络向服务器所执行的云服务侧声明提供者发送请求,并作为响应从云服务侧声明提供者接收包含所请求声明的令牌。在这方面,附加地或可替代地,声明中的至少一个可以在预定的有限时间段内具有有效范围。在这方面,附加地或可替代地,所请求声明可以描述用户、作为服务的操作和作为对象的资源之间的关联。在这方面,附加地或可替代地,该关联可以描述用户和服务、服务和对象、用户和对象、和/或用户和服务和对象的组合。在这方面,附加地或可替代地,声明可以被格式化以描述用户、服务和对象之间的关联。在这方面,附加地或可替代地,每个关联可以被指派多个授权级别之一。在这方面,附加地或可替代地,预定义的资源参数可以是所请求声明的关联的授权级别。在这方面,附加地或可替代地,可以基于包括每个关联的一系列记录的外部数据源为每个关联指派多个授权级别之一。在这方面,附加地或可替代地,该系列记录可以描述每个关联的授权级别和/或关联的层次结构关系。
另一方面提供了一种边缘计算设备,包括:处理器和存储器,处理器被配置为执行在存储器中储存的软件指令以:在边缘计算设备处标识用户或系统进程的认证因素;基于认证因素来确定用户或系统进程的身份;从用户或系统进程接收请求访问或配置边缘计算设备的资源的输入;通过以下步骤来确定用户或系统进程是否有权访问或配置资源:基于所确定的用户或系统进程的身份来制定请求声明的声明请求;将声明请求发送到由边缘计算设备的处理器执行的本地声明提供者代理;基于一个或多个声明请求处理因素,确定本地声明提供者代理可以生成包括所请求声明的令牌,并且作为响应,生成具有所请求声明的令牌;在访问控制程序处接收包括所请求声明的令牌;检查声明以标识预定义的资源参数;并且基于指定在所请求声明中存在预定义的资源参数足以允许访问资源的预定策略来授权对资源进行访问或配置。在这方面,附加地或可替代地,边缘计算设备可以被安装在交通工具上;该请求可以指示与交通工具有关的用户、资源和/或操作;并且访问可以是为了对由请求用户或请求系统进程请求的资源进行操作。在这方面,附加地或可替代地,确定用户或系统进程是否有权访问或配置资源还可以通过以下步骤完成:基于一个或多个声明请求处理因素来确定本地声明提供者代理不能生成包含所请求声明的令牌,并基于此确定,通过计算网络向服务器所执行的云服务侧声明提供者发送请求,并作为响应从云服务侧声明提供者接收包含所请求声明的令牌。在这方面,附加地或可替代地,声明中的至少一个可以在预定的有限时间段内具有有效范围。在这方面,附加地或可替代地,所请求声明可以描述用户、作为服务的操作和作为对象的资源之间的关联。在这方面,附加地或可替代地,每个关联可以被指派多个授权级别之一。在这方面,附加地或可替代地,预定义的资源参数可以是所请求声明的关联的授权级别。在这方面,附加地或可替代地,可以基于包括每个关联的一系列记录的外部数据源为每个关联指派多个授权级别之一。
另一方面提供了一种边缘计算设备,包括:处理器和存储器,处理器被配置为执行在该存储器中存储的软件指令以:在边缘计算设备标识用户的用户认证因素;基于用户认证因素来确定用户的身份;从请求访问或配置边缘计算设备的资源的用户接收用户输入;通过以下步骤来确定用户是否有权访问或配置资源:基于所确定的用户身份来指定请求声明的声明请求;将声明请求发送到由边缘计算设备的处理器执行的本地声明提供者代理;并且基于一个或多个声明请求处理因素来确定本地声明提供者代理是否可以生成包含所请求声明的令牌,并且如果可以,则生成带有所请求声明的令牌,否则通过计算网络向由服务器执行的云服务侧声明提供者发送请求并且作为响应从云服务侧声明提供者接收包括所请求声明的令牌;在访问控制程序处接收包括所请求声明的令牌;检查声明以标识预定义的资源参数;并且基于预定策略来授权访问资源或配置,预定策略指定在所请求声明中存在预定义的资源参数足以允许对资源进行访问,边缘计算设备被安装在交通工具上;指示与交通工具有关的用户、资源和/或操作的请求;并且访问是为了对请求用户所请求的资源进行操作。
应当理解,本文描述的配置和/或方法本质上是示例性的,并且这些具体实施例或示例不应被视为限制性的,因为许多变化是可能的。本文描述的具体例程或方法可以表示任何数量的处理策略中的一种或多种。因此,所图示和/或描述的各种动作可以按照所图示和/或描述的顺序、以其他顺序、并行或省略来执行。同样,上述过程的顺序可以改变。
本公开的主题包括本文公开的各种过程、系统和配置以及其他特征、功能、动作和/或特性的所有新颖和非显而易见的组合和子组合,以及任何及其所有等效物。

Claims (20)

1.一种控制边缘计算设备的方法,所述方法包括:
在所述边缘计算设备处:
标识所述边缘计算设备处的用户或系统进程的认证因素;
基于所述认证因素来确定所述用户或所述系统进程的身份;
从所述用户或所述系统进程接收输入,所述输入请求对所述边缘计算设备的资源的访问或配置;
通过下列步骤来确定所述用户或所述系统进程是否有权访问或配置所述资源:
基于所确定的所述用户或所述系统进程的所述身份来制定请求声明的声明请求,所述声明请求指示针对所述资源的所述访问或配置的一个或多个所请求的声明;
将所述声明请求发送到由所述边缘计算设备的处理器执行的本地声明提供者代理;
基于一个或多个声明请求处理因素来确定所述本地声明提供者代理能够生成包括所述声明请求的所请求的所述声明的令牌;
响应于确定所述本地声明提供者代理能够生成所述令牌,经由所述本地声明提供者来生成具有所请求的所述声明的所述令牌;
将所述令牌从所述本地声明提供者发送给由边缘计算设备的所述处理器执行的单独应用程序,所述单独应用程序与所述资源的所述访问或配置相关联;
在访问控制程序处从所述应用程序接收包括所请求的所述声明的所述令牌,所述访问控制程序由所述边缘计算设备的所述处理器执行;
在所述访问控制程序处检查所述令牌的所请求的所述声明,以标识预定义的资源参数;以及
在所述访问控制程序处,基于预定策略来授权对所述资源的所述访问或配置,所述预定策略指定在所请求的所述声明中所述预定义的资源参数的存在足以允许经由所述应用程序对所述资源的所述访问或配置。
2.根据权利要求1所述的控制边缘计算设备的方法,其中
所述边缘计算设备被安装在交通工具上;
所述请求指示与所述交通工具有关的用户、资源和/或操作;以及
所述访问用于对请求用户或请求系统进程所请求的所述资源上的操作。
3.根据权利要求1所述的控制边缘计算设备的方法,其中确定所述用户或所述系统进程是否有权访问或配置所述资源还通过以下步骤来完成:
基于一个或多个声明请求处理因素,确定所述本地声明提供者代理不能生成包括所请求的所述声明的所述令牌,并且基于此确定,通过计算网络向由服务器执行的云服务侧声明提供者发送请求,并且作为响应,从所述云服务端声明提供者接收包括所请求的所述声明的所述令牌。
4.根据权利要求1所述的控制边缘计算设备的方法,其中
所述声明中的至少一个声明在预定的有限时间段内具有有效性范围。
5.根据权利要求1所述的控制边缘计算设备的方法,其中
所请求的所述声明描述了用户、作为服务的操作和作为对象的资源之间的关联。
6.根据权利要求5所述的控制边缘计算设备的方法,其中
所述关联描述用户和服务、服务和对象、用户和对象的组合,和/或用户和服务和对象的组合。
7.根据权利要求5所述的控制边缘计算设备的方法,其中
所述声明被格式化以描述所述用户、所述服务与所述对象之间的关联。
8.根据权利要求7所述的控制边缘计算设备的方法,其中
每个关联被指派多个授权级别之一。
9.根据权利要求8所述的控制边缘计算设备的方法,其中
所述预定义的资源参数是所请求的所述声明的所述关联的所述授权级别。
10.根据权利要求8所述的控制边缘计算设备的方法,其中
基于包括每个关联的一系列记录的外部数据源,每个关联被指派所述多个授权级别之一。
11.根据权利要求10所述的控制边缘计算设备的方法,其中
一系列记录描述了每个关联的授权级别和/或所述关联的层次结构关系。
12.一种边缘计算设备,包括:
处理器和存储器,所述处理器被配置为执行存储在所述存储器内的软件指令以:
在所述边缘计算设备处标识用户或系统进程的认证因素;
基于所述认证因素来确定所述用户或所述系统进程的身份;
从所述用户或所述系统进程接收输入,所述输入请求对所述边缘计算设备的资源的访问或配置;
通过下列步骤来确定所述用户或所述系统进程是否有权访问或配置所述资源:
基于所述用户或所述系统进程的所确定的所述身份来制定请求声明的声明请求,所述声明请求指示针对所述资源的所述访问或配置的一个或多个所请求的声明;
将所述声明请求发送到由所述边缘计算设备的所述处理器执行的本地声明提供者代理;以及
基于一个或多个声明请求处理因素来确定所述本地声明提供者代理能够生成包括所述声明请求的所请求的所述声明的令牌;
响应于确定所述本地声明提供者代理能够生成所述令牌,经由所述本地声明提供者来生成具有所请求的所述声明的所述令牌;
将所述令牌从所述本地声明提供者发送给由边缘计算设备的所述处理器执行的单独应用程序,所述单独应用程序与所述资源的所述访问或配置相关联;
在访问控制程序处从所述应用程序接收包括所请求的所述声明的所述令牌,所述访问控制程序由所述边缘计算设备的所述处理器执行;
在所述访问控制程序处检查所述令牌的所请求的所述声明,以标识预定义的资源参数;以及
在所述访问控制程序处,基于预定策略来授权对所述资源的所述访问或配置,所述预定策略指定在所请求的所述声明中所述预定义的资源参数的存在足以允许经由所述应用程序对所述资源的所述访问或配置。
13.根据权利要求12所述的边缘计算设备,其中
所述边缘计算设备被安装在交通工具上;
所述请求指示与所述交通工具有关的用户、资源和/或操作;和
所述访问用于对请求用户或请求系统进程所请求的所述资源上的操作。
14.根据权利要求12所述的边缘计算设备,其中确定所述用户或所述系统进程是否有权访问或配置所述资源还通过以下步骤来完成:
基于一个或多个声明请求处理因素,确定所述本地声明提供者代理不能生成包括所请求的所述声明的令牌,并且作为响应,通过计算网络向由服务器执行的云服务侧声明提供者发送请求,并且作为响应,从所述云服务端声明提供者接收包括所请求的所述声明的所述令牌。
15.根据权利要求13所述的边缘计算设备,其中
所述声明中的至少一个声明在预定的有限时间段内具有有效性范围。
16.根据权利要求13所述的边缘计算设备,其中
所请求的所述声明描述了用户、作为服务的操作和作为对象的资源之间的关联。
17.根据权利要求16所述的边缘计算设备,其中
每个关联被指派多个授权级别之一。
18.根据权利要求17所述的边缘计算设备,其中
所述预定义的资源参数是所请求的所述声明的所述关联的所述授权级别。
19.根据权利要求17所述的边缘计算设备,其中
基于包括每个关联的一系列记录的外部数据源,每个关联被指派所述多个授权级别之一。
20.一种边缘计算设备,包括:
处理器和存储器,所述处理器被配置为,执行存储在所述存储器内的软件指令以:
在所述边缘计算设备处标识用户的用户认证因素;
基于所述用户认证因素来确定所述用户的身份;
从所述用户接收用户输入,所述用户输入请求对所述边缘计算设备的资源的访问或配置;
通过下列步骤来确定所述用户是否有权访问或配置所述资源:
基于所述用户的所确定的所述身份来制定请求声明的声明请求,所述声明请求指示针对所述资源的所述访问或配置的一个或多个所请求的声明;
将所述声明请求发送到由所述边缘计算设备的所述处理器执行的本地声明提供者代理;以及
基于一个或多个声明请求处理因素来确定所述本地声明提供者代理是否能够生成包括所述声明请求的所请求的所述声明的令牌,并且如果能够,则经由所述本地声明提供者来生成具有所请求的所述声明的所述令牌,否则,则通过计算网络向由服务器执行的云服务侧声明提供者发送请求,并且作为响应,从所述云服务端声明提供者接收包括所请求的所述声明的所述令牌;
将所述令牌从所述本地声明提供者发送到给由边缘计算设备的所述处理器执行的单独应用程序,所述单独应用程序与所述资源的所述访问或配置相关联;
在访问控制程序处从所述应用程序接收包括所请求的所述声明的所述令牌,所述访问控制程序由所述边缘计算设备的所述处理器执行;
在所述访问控制程序处检查所述令牌的所请求的所述声明,以标识预定义的资源参数;以及
在所述访问控制程序处,基于预定策略来授权对所述资源的所述访问或配置,所述预定策略指定在所请求的所述声明中所述预定义的资源参数的存在足以允许经由所述应用程序对所述资源的所述访问或配置,其中
所述边缘计算设备被安装在交通工具上;
所述请求指示与所述交通工具有关的用户、资源和/或操作;以及
所述访问用于对请求用户所请求的所述资源的操作。
CN202080033121.XA 2019-05-03 2020-04-06 控制对边缘设备的资源的访问 Active CN113767609B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962843237P 2019-05-03 2019-05-03
US62/843,237 2019-05-03
US16/510,460 2019-07-12
US16/510,460 US11381575B2 (en) 2019-05-03 2019-07-12 Controlling access to resources of edge devices
PCT/US2020/026960 WO2020226817A1 (en) 2019-05-03 2020-04-06 Controlling access to resources of edge devices

Publications (2)

Publication Number Publication Date
CN113767609A CN113767609A (zh) 2021-12-07
CN113767609B true CN113767609B (zh) 2023-04-04

Family

ID=73016948

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080033121.XA Active CN113767609B (zh) 2019-05-03 2020-04-06 控制对边缘设备的资源的访问

Country Status (4)

Country Link
US (1) US11381575B2 (zh)
EP (1) EP3963914B1 (zh)
CN (1) CN113767609B (zh)
WO (1) WO2020226817A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11595369B2 (en) * 2019-11-08 2023-02-28 Seagate Technology Llc Promoting system authentication to the edge of a cloud computing network
US11153325B1 (en) * 2020-04-30 2021-10-19 Splunk Inc. Server-based restricted access storage
US11818102B2 (en) * 2021-04-16 2023-11-14 Nokia Technologies Oy Security enhancement on inter-network communication
US20230120512A1 (en) * 2021-09-30 2023-04-20 Microsoft Technology Licensing, Llc Claim-based authorization across organizations
CN114124920B (zh) * 2021-11-29 2023-12-19 浙江小遛信息科技有限公司 车辆动力控制方法、装置及终端设备
CN114268508B (zh) * 2021-12-30 2023-08-18 天翼物联科技有限公司 物联网设备安全接入方法、装置、设备及介质
CN115102764B (zh) * 2022-06-22 2023-10-20 广东电网有限责任公司 一种物联网边缘计算设备的接入方法、装置、计算机设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107070863A (zh) * 2016-01-29 2017-08-18 谷歌公司 本地设备认证
CN108027799A (zh) * 2015-05-07 2018-05-11 应用程序巴士公司 用于在未受管理的并且未受防护的设备上的资源访问和安置的安全容器平台
CN108141717A (zh) * 2016-01-11 2018-06-08 环球互连及数据中心公司 共同定位设施中的物联网设备数据的分布式边缘处理
CN108351796A (zh) * 2015-10-27 2018-07-31 甲骨文金融服务软件有限公司 用于在各种运行时环境中与模型交互并执行模型的统一接口规范
CN109564539A (zh) * 2016-08-03 2019-04-02 英特尔公司 远程调试与管理

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070112574A1 (en) 2003-08-05 2007-05-17 Greene William S System and method for use of mobile policy agents and local services, within a geographically distributed service grid, to provide greater security via local intelligence and life-cycle management for RFlD tagged items
WO2007089503A2 (en) * 2006-01-26 2007-08-09 Imprivata, Inc. Systems and methods for multi-factor authentication
US8060285B2 (en) 2006-04-26 2011-11-15 Toyota Motor Engineering & Manufacturing North America, Inc. System and method of intelligent agent management using an overseer agent for use in vehicle diagnostics
WO2011043559A2 (ko) 2009-10-08 2011-04-14 Choi Unho 운전자 인증을 통한 차량 제어 방법, 차량 단말기, 생체인식 카드 및 시스템과, 생체인식 카드와 단말기를 이용한 탑승자 보호 추적 기능을 제공하는 방법
US9229905B1 (en) 2011-04-22 2016-01-05 Angel A. Penilla Methods and systems for defining vehicle user profiles and managing user profiles via cloud systems and applying learned settings to user profiles
US9118686B2 (en) * 2011-09-06 2015-08-25 Microsoft Technology Licensing, Llc Per process networking capabilities
US9374369B2 (en) * 2012-12-28 2016-06-21 Lookout, Inc. Multi-factor authentication and comprehensive login system for client-server networks
US10693874B2 (en) * 2013-04-19 2020-06-23 Pearson Education, Inc. Authentication integrity protection
US9552684B2 (en) * 2014-02-04 2017-01-24 Secure Gravity Inc. Methods and systems configured to detect and guarantee identity for the purpose of data protection and access control
US9483886B2 (en) 2014-10-01 2016-11-01 Continental Intelligent Transportation Systems, LLC Method and system for remote access control
US9473504B2 (en) 2014-10-15 2016-10-18 Ayla Networks, Inc. Role based access control for connected consumer devices
US9604651B1 (en) 2015-08-05 2017-03-28 Sprint Communications Company L.P. Vehicle telematics unit communication authorization and authentication and communication service provisioning
WO2017053319A1 (en) 2015-09-22 2017-03-30 Mobile Iron, Inc. Containerized architecture to manage internet-connected devices
WO2017106619A1 (en) 2015-12-18 2017-06-22 Interdigital Patent Holdings, Inc. Systems and methods associated with edge computing
US20170295154A1 (en) 2016-04-07 2017-10-12 Gogo Llc Systems and methods for authenticating applications to on-board services
DE112016007093T5 (de) 2016-08-22 2019-05-09 Ford Global Technologies, Llc Fahrzeugzugriffsautorisierung
US10180682B2 (en) * 2017-02-23 2019-01-15 The Directv Group, Inc. Shared control of vehicle functions
US10218697B2 (en) 2017-06-09 2019-02-26 Lookout, Inc. Use of device risk evaluation to manage access to services
US10452824B2 (en) * 2017-07-24 2019-10-22 Dell Products, Lp Method and apparatus for optimized access of security credentials via mobile edge-computing systems
US10924466B2 (en) * 2017-07-28 2021-02-16 SmartAxiom, Inc. System and method for IOT security

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108027799A (zh) * 2015-05-07 2018-05-11 应用程序巴士公司 用于在未受管理的并且未受防护的设备上的资源访问和安置的安全容器平台
CN108351796A (zh) * 2015-10-27 2018-07-31 甲骨文金融服务软件有限公司 用于在各种运行时环境中与模型交互并执行模型的统一接口规范
CN108141717A (zh) * 2016-01-11 2018-06-08 环球互连及数据中心公司 共同定位设施中的物联网设备数据的分布式边缘处理
CN107070863A (zh) * 2016-01-29 2017-08-18 谷歌公司 本地设备认证
CN109564539A (zh) * 2016-08-03 2019-04-02 英特尔公司 远程调试与管理

Also Published As

Publication number Publication date
CN113767609A (zh) 2021-12-07
EP3963914B1 (en) 2023-07-05
EP3963914A1 (en) 2022-03-09
US20200351274A1 (en) 2020-11-05
US11381575B2 (en) 2022-07-05
WO2020226817A1 (en) 2020-11-12

Similar Documents

Publication Publication Date Title
CN113767609B (zh) 控制对边缘设备的资源的访问
US10541988B2 (en) Privileged account plug-in framework—usage policies
CN108351927B (zh) 用于访问管理的无密码认证
US10454936B2 (en) Access manager session management strategy
US10666643B2 (en) End user initiated access server authenticity check
US10230732B2 (en) Authorization policy objects sharable across applications, persistence model, and application-level decision-combining algorithm
US10505982B2 (en) Managing security agents in a distributed environment
US10257205B2 (en) Techniques for authentication level step-down
US10581826B2 (en) Run-time trust management system for access impersonation
US10693859B2 (en) Restricting access for a single sign-on (SSO) session
US11290438B2 (en) Managing session access across multiple data centers
US10225283B2 (en) Protection against end user account locking denial of service (DOS)
US20190334921A1 (en) Framework for multi-level and multi-factor inline enrollment
US20150109099A1 (en) Mobile device and key fob pairing for multi-factor security
CN105612731B (zh) 跨受信和非受信平台漫游互联网可访问应用状态
EP2947593B1 (en) Security apparatus session sharing
US10417410B2 (en) Access control to protected resource based on images at changing locations identifiable by their type

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant