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

管理安全IoT设备应用的方法和系统与流程

2022-06-06 02:03:13 来源:中国专利 TAG:

管理安全iot设备应用的方法和系统
技术领域
1.本公开涉及数据的收集和安全。


背景技术:

2.物联网(iot)设备已经显著地改进了制造生产数据的收集。该数据用于许多集中于改进生产流程、工艺改进和缺陷减少的应用中。该数据具有显著的货币价值,因为它可以显著降低生产成本并提高生产量。公司有力地保护了该数据,因为其表现出显著的竞争优势。客户还要求保护该数据,因为它是敏感的专有产品信息。
3.制造数据和工艺信息的收集对于公司的敏捷性和竞争力正变得至关重要。该数据和工艺信息通常用于统计过程控制(spc)和描述性、诊断性、预测性和处方分析。这些分析方法可以对更有效的制造工艺给出巨大的洞察力。更有效的工艺可以增加生产量、降低制造成本并提高质量。
4.同样重要的是需要安全地保护数据免受未授权的访问和盗用。这适用于公司和公司的客户。工厂生产数据具有重要的专有工艺知识和货币价值。
5.安全性的复杂性和保证是一个复杂的问题。尽管存在行业标准,但是开发满足行业安全标准并且具有强安全保证的代码可能是非常困难的。测试安全代码甚至可能更加困难。必须找到一种对于不了解复杂安全技术的软件开发者来说更简单的方法。


技术实现要素:

6.本文公开了用于管理安全iot设备应用(applications)的方法和系统。
7.在实现中,用于管理安全物联网(iot)设备数据的docket容器系统包括:被配置为从设备数据产生机器收集iot设备数据的机器控制容器、被配置为将所收集的iot设备数据转换成公共语义格式的转换容器、被配置为聚集、过滤和处理所转换的iot设备数据以生成经处理的iot设备数据并将该经处理的iot设备数据发送到客户端应用和数据存储设备中的至少一者的客户端专用容器应用、以及被配置为将基于安全性的协议应用到所述经处理的iot设备数据的安全容器代理服务。在实现中,独立于所述基于安全性的协议而部署所述客户端特定容器应用。在实现中,所述客户端特定容器应用缺少基于安全性的协议。在实现中,所述基于安全性的协议包括加密协议、认证协议和授权协议。在实现中,所述客户端特定容器应用包括实时流传输接口,其被配置为实时发送应用了安全性的iot设备数据。在实现中,所述客户端特定容器应用包括消息收发接口,其被配置为发送消息并将应用了安全性的iot设备数据发送到数据存储设备。在实现中,所述安全容器代理服务包括被配置为将所述基于安全性的协议应用于离开所述docker容器系统的通信业务的前向代理服务。在实现中,所述安全容器代理服务包括被配置为将所述基于安全性的协议应用于进入所述docker容器系统的通信业务的前向代理服务。在实现中,所述通信业务至少包括iot设备数据、入站客户端请求和出站客户端请求。
8.在实现中,一种用于管理安全物联网(iot)设备数据的方法包括:使用机器控制容
器从设备数据产生机器收集iot设备数据,其中每个数据产生机器具有相关联的机器控制容器;使用转换容器将所收集的iot设备数据转换成公共语义格式;使用客户端应用容器来聚集、过滤和处理所转换的iot设备数据以生成经处理的iot设备数据;使用安全容器代理服务来向所处理的iot设备数据应用基于安全性的协议,以生成应用了安全性的iot设备数据;以及,经由通信接口将所述应用了安全性的iot设备数据发送到客户端目标。在实现中,所述聚集、过滤和处理以及所述应用基于安全性的协议由不同的docker容器完成。在实现中,所述基于安全性的协议包括加密协议、认证协议和授权协议。在实现中,所述发送是实时流传输。在实施方式中,所述应用基于安全性的协议是针对离开和进入所述docker容器系统的通信业务来完成的。在实现中,所述通信业务至少包括iot设备数据、入站客户端请求和出站客户端请求。
附图说明
9.当结合附图阅读时,从以下详细描述中可以最好地理解本公开。要强调的是,根据惯例,附图的各种特征不是按比例绘制的。相反,为了清楚起见,各种特征的尺寸被任意地扩大或缩小。
10.图1是iot工厂网关(ifg)数据架构的示例的框图。
11.图2是根据本公开的实施例的ifg实现的框图。
12.图3是根据本公开的实施例的前向(forward)代理安全数据流的框图。
13.图4是根据本公开的实施例的反向(reverse)代理安全服务的框图。
14.图5是根据本公开的实施例的安全机器lan隔离的框图。
15.图6是根据本公开的实施例的设备的示例的框图。
具体实施方式
16.现在将更详细地参考本发明的实施例,其示例在附图中示出。在可能的情况下,在所有附图和说明书中使用相同的附图标记来表示相同或相似的部件。
17.如本文所使用的,术语“计算机”或“计算设备”包括能够执行本文所公开的任何方法或其任何一个或多个部分的任何单元或单元的组合。
18.如本文所用,术语“处理器”指示一个或多个处理器,例如一个或多个专用处理器、一个或多个数字信号处理器、一个或多个微处理器、一个或多个控制器、一个或多个微控制器、一个或多个应用处理器、一个或多个中央处理单元(cpu)、一个或多个图形处理单元(gpu)、一个或多个数字信号处理器(dsp)、一个或多个专用集成电路(asic)、一个或多个专用标准产品、一个或多个现场可编程门阵列、任何其它类型的集成电路或集成电路的组合、一个或多个状态机或其任何组合。
19.如本文所使用的,术语“存储器”指示可以有形地包含、存储、传送或传输可以由任何处理器使用或与任何处理器结合使用的任何信号或信息的任何计算机可用或计算机可读介质或设备。例如,存储器可以是一个或多个只读存储器(rom)、一个或多个随机存取存储器(ram)、一个或多个寄存器、低功率双倍数据速率(lpddr)存储器、一个或多个高速缓存存储器、一个或多个半导体存储器设备、一个或多个磁媒体、一个或多个光媒体、一个或多个磁光媒体、或其任意组合。
20.如本文所使用的,术语“指令”可以包括用于执行本文所公开的任何方法或其任何部分的方向或表达,并且可以以硬件、软件或其任何组合来实现。例如,指令可以被实现为存储在存储器中的信息,诸如计算机程序,其可以由处理器执行以执行如本文所述的相应方法、算法、方面或其组合中的任何一个。指令或其一部分可以被实现为专用处理器或电路,其可以包括用于执行如本文所述的方法、算法、方面或其组合中的任何一个的专用硬件。在一些实现中,所述指令的部分可以分布在单个设备上的多个处理器上、分布在多个设备上,所述多个设备可以直接通信或者跨诸如局域网、广域网、因特网或其组合之类的网络通信。
21.如本文所使用的,术语“应用”一般是指实现或执行一个或多个功能、任务或活动的可执行软件的单元。例如,应用可以执行一个或多个功能,这其中包括但不限于电话、web浏览器、电子商务交易、媒体播放器、旅行调度和管理、智能家庭管理、娱乐等。可执行软件单元通常在预定环境和/或处理器中运行。
22.如本文所使用的,术语“确定”和“识别”或其任何变型包括使用本文示出和描述的一个或多个设备和方法以任何方式进行选择、查明、计算、查找、接收、确定、建立、获得或以其它方式识别或确定。
23.如本文所使用的,术语“示例”、“实施例”、“实现”、“方面”、“特征”或“元素”指示用作示例、实例或说明。除非明确指出,否则任何示例、实施例、实现、方面、特征或元素独立于彼此,并且可以与任何其他示例、实施例、实现、方面、特征或元素组合使用。
24.如本文所用,术语“或”旨在表示包含性的“或”而不是排他性的“或”,除非另有说明或从上下文中清楚,否则“x包括a或b”旨在指示任何自然的包含性排列。即,如果x包括a;x包括b;或者x包括a和b,则“x包括a或b”在任何前述情况下都满足。另外,除非另外指定或从上下文中清楚涉及单数形式,否则本技术和所附权利要求中使用的冠词“一”一般应当被解释为表示“一个或多个”。
25.此外,为了解释的简单,尽管本文的附图和描述可以包括步骤或阶段的序列或系列,但是本文公开的方法的元素可以以各种顺序或同时发生。另外,本文公开的方法的元素可以与本文未明确呈现和描述的其它元素一起出现。此外,并非本文所述方法的所有元素都是实现根据本公开的方法所必需的。尽管在此以特定的组合描述了方面、特征和元素,但是每个方面、特征或元素可以独立地使用或者与其他方面、特征和元素组合或不组合地使用。
26.此外,本文提供的附图和描述可以被简化以示出所描述的实施例的与清楚理解本文公开的过程、机器、制造商和/或物质组成相关的方面,同时为了清楚起见,消除了可以在典型的类似设备、系统、组成和方法中发现的其他方面。因此,本领域技术人员可以认识到,其它元素和/或步骤对于实现本文所述的设备、系统、组成和方法可能是期望的或必需的。然而,因为这些元素和步骤在本领域中是公知的,并且因为它们并不有助于更好地理解所公开的实施例,所以在此可能不提供对这些元素和步骤的讨论。然而,本公开被认为固有地包括相关领域的普通技术人员根据本文的讨论将知道的对所描述的方面的所有这样的元素、变化和修改。
27.本文描述了用于管理安全iot设备应用的方法、设备和系统。物联网工厂网关(ifg)是一种能够跨整个工厂来采集大量制造数据的采集设备。ifg利用这里描述的安全容
器代理服务(scps)来为基于docker的应用容器(docker在这里可以不用大写而使用)提供无缝加密、认证和授权安全性。scps是一种不需要理解复杂的安全软件算法而编写安全代码的方法。scps允许软件工程师编写集中于他们试图解决的商业问题的代码,而无需担心安全、加密、认证方法和数据访问控制的复杂性。所有这些都通过使用scps自动处理。
28.ifg允许工厂从典型工厂中发现的几乎任何设备收集实时数据。它是高度灵活的架构,允许工厂容易地从几乎任何机器收集实时iot数据。
29.图1是ifg数据结构1000的示例的框图。在实现中,所述ifg数据架构1000是基于docker微服务的架构。docker是一组耦合的软件即服务(saas)和平台即服务产品,其使用操作系统级虚拟化来开发和递送在被称为容器的包中的软件。容器彼此隔离,并捆绑它们自己的软件、库和配置文件。它们通过明确定义的信道彼此通信。容器化使得能够进行简单的明确定义的服务,其可以被快速设计、开发、测试和部署。
30.ifg允许对许多机器进行实时数据收集,这其中包括旧的传统机器,其中接口可以是专用的或使用旧的过时的工业标准。为了说明的目的,在工厂中描述了表面安装技术(smt)生产线,并且可以使用任何工厂或工艺生产线,而不限制说明书和权利要求的范围。所述ifg数据架构1000可以包括用于表面安装技术(smt)生产线的机器1100、ifg 1200、工厂制造执行系统(mes)1300以及云分析应用和数据湖1400。ifg 1200从机器1100提取数据,将数据转换成公共语义格式,聚集并将数据安全地推送到工厂应用1300和基于云的数据湖1400。
31.机器控制容器(mcc)1210是到所述机器的主要接口。mcc 1210处理用于每个特定机器的所有协议和数据捕获。许多传统机器使用专有接口。mcc 1210处理专有和工业标准接口,这对于具有许多传统设备的工厂非常有用。一旦mcc 1210捕获数据,它就被发送到转换容器(txc)1220。
32.转换容器(txc)1220从mcc 1210接收数据,并将该数据转换为应用公共数据格式。每个机器1100具有专有数据类型和标签。txc 1220提取所述数据并创建标准json键(key)/值对。对于某些机器类,如取放和自动光学检查(aoi)机器,txc 1220创建公共数据语义模型,从而使用这些机器的应用不必知道唯一的机器数据类型。一旦txc 1220完成其数据转换,其将该数据传递到工厂容器应用(fca)1230。
33.所述fca 1230是高度灵活的数据聚集器。许多工厂应用需要用于制造工艺控制的特定实时数据。fca 1230聚集、过滤、处理数据,并将数据快速发送到其他应用。fca 1230具有两个数据信道:http rest接口1232、以及流传输高级消息排队协议(amqp)接口1234。
34.所述http rest接口1232用于快速实时流传输应用。所述http rest接口1232接口可以在10毫秒内将数据递送到需要实时数据递送的工厂应用。
35.fca流传输amqp接口1234用于基于云的数据湖存档存储。数据湖组织通常是临时分级的,其中最近的数据可以被快速访问,而较早的不频繁访问的数据被存储在较慢的较便宜的数据存储设备中。这种格式通常由能够容忍较慢的基于云的数据递送的批处理应用使用。在实现中,来自iot边缘运行时间模块1250的数据经由fca流传输amqp接口1234而被发送。
36.所述ifg数据架构1000还允许工厂开发团队的快速且容易的开发和部署。ifg 1200提供数据管道,fca 1230聚集数据并将数据发布给各种工厂应用。数据通过使用简单
的数据路由语句而被路由到fca 1230,并且不需要改变容器。fca 1230是到工厂mes、企业资源规划系统(erp)和信息管理系统(ims)以及大型分析数据湖存储设备的数据流水线。
37.安全代理容器(spc)1240为平台提供了安全框架。fca 1230被设计成易于开发、测试和部署。它们被预期由可能不是数据安全专家的工厂工程软件开发者开发。spc 1240利用一组代理,所述代理执行所有http到https的转换以及利用安全oauth2令牌的所有认证和授权。oauth代表在rfc 6749中突显的用于访问委托的开放授权。工厂软件工程师只需编写简单的http通信软件,而无需考虑安全性。spc 1240处理所有的加密、认证和授权。
38.图2是ifg架构2000的框图。该ifg架构2000包括机器2100、ifg 2200、工厂应用2300、以及云分析应用和数据湖2400。所述ifg 2200包括mcc容器2210、odbc 2215、txc容器2220、fca容器2230、sfm 2235、fcc 2240、amqp 2250、安全前向代理fpc 2260、安全反向代理rpc 2270和iot边缘运行时间模块2280。
39.在所述ifg架构2000中,每个机器2100具有其自己的mcc 2210和txc 2220。所述mcc 2210处理机器接口,而txc 2220将机器数据转换成公共数据格式。每个fca 2230负责聚集数据并将其前向给其各自的工厂应用。每个fca 2230可以从一个或多个txc 2220接收数据流。spsc(统称为安全前向代理fpc 2260和安全反向代理rpc 2270)捕获所有http应用包,并执行所有http到https的转换和安全令牌插入。
40.所述spsc执行包括加密、认证和授权的所有ifg安全功能。有两种spsc服务:由安全前向代理fpc 2260提供的前向代理安全服务(fpss)和由安全反向代理fpc 2270提供的反向代理安全服务(rpss)。这些类型的服务对于该docker应用是唯一的,并且显著地改进了iot、工厂应用和工厂机器安全性的所有方面。通过使用工业标准数据安全技术,spsc实现了非常强的安全性,并且为工厂机器提供了一种新的和关键的安全组件,其被称为机器封装安全(mes)。
41.oauth2安全
42.所述密钥安全组件之一是oauth2安全委托访问。oauth2是由许多主要的web服务提供方使用的工业标准。它是将认证和授权凭证委托给其它应用的安全服务器。oauth2使用被称为json web令牌(jwt)的加密令牌来将认证和授权凭证传递给客户端。oauth2具有许多委托服务。ifg架构2000和ifg 2220使用客户端凭证授权服务。
43.为使用ifg 2200的每个应用建立唯一的oauth2帐户。当创建该帐户时,为客户端创建oauth2客户端id和秘密。这些凭证被安全地存储在oauth2和客户端令牌凭证库中。客户端使用这些凭证来请求委托令牌。该委托令牌是由oauth2服务创建的工业标准加密令牌。该令牌包括客户端id、范围、生存时间(ttl)和现时标志(nonce)。
44.所述客户端id验证令牌的所有者。所述客户端id提供认证。所述范围定义了访问web服务的客户端权限。所述范围定义授权。所述ttl定义所述令牌何时到期。对于更大的安全令牌,具有有限的寿命。一旦过期,必须重新发布新的一个。所述现时标志是用于确保没有两个加密令牌具有相同签名的随机数。使用oauth2服务私有x.509证书来加密所述委托令牌。这消除了令牌篡改的可能性。所述web服务只能使用oauth2服务器的公钥来解密所述令牌。
45.令牌具有它们有效的有限时间。所述令牌ttl定义令牌何时不再有效。ttl为几分钟到几天。当令牌超时时,客户端使用其客户端id和秘密来请求新的令牌。更快的超时提供
了更高的安全性。然而,令牌花费有限时间量来创建,并使用大量计算马力。当服务等待创建新令牌时,短超时可能减慢服务。一旦令牌过期,代理服务必须从oauth2服务获得新令牌。
46.图3是用于由安全前向代理fpc或前向代理服务(fps)3100提供的前向代理安全服务(fpsss)的前向代理安全数据流3000的框图。所述fps 3100处理所有内部出站ifg客户端web服务请求,并且fps功能组织和数据流在图3中被突出显示。fps 3100执行http到https的转换、安全jwt令牌插入和url路径代理服务,以将客户端请求重定向到正确的外部web服务。fps 3100允许fca web客户端开发应用,而不考虑安全性或网络安全策略。这对于将代理服务应用于基于容器的iot网关是独特的特征。
47.数据流3000是相对于fca客户端3200、fps 3100、oauth2服务器(认证服务器)3300和web服务3400(所请求的服务)来描述的。
48.操作上,当fca 3200接收客户端请求3500(3600)并且需要发出外部http服务请求时,相关联的docker将请求3500重定向到fps 3100(3610)。docker环境允许设置全局代理服务器ip地址。作为重定向的一部分,请求ip地址被置于http报头中以形成http消息3510,因此fps 3100可以在以后正确地将所述请求前向到外部服务。
49.当fps 3100接收到请求3510时,fps 3100通过其内部ip地址确定哪个fca客户端发送了该请求。fps 3100使用所述ip地址来搜索客户端令牌凭证3150列表,以从客户端凭证数据库3110中找到正确的客户端凭证(3620)。所述凭证包括oauth2安全令牌、令牌生存时间(ttl)、oauth2客户端id和oauth2秘密。所检查的第一项是ttl。如果ttl已经到期或将要到期,则从oauth2服务3300请求新令牌(3630)。fps 3100使用客户端凭证授权服务来获得新令牌。fps 3100生成新令牌请求api,并包括客户端id和秘密。在发送消息之前验证ttl有助于减少超时消息的数量并改善消息等待时间。http报头具有被称为授权的标准请求报头。一旦fps 3100接收到令牌(3640),fps 3100将“授权”类型“承载”密钥附加到jwt令牌,并将其插入到所述请求http授权报头中。
50.然后fps 3100执行与所请求的服务3400的tls握手,以创建会话加密密钥(3650)。tls是实现完美前向安全性的密钥协商协议。这确保了从先前消息中提取的信息不向所有正在前向的消息提供加密细节。如果所请求的web服务不支持https,则终止该请求。pfs 3100将只与支持tls的安全web服务对话。
51.fps 3100使用所述tls加密密钥来执行http到https加密以形成https消息3520。tcp报头和数据报都被加密。tcp报头加密保护了令牌不被复制和插入到恶意https请求中。然后,https帧被发送到所请求的服务(3660)。来自fps 3100的所有消息传送是出站的。不接受入站请求。
52.所述https消息由所请求的服务3400接收。所请求的服务3400使用会话密钥来解密所述tcp报头和数据报(3670)。所请求的服务从tcp报头提取令牌,并且利用从oauth2服务器(认证服务器)3300接收的oauth2 x.509公共证书对其进行解密(3680)。然后,所请求的服务3400从jwt提取ttl,并验证它仍然有效。如果ttl到期,服务3400以http响应代码403“禁止”来响应。如果ttl仍然有效,则服务将提取设备id并对照期望的设备id来验证它。如果设备id未被识别,则服务3400将以401“未授权”来响应。如果识别出设备id,则所请求的服务3400验证正确的范围或授权。如果所述范围不正确,则服务以401响应。如果所述范围
正确,则请求服务以所述请求来响应(3690)。
53.fps是实现docker容器安全性的一种新方法。fps允许创建其自身fca的工厂容易地利用现代数据安全性。fps框架允许工厂工程师使用简单的http请求来开发数据交换应用。fps自动插入认证和授权,并执行http到https的转换。消除了管理握手、加密密钥和认证令牌的复杂性,并且提供了强大的现代网络安全性。
54.图4是由安全反向代理rpc或反向代理服务(rps)4100提供的反向代理安全服务数据流4000的框图。rps 4100处理所有外部入站ifg web服务请求。rps功能组织和数据流在图4中突出显示。rps执行https到http的转换、安全jwt令牌验证和url路径重定向,以处理各种客户端服务请求。rps 4100允许fcs web服务开发应用,而不考虑安全性或网络安全策略。这对于将代理服务应用于基于容器的iot网关是独特的特征。rps 4100处理来自外部客户端的web服务请求。所有的输入请求必须是https,并且使用ifg注册的安全jwt。如果两者都不是https会话的一部分,则忽略该请求而不响应。
55.数据流4000是相对于fca客户端4200、rps 4100、oauth2服务器或服务(认证服务器)4300以及客户端服务4400来描述的。
56.所述客户端服务4400首先执行tls握手以获得安全会话密钥(4600)。rps 4100具有其自己的私有x.509证书。响应于接收到请求或消息,客户端服务4400请求这些证书,验证它,并提取rps公钥(4610)。然后,客户端服务4400使用该公钥执行安全握手,以创建安全会话密钥。此时,rps 4100和客户端4400都使用安全会话密钥交换安全数据。如果你回想,安全jwt授权是由客户端4400发送的http报头的一部分。客户端4400负责使用其客户端id和秘密从oauth2服务器4300获得jwt(4620)。oauth2服务器4300返回加密的令牌(4630)。客户端4400将该令牌连同在追加到该令牌的“承载”一起放置在http授权报头中。通过使用所述安全会话凭证,对所述http报头连同数据报进行加密。连同所述jwt一起加密所述http有助于消除“中间人”攻击。
57.所述客户端4400现在将会话帧发送到rps(4640)。rps 4100在tls握手期间已经验证了客户端安全协议。rps 4100利用预先协商的会话密钥来解密https报头和消息。rps 4100提取jwt,并用从oauth2服务器4300获得的oauth2公钥对其进行解密(4650)。从所述令牌中提取所述客户端id、范围和ttl。
58.rps 4100首先验证所述ttl没有到期。如果期满,rps 4100以403“禁止”http响应代码来响应客户端4400。接下来,rps 4100通过验证所述客户端id在服务目录4500中来验证客户端4400具有访问特定rps web服务的许可。如果不是,rps 4100用401“未授权”http响应代码来响应客户端4400。验证所述客户端id是认证。
59.rps 4100接着验证所述请求的范围与在所述服务目录4500中识别的属性匹配。范围标识了客户端4400可以访问什么服务。如果所述范围不匹配所述服务目录中的内容,则将401返回给客户端4400。所述范围验证是授权。
60.rps 4100使用统一资源标识符(uri)路径重定向将所述客户端请求定向到正确的服务(4660)。客户端请求uri被定义如下:http://host:port/path?query#fragment具体地,利用以下uri请求来向rps 4100进行请求:http://host:port/api/rps_servicename/?query
61.路径是“/api/rps_servicename/”。api将所述服务标识为应用编程接口(api)。“rps_servicename”提供路径方向。rps 4100提取“rps_servicename”并建立新的url和http消息。所述服务目录4500具有关于所述服务与提供该服务的特定容器的ip地址的键值对
‑‘
rps_servicename’:’rps_ip_address’。rps4100以如下形式转发所述请求:http://rps_ip_address/?query
62.在内部,相关联的docker找到正确docker容器服务的ip地址,并且递送消息。
63.rps是实现docker容器安全性的新方法。它允许创建其自己的fca的工厂容易地利用现代数据安全性。rps框架允许工厂工程师使用简单的http请求来开发数据交换应用。rps自动执行http到https的转换,管理x.509证书,并认证和授权web服务访问。消除了管理握手、x.509证书、加密密钥和安全jwt令牌的复杂性。rps以非常简单的编程框架提供了强大的现代网络安全性。
64.机器安全封装
65.图5是包括安全机器局域网(lan)隔离5100的机器安全封装5000的框图。
66.mse 5000提供了用于igf、工厂机器和工厂网络的封装安全的独特形式。在过去的二十年中,smt产业已经惊人地发展。大多数包含了用于命令、控制和数据交换的网络连接。然而,大多数没有采用现代网络和数据安全。工厂网络工程师发现他们自己具有大量新的和传统的机器,这些机器具有不同程度的网络和数据安全性。尽管一些可以结合安全特征,但是大多数根本没有安全性。
67.大多数现代工厂网络和数据安全策略包括了网络隔离-它们将机器网络与公司网络隔离,并且从不将它们暴露于因特网。一些访问被允许通过防火墙“针孔(pin-holes)”而进行,但是对于大部分机器访问通常是麻烦和复杂的。ifg架构提供了一种被称为mse的安全封装形式,其允许到公司和因特网lan的隔离lan连接。mse 5000允许内部公司用户以及客户容易且方便地访问工厂机器。
68.大多数smt工厂网络被隔离以防止未授权的入侵。使用spcs的ifg架构5200可以容易地允许对公司网络和因特网网络的桥接访问。ifg架构5200是无状态和不持久的安全服务。ifg架构5200不提供从其隔离的lan到公司5300或因特网lan 5400的直接访问。所有入站或出站请求必须通过spcs。所有sps入站或出站请求均被加密、认证和授权。spcs提供鲁棒的http到https加密以及安全oauth2 jwt认证和授权。
69.oauth2服务器通过使用凭证委托来控制可以谁可以访问和什么服务可被访问。大多数现代公司利用商业oauth2服务来管理所有安全访问。这样的服务提供了作为其公司政策的一部分而集成的全球安全访问服务。mes安全性很容易适合这种策略,并且为否则将被隔离的网络提供即时封装安全性。
70.应用于基于docker的iot工厂网关技术的spsc技术提供了一种方便和安全的安全实现方法。通过使用fps和rps以及http到https的转换,使得消息加密不复杂。fps验证所请求的服务具有用于加密的有效x.509证书。它还管理安全jwt oauth生成和http报头插入。rps处理https到http的转换,管理验证,并管理rps证书。它还验证正确的jwt认证和授权。
71.spsc还提供机器安全封装。这使得能够实现围绕迄今为止没有任何安全性的机器的安全封装护罩。spsc mse为制造系统提供了极好的现代安全性。
72.安全代理安全服务使得基于容器的应用的现代安全性容易和方便。应用开发者不
再需要精通最新的安全协议和技术。spsc处理基于容器的应用安全的所有方面。
73.图6是根据本公开的实施例的设备6000的示例的框图。该设备6000可以包括但不限于处理器6100、存储器/存储设备6200、通信接口6300和应用6400。所述设备6000可以包括或实现例如本文描述的设备和元素。所述设备6000可以包括实现本文描述的设备、系统、组成和方法可能期望或必需的其他元素。然而,因为这些元素和步骤在本领域中是公知的,并且因为它们并不有助于更好地理解所公开的实施例,所以在此可能不提供对这些元素和步骤的讨论。
74.首字母缩写词和缩写
75.一种用于需要最先进加密的基于容器的应用的方便和安全系统。通过使用基于容
器的安全代理,基于容器的应用可以使用一组公共的安全代理来处理所有的加密、认证和授权。
76.一种用于基于客户端的容器的前向代理安全服务。当进行容器服务内的任何客户端http请求时,fps捕获该请求。它首先检索基于oauth2的jwt并将其作为承载插入到http报头中。然后,它与目标服务进行tls握手,并创建公共同步完美前向安全加密密钥。通过使用该密钥,它加密所述客户端请求并将其转发给目标服务。
77.一种用于基于web服务的容器的反向代理安全服务。当外部客户端向rps发出基于https web服务的请求时,其首先使用rps x.509密钥进行https到http的转换。rps然后提取oauth2 jwt令牌,并且使用oauth2外部服务器公共x.509密钥来解密。然后,它提取解密的jwt并验证该外部客户端被批准访问该服务。然后,它提取jwt范围以确保客户端正在尝试执行的服务类型是被授权的。如果这些条件中的任何一个不满足,则拒绝所述请求并且rps丢弃会话连接。
78.一种机器安全封装方案,其为迄今为止没有任何安全性的机器提供现代数字安全性。mse封装没有安全性的机器,并且提供围绕该机器的现代数字安全围栏。除非请求被加密、认证和授权,否则不允许对该机器的访问。
79.尽管本文的一些实施例涉及方法,但是本领域技术人员将理解,它们也可以被实现为系统或计算机程序产品。因此,本发明的各方面可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或组合软件和硬件方面的实施例(其在本文中可以统称为“处理器”、“设备”或“系统”)的形式。此外,本发明的各方面可以采取在其上包含计算机可读程序代码的一个或多个计算机可读介质中包含的计算机程序产品的形式。可以利用一个或多个计算机可读介质的任何组合。所述计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。所述计算机可读存储介质可以是例如但不限于:电、磁、光、电磁、红外或半导体系统、装置或设备,或前述的任何合适的组合。所述计算机可读存储介质的更具体的示例(非穷举列表)包括以下:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、光纤、便携式光盘只读存储器(cd-rom)、光存储设备、磁存储设备、或前述的任何合适的组合。在本文档的上下文中,计算机可读存储介质可以是任何有形介质,其可以包含或存储由指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合使用的程序。
80.计算机可读信号介质可以包括例如在基带中或者作为载波的一部分传播的数据信号,其中所传播的数据信号具有在其中体现的计算机可读程序代码。这种传播信号可以采取多种形式中的任何一种,这其中包括但不限于电磁、光或其任何合适的组合。计算机可读信号介质可以是不是计算机可读存储介质并且可以传送、传播或传输由指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合使用的程序的任何计算机可读介质。
81.可以使用任何适当的介质来传输在计算机可读介质上实施的程序代码,所述任何适当的介质包括但不限于cd、dvd、无线、有线、光纤电缆、rf等或前述的任何适当组合。
82.用于执行本发明的各方面的操作的计算机程序代码可以以一种或多种编程语言的任意组合来编写,所述编程语言包括诸如java、smalltalk、c 等的面向对象的编程语言以及诸如“c”编程语言或类似的编程语言的传统的过程编程语言。所述程序代码可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为独立的软件包执行,部分在用户
的计算机上并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,所述远程计算机可以通过任何类型的网络(所述网络包括局域网(lan)或广域网(wan))连接到用户的计算机,或者可以连接到外部计算机(例如,使用因特网服务提供方通过因特网)。
83.在此参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各方面。将理解,所述流程图和/或框图的每个框以及所述流程图和/或框图中的框的组合可以由计算机程序指令实现。
84.这些计算机程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令,创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机程序指令也可以存储在计算机可读介质中,其可以引导计算机、其他可编程数据处理装置或其他设备以特定方式运行,使得存储在所述计算机可读介质中的指令产生包括实现流程图和/或框图的一个或多个框中指定的功能/动作的指令的制品。
85.所述计算机程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在所述计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而在所述计算机或其他可编程装置上执行的指令提供用于实现流程图和/或框图的一个或多个框中指定的功能/动作的过程。
86.附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示代码的模块、片段或部分,其包括用于实现指定的逻辑功能(一个或多个)的一个或多个可执行指令。还应当注意,在一些备选实现中,框中所标注的功能可以不按图中所标注的顺序发生。
87.虽然已经结合某些实施例描述了本公开,但是应当理解,本公开不限于所公开的实施例,而是相反,本公开旨在覆盖包括在所附权利要求的范围内的各种修改、组合和等效布置,所附权利要求的范围符合最广泛的解释,以便涵盖法律所允许的所有这样的修改和等效结构。
再多了解一些

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

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

相关文献