CN116127418A - 容器应用授权方法、装置及计算机设备 - Google Patents
容器应用授权方法、装置及计算机设备 Download PDFInfo
- Publication number
- CN116127418A CN116127418A CN202310397706.5A CN202310397706A CN116127418A CN 116127418 A CN116127418 A CN 116127418A CN 202310397706 A CN202310397706 A CN 202310397706A CN 116127418 A CN116127418 A CN 116127418A
- Authority
- CN
- China
- Prior art keywords
- authorization
- application
- token
- information
- container application
- 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.)
- Granted
Links
- 238000013475 authorization Methods 0.000 title claims abstract description 359
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000004590 computer program Methods 0.000 claims abstract description 23
- 238000004064 recycling Methods 0.000 claims abstract description 8
- 238000012795 verification Methods 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 20
- 238000013507 mapping Methods 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 9
- 238000002372 labelling Methods 0.000 claims description 4
- 230000035755 proliferation Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 14
- 239000003795 chemical substances by application Substances 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02W—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO WASTEWATER TREATMENT OR WASTE MANAGEMENT
- Y02W90/00—Enabling technologies or technologies with a potential or indirect contribution to greenhouse gas [GHG] emissions mitigation
Abstract
本申请涉及一种容器应用授权方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。一个实施例中,通过获取授权许可信息,可以得到用于对应用授权的授权信息,根据授权信息可以生成授权令牌桶和一定数量的授权令牌;在接收到应用的授权请求后,可以向应用发送授权令牌以供应用获得授权许可;在应用结束运行后,还可以回收已发送给该应用的授权令牌。这样,通过限制授权令牌的数量,可以保证厂商提供的授权信息不被滥用。此外,通过发放和回收令牌,既可以为应用提供授权许可,又可以保证令牌桶中授权令牌的数量维持在一定数目,满足了容器化环境下应用激增的授权需求,有效解决了容器消亡引起的应用漂移问题。
Description
技术领域
本公开涉及数据识别领域,尤其涉及一种容器应用授权方法、装置及计算机设备、计算机可读存储介质和计算机程序产品。
背景技术
随着微服务的盛行和容器化的广泛应用,传统的物理机和虚拟机环境越来越难以适应软件应用的研发需求,使用Docker等容器引擎来开发应用逐渐成为主流。物理机和虚拟机环境通常较为稳定,不易发生变化,应用在这种环境中请求授权的过程较为简单。
然而,在容器化环境下,应用服务的运行时机和运行的节点可能会随时漂移,若应用所在的容器消亡,应用也将一同被销毁。此外,运行时的软件配置和需要的资源如CPU、内存等也是可以进行按需手动或自动的进行弹性配置。应用的授权实质上是一种应用身份数据的识别和验证过程,授权方和被授权应用需要进行数据交换和识别后实现授权。在这种情况下,以往的授权模式与容器化环境下的应用运行模式难以适配,应用的授权成为一大难题。
发明内容
基于此,针对上述技术问题,提供一种容器应用授权方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。本公开的技术方案如下:
根据本公开实施例的一个方面,提供一种容器应用授权方法,执行于与容器应用和软件提供方进行通信的授权服务端,所述方法包括:
获取应用软件的授权许可信息;所述授权许可信息包括授权信息和所述授权信息的最大许可数量;
根据所述授权信息,生成若干个授权令牌;所述授权令牌的数量不超过所述最大许可数量;所述授权令牌用于被应用激活时提供所述授权信息;
响应于容器应用的授权请求,向所述容器应用发送所述授权令牌;
在所述容器应用结束运行后,回收所述授权令牌。
在其中一个实施例中,所述授权许可信息包括硬件验证信息,所述响应于容器应用的授权请求,向所述容器应用发送授权令牌,包括:
接收容器应用的授权请求,获取所述容器应用所在物理机的目标硬件特征;
确认所述目标硬件特征与所述硬件验证信息是否一致,若一致,向所述容器应用发送授权令牌。
在其中一个实施例中,在根据所述授权信息,生成若干个授权令牌之后,还包括:
获取容器应用所在物理机的硬件特征;
对所述硬件特征进行标签化,得到特征标签并将所述特征标签发送给所述物理机;
根据所述特征标签形成许可标签,并将所述许可标签添加到所述授权令牌中;所述授权令牌被应用激活时执行以下操作:验证所述应用所在物理机是否存在与所述许可标签一致的特征标签,若存在,提供所述授权信息。
在其中一个实施例中,在根据所述特征标签形成许可标签,并将所述许可标签添加到所述授权令牌中之后,还包括:
根据所述许可标签对所述授权令牌进行分类,根据分类结果生成多个授权令牌桶;
将同一类别的授权令牌放入一个授权令牌桶;所述授权令牌桶用于根据容器应用的授权请求向所述容器应用发送所述授权令牌。
在其中一个实施例中,在将同一类别的授权令牌放入一个授权令牌桶之后,还包括:
获取预设范围内容器应用的运行分布状态;
根据所述运行分布状态,建立所述预设范围内容器应用与所述授权令牌桶的映射关系。
在其中一个实施例中,在响应于容器应用的授权请求,向所述容器应用发送所述授权令牌之后,还包括:
检测所述容器应用的响应状态,若在预设时段内未得到响应,收回所述授权令牌。
根据本公开实施例的另一方面,提供一种容器应用授权装置,包括:
授权信息获取模块,用于获取应用软件的授权许可信息;所述授权许可信息包括授权信息和所述授权信息的最大许可数量;
令牌生成模块,用于根据所述授权信息,生成若干个授权令牌;所述授权令牌的数量不超过所述最大许可数量;所述授权令牌用于被应用激活时提供所述授权信息;
令牌发送模块,用于响应于容器应用的授权请求,向所述容器应用发送所述授权令牌;
令牌回收模块,用于在所述容器应用结束运行后,回收所述授权令牌。
根据本公开实施例的另一方面,还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
根据本公开实施例的另一方面,还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
根据本公开实施例的另一方面,还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本公开实施例提供的技术方案中,可以识别当前物模型,得到当前物模型对应于标准物模型的可转换类型,根据该类型可以获取标准物模型的第一映射配置并将当前物模型转换为中间模型;此外,还可以获取目标物模型对应于标准物模型的可转换类型,进而得到标准物模型的第二映射配置,根据第二映射配置可以将中间模型转换为目标物模型。这样,通过预先定义好的标准物模型,结合标准物模型的不同映射配置,可以将当前物模型、目标物模型分别与标准物模型进行转换,最终可以实现由当前物模型转换为目标物模型的过程,且该过程可以无需人工介入,实现方式简单,有效解决了物联网平台之间的数据交互问题。此外,还可以通过增加标准物模型映射配置的方式,将其他物联网平台定义的物模型也纳入转换范围,适用性更强,可扩展性高。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
为了更清楚地说明本说明书实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是一个实施例中一种容器应用授权方法的流程示意图;
图2是一个实施例中响应于授权请求向应用发送授权令牌的流程示意图;
图3是一个实施例中对硬件特征标签化并形成许可标签的流程示意图;
图4是一个实施例中对授权令牌进行分类的流程示意图;
图5是一个实施例中建立应用与授权令牌桶之间映射关系的流程示意图;
图6是另一个实施例中一种容器应用授权方法的流程示意图;
图7是一个实施例中生成授权令牌和令牌桶的示意图;
图8是一个实施例中授权服务中心发放和回收授权令牌的示意图;
图9是一个实施例中一种容器应用授权装置的结构示意图;
图10是一个实施例中一种计算机设备的内部结构示意图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。例如若使用到第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
除非另有定义,本文所使用的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义可以相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”、“和/或”、“至少…之一”包括一个或多个相关的所列项目的任意的和所有的组合。需要说明的是,本公开中所描述的相连、连接等,可以是通过器件间的接口或引脚直接连接,也可以是通过引线连接,还可以是通过无线连接(通信连接)。
应用的启动和运行通常需要得到厂商的授权许可,由于厂商无法时刻保持与应用通讯进行授权,因此厂商一般会发布一定数量的授权信息,应用得到授权信息即可得到授权。
在物理机和虚拟机时代,应用所处的环境较为稳定,应用请求授权频率低,授权过程简单。但随着容器技术的发展,应用越来越多地被部署在容器环境中,而非传统的计算机环境中,由于应用伴随着容器环境会随时消亡和产生,应用请求授权的频率激增,厂商提供的授权信息往往是固定的,无法匹配大量授权需求,若无限制发放授权信息,则又将造成授权信息的滥用,引起安全隐患。
针对上述问题,根据本公开实施例的一个方面,如图1所示,提供一种容器应用授权方法,可以应用于与容器应用和软件提供方进行通信的授权服务端,所述授权服务端可以是独立的服务器或终端,所述软件提供方可以是所述容器应用的软件厂商提供的终端设备等,所述授权方法包括:
步骤S210,获取应用软件的授权许可信息;所述授权许可信息包括授权信息和所述授权信息的最大许可数量。
其中,所述应用软件可以是授权服务端处理的软件,例如某些办公软件、仿真软件、图像处理软件等。授权信息可以包括软件厂商发布的授权码等验证信息,应用通过授权信息可以成功得到授权许可。所述最大许可数量可以是厂商允许提供的授权信息的最大数目。
具体地,可以向授权服务端中预先导入厂商发布的授权许可信息,确定授权信息以及授权信息的数量。在一些具体的实施方式中,可以通过非对称加密等方式导入授权许可信息,保证数据的安全性。在一些其他实施方式中,也可以预先通过联网方式加密所述授权许可信息,授权服务端通过加密方式获取授权许可信息。
应当说明的是,所述授权服务端与软件提供方进行通信,可以是授权服务端通过访问软件厂商的网站获取相关的授权信息,也可以是与软件厂商指定的服务器或终端通过联网方式进行授权信息等数据的交换,还可以是通过导入带有授权信息等数据的存储介质等进行通信,所述授权信息由软件厂商提供。
步骤S220,根据所述授权信息,生成若干个授权令牌;所述授权令牌的数量不超过所述最大许可数量;所述授权令牌用于被应用激活时提供所述授权信息。
其中,授权令牌中至少包括一条授权信息,所述授权信息用于授予应用全部或部分的权限。
具体地,授权服务端可以通过令牌桶等算法生成若干个包含授权信息的授权令牌,并可以将授权令牌放入授权令牌桶中。
步骤S230,响应于容器应用的授权请求,向所述容器应用发送所述授权令牌。
其中,所述容器应用为部署在容器中的应用。例如,可以将上述应用软件被具体部署到计算机的容器环境,得到一个在容器中存在的具体的应用。所述容器存在于计算机中,所述计算机可以与所述服务器或所述终端进行通讯。
具体地,容器中的应用可以向授权服务端发出授权请求,在接收到应用的授权请求后,授权服务端控制授权令牌桶向应用发送授权令牌。容器应用可以接收并消费所述授权令牌,授权令牌被消费激活后向应用提供授权信息,应用通过授权信息可以获得许可并激活软件全部或部分的功能。
步骤S240,在所述容器应用结束运行后,回收所述授权令牌。
具体地,当所述容器应用结束运行或消亡后,可以回收所述容器应用返还的授权令牌并重新放入授权令牌桶。在一些其他实施方式中,授权服务端还可以周期性地检测所述容器应用的存在状态,若容器应用已不存在,则可以收回向其发送的授权令牌。
应当说明的是,所述授权令牌桶中授权令牌的总数是固定的,通过回收已发放的令牌来补充令牌桶中的令牌数量。
本公开实施例提供的技术方案中,通过获取厂商的授权许可信息,可以得到用于对应用授权的授权信息,根据授权信息可以生成授权令牌桶和一定数量的授权令牌;在接收到应用的授权请求后,可以向应用发送授权令牌以供应用获得授权许可;在应用结束运行后,还可以回收已发送给该应用的授权令牌。这样,通过限制授权令牌的数量,可以保证厂商提供的授权信息不被滥用。此外,通过发放和回收令牌,既可以为应用提供授权许可,又可以保证令牌桶中授权令牌的数量维持在一定数目,满足了容器化环境下应用激增的授权需求,有效解决了容器消亡引起的应用漂移问题。
在一个实施例中,所述授权许可信息包括硬件验证信息,如图2所示,所述响应于容器应用的授权请求,向所述容器应用发送授权令牌,包括:
步骤S2302,接收容器应用的授权请求,获取所述容器应用所在物理机的目标硬件特征。
其中,物理机是搭建应用所处容器环境的计算机或具备搭建容器环境的其他电子设备。目标硬件特征可以是与厂商发布的硬件验证信息相关的特定硬件特征。
具体地,授权服务端可以与容器应用所在的物理机进行通讯,接收到来自应用的授权请求后,可以获取所述物理机的硬件特征。例如,可以预先在物理机中部署agent(探针,一种数据采集和监控软件,可以安设在物理机、虚拟机等系统上运行),通过agent收集物理机的硬件序列号、CPU核心数、内存规格等特定硬件特征,并将收集到的特征信息发送给授权服务端。
步骤S2304,确认所述目标硬件特征与所述硬件验证信息是否一致,若一致,向所述容器应用发送授权令牌。
其中,硬件验证信息为厂商对应用运行的硬件环境的要求,可以包括硬件序列号、CPU核心数、内存规格等信息。所述硬件验证信息可以由厂商发布的授权许可信息得到,用于限制应用所在的物理机环境。
具体地,可以将agent发送的硬件特征与授权许可信息中的硬件验证信息进行比对,若agent收集的特征与硬件验证信息一致,则可以向应用发送授权令牌。在一些具体的实施方式中,硬件验证信息可以是范围区间,例如,序列号在一定范围内、CPU核心数在1~4个之内等,若agent收集的物理机硬件特征在所述范围区间内,可以向该物理机中请求授权的应用发送授权令牌。
上述实施例中,在收到应用的授权请求后,通过预先安装在物理机上的agent,可以得到应用所在物理机的硬件特征,再将该硬件特征与厂商发布的硬件验证信息进行比对,在物理机硬件特征与厂商要求的硬件特征一致的情况下,向应用发送授权令牌。这样,通过收集并验证应用所在物理机的硬件特征,可以保证应用处于厂商要求的合法硬件环境下成功获取授权许可,避免应用在厂商禁止的硬件环境中运行,提高了应用运行的安全性。
在一个实施例中,如图3所示,在根据所述授权信息,生成若干个授权令牌之后,还包括:
步骤S222,获取容器应用所在物理机的硬件特征。
其中,物理机是搭建应用所处容器环境的计算机或具备搭建容器环境的其他电子设备。
具体地,授权服务端可以与容器应用所在的物理机进行通讯,可以通过预先在物理机中部署agent等方式收集物理机的各项硬件特征,并将收集到的特征信息发送给授权服务端。
步骤S224,对所述硬件特征进行标签化,得到特征标签并将所述特征标签发送给所述物理机。
具体地,可以给接收的物理机各项硬件特征打上标签,例如可以根据CPU芯片的型号产生C1、C2、C3等特征标签,也可以根据内存规格产生M1、M2、M3等特征标签,授权服务端可以根据agent收集到的硬件特征,将相应的标签发送给agent所在的物理机。
步骤S226,根据所述特征标签形成许可标签,并将所述许可标签添加到所述授权令牌中;所述授权令牌被应用激活时执行以下操作:验证所述应用所在物理机是否存在与所述许可标签一致的特征标签,若存在,提供所述授权信息。
具体地,可以根据应用特点在特征标签中选取部分标签作为许可标签,将许可标签添加到授权令牌中,利用许可标签对应用所在物理机环境进行二次检验。例如,若应用的某些特殊功能对CPU芯片有一定的要求,可以将符合该要求的CPU芯片对应的特征标签作为许可标签,并将该许可标签添加到授权令牌中,所述授权令牌中的授权信息对应于所述特殊功能的授权许可;由于物理机中含有授权服务端发放的特征标签,该物理机在得到授权令牌并激活该令牌时,可以将令牌中的许可标签与物理机已有的特征标签进行匹配,若特征标签中存在与许可标签一致的标签,则可以获得授权令牌中的授权信息;若物理机中的特征标签与许可标签均不一致,则无法获得授权令牌中的授权信息。
上述实施例中,可以根据应用特点选取部分硬件特征作为许可标签,并将许可标签添加到授权令牌中。这样,在该应用对硬件环境有特殊要求时,即使应用可以得到授权令牌,也会因为不具有与许可标签匹配的硬件特征而无法授权,避免应用在违规环境下被启动运行,将机器特征形成的标签作为容器调度的参考,实现了设备特征标签化和授权总量控制相结合的授权方式。
在一个实施例中,如图4所示,在根据所述特征标签形成许可标签,并将所述许可标签添加到所述授权令牌中之后,还包括:
步骤S2262,根据所述许可标签对所述授权令牌进行分类,根据分类结果生成多个授权令牌桶。
具体地,可以根据授权令牌中许可标签的类型进行分类,例如可以将包含表示CPU芯片型号许可标签的授权令牌分为一类,将包含表示硬件序列号许可标签的授权令牌分为一类等,并根据分类得到的类别生成多个授权令牌桶,所述授权令牌桶的数量与授权令牌的种类相同。
步骤S2264,将同一类别的授权令牌放入一个授权令牌桶;所述授权令牌桶用于根据容器应用的授权请求向所述容器应用发送所述授权令牌。
具体地,对授权令牌分类完成后,可以将同一类别的授权令牌放入同一个授权令牌桶。
上述实施例中,可以通过对授权令牌进行分类,将对物理机硬件特征有验证要求的授权信息分散到不同的授权令牌桶中,便于对不同类别的授权令牌进行管理,提高了应用授权效率。
在一个实施例中,如图5所示,在将同一类别的授权令牌放入一个授权令牌桶之后,还包括:
步骤S2266,获取预设范围内容器应用的运行分布状态。
具体地,授权服务端可以与预设范围内的物理机进行通讯,并获取这些物理机上各容器应用的运行分布状态。
步骤S2268,根据所述运行分布状态,建立所述预设范围内容器应用与所述授权令牌桶的映射关系。
具体地,授权服务端可以根据各应用的运行分布状态,结合管理的授权令牌桶中授权令牌的类别和数量,建立容器应用与令牌桶之间的映射关系。这样,当应用向授权服务端发出授权请求时,可以按照该映射关系直接关联到相应的令牌桶。例如,授权服务端中具有第一令牌桶、第二令牌桶,其中第一令牌桶中授权令牌包含的授权信息用于授予应用全部功能权限,第二令牌桶中授权令牌包含的授权信息用于授予应用部分功能权限,根据映射关系,一些特定物理机可以获取第一令牌桶中的令牌,其他物理机则只可以获取第二令牌桶中的令牌。
上述实施例中,通过应用的运行分布状态,可以提前建立各应用与授权令牌桶之间的映射关系,使不同硬件环境下的应用关联与自身环境相匹配的令牌桶,实现了授权令牌的合理调度,既可以保证授权过程的安全性,也可以加快授权速度,提高授权效率。
在一个实施例中,如图6所示,在响应于容器应用的授权请求,向所述容器应用发送所述授权令牌之后,还包括:
步骤S232,检测所述容器应用的响应状态,若在预设时段内未得到响应,收回所述授权令牌。
具体地,可以定时或周期性地通过发送测试信息等方式检测容器应用的响应状态,若在预设时段(如30秒)内没有得到应用回复的响应信息,则应用可能出现异常状况,此时可以收回向该应用发放的授权令牌。
上述实施例中,通过检测容器应用的响应状态,可以在应用出现异常时,及时回收授权令牌,可以避免授权信息资源的浪费,也可以防止授权信息因应用异常而被不当利用。
为进一步体现本公开方案的有益效果,下面结合一个具体的应用场景进行说明:
图7是一个实施例中生成授权令牌和令牌桶的示意图。在一个实施例中,可以通过独立的授权服务中心来进行软件的授权操作,所述授权服务中心可以是上述各实施例中所说的授权服务端。如图7所示,授权服务中心可以通过导入含有厂商发布信息的存储介质等方式获取授权许可信息,也可以通过联网的方式获取授权许可信息,这些授权许可信息中包括一定数量的授权信息以及特征验证信息等;此外,授权服务中心还可以通过agent收集物理机的硬件特征,并根据硬件特征设置标签,根据授权信息、特征验证信息、特征标签等信息生成授权令牌和令牌桶。
图8是授权服务中心发放和回收授权令牌的示意图。如图8所示,授权服务中心接收容器应用的授权请求,并通过令牌桶向容器应用发放授权令牌,应用接收令牌后可以利用令牌中的授权信息完成授权。若授权令牌中还存在特征验证信息和/或与硬件特征相关的标签,则需要先将应用所在物理机的硬件特征与所述特征验证信息和/或标签进行匹配,匹配成功后才可以利用令牌中的授权信息。例如,授权服务中心根据agent上报的物理机硬件特征,向物理机A发放了一个CPU序列号为C1的标签,令牌桶中的授权令牌也添加了C1标签,物理机A和物理机B中的应用都可以从令牌桶获得授权令牌,但只有物理机A中存在对应的标签,物理机B中的应用无法利用授权令牌中的授权信息并授权应用运行。此外,容器应用运行结束或者容器应用消亡后,将已接收的授权令牌返还给授权服务中心的令牌桶,保证授权令牌不会丢失。
上述实施例中,通过单独设立授权服务中心来收集厂商发布的授权信息以及应用所在物理机的硬件特征,可以综合授权信息和物理机特征生成授权令牌,并通过令牌桶来控制授权应用的数量,既可以简化授权流程,又可以保证授权总量上的管控,避免授权信息被滥用。此外,授权服务中心可以综合物理机和授权信息,通过对物理机标记不同的标签,可以使授权在一定程度上和硬件设备相关,以减少授权后应用在任意设备上运行可能性,提高应用授权的安全性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
根据本公开实施例的另一方面,如图9所示,还提供一种容器应用授权装置,包括:
授权信息获取模块310,用于获取应用软件的授权许可信息;所述授权许可信息包括授权信息和所述授权信息的最大许可数量;
令牌生成模块320,用于根据所述授权信息,生成若干个授权令牌;所述授权令牌的数量不超过所述最大许可数量;所述授权令牌用于被应用激活时提供所述授权信息;
令牌发送模块330,用于响应于容器应用的授权请求,向所述容器应用发送所述授权令牌;
令牌回收模块340,用于在所述容器应用结束运行后,回收所述授权令牌。
关于上述授权装置的具体限定可以参见上文中对于上述授权方法的限定,在此不再赘述。根据上述授权方法,所述授权装置可以增加第一模块、第二模块等实现相应的方法实施例中的步骤。上述授权装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
根据本公开实施例的另一方面,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现上述授权方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
根据本公开实施例的另一方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random AccessMemory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。
Claims (10)
1.一种容器应用授权方法,其特征在于,执行于与容器应用和软件提供方进行通信的授权服务端,包括:
获取应用软件的授权许可信息;所述授权许可信息包括授权信息和所述授权信息的最大许可数量;
根据所述授权信息,生成若干个授权令牌;所述授权令牌的数量不超过所述最大许可数量;所述授权令牌用于被应用激活时提供所述授权信息;
响应于容器应用的授权请求,向所述容器应用发送所述授权令牌;
在所述容器应用结束运行后,回收所述授权令牌。
2.根据权利要求1所述的方法,其特征在于,所述授权许可信息包括硬件验证信息,所述响应于容器应用的授权请求,向所述容器应用发送授权令牌,包括:
接收容器应用的授权请求,获取所述容器应用所在物理机的目标硬件特征;
确认所述目标硬件特征与所述硬件验证信息是否一致,若一致,向所述容器应用发送授权令牌。
3.根据权利要求1所述的方法,其特征在于,在根据所述授权信息,生成若干个授权令牌之后,还包括:
获取容器应用所在物理机的硬件特征;
对所述硬件特征进行标签化,得到特征标签并将所述特征标签发送给所述物理机;
根据所述特征标签形成许可标签,并将所述许可标签添加到所述授权令牌中;所述授权令牌被应用激活时执行以下操作:验证所述应用所在物理机是否存在与所述许可标签一致的特征标签,若存在,提供所述授权信息。
4.根据权利要求3所述的方法,其特征在于,在根据所述特征标签形成许可标签,并将所述许可标签添加到所述授权令牌中之后,还包括:
根据所述许可标签对所述授权令牌进行分类,根据分类结果生成多个授权令牌桶;
将同一类别的授权令牌放入一个授权令牌桶;所述授权令牌桶用于根据容器应用的授权请求向所述容器应用发送所述授权令牌。
5.根据权利要求4所述的方法,其特征在于,在将同一类别的授权令牌放入一个授权令牌桶之后,还包括:
获取预设范围内容器应用的运行分布状态;
根据所述运行分布状态,建立所述预设范围内容器应用与所述授权令牌桶的映射关系。
6.根据权利要求1-5中任一项所述的方法,其特征在于,在响应于容器应用的授权请求,向所述容器应用发送所述授权令牌之后,还包括:
检测所述容器应用的响应状态,若在预设时段内未得到响应,收回所述授权令牌。
7.一种容器应用授权装置,其特征在于,包括:
授权信息获取模块,用于获取应用软件的授权许可信息;所述授权许可信息包括授权信息和所述授权信息的最大许可数量;
令牌生成模块,用于根据所述授权信息,生成若干个授权令牌;所述授权令牌的数量不超过所述最大许可数量;所述授权令牌用于被应用激活时提供所述授权信息;
令牌发送模块,用于响应于容器应用的授权请求,向所述容器应用发送所述授权令牌;
令牌回收模块,用于在所述容器应用结束运行后,回收所述授权令牌。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310397706.5A CN116127418B (zh) | 2023-04-14 | 2023-04-14 | 容器应用授权方法、装置及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310397706.5A CN116127418B (zh) | 2023-04-14 | 2023-04-14 | 容器应用授权方法、装置及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116127418A true CN116127418A (zh) | 2023-05-16 |
CN116127418B CN116127418B (zh) | 2023-06-27 |
Family
ID=86304886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310397706.5A Active CN116127418B (zh) | 2023-04-14 | 2023-04-14 | 容器应用授权方法、装置及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116127418B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1866822A (zh) * | 2005-05-16 | 2006-11-22 | 联想(北京)有限公司 | 一种统一认证的实现方法 |
US20130047244A1 (en) * | 2011-08-15 | 2013-02-21 | Bank Of America Corporation | Method and Apparatus for Session Validation to Access Third Party Resources |
CN105723375A (zh) * | 2013-11-15 | 2016-06-29 | 甲骨文国际公司 | 用于管理授权设备上操作的令牌的系统和方法 |
CN107710244A (zh) * | 2015-09-23 | 2018-02-16 | 英艾克斯图股份有限公司 | 用于安全产品标识符的内容序列化和容器 |
CN108471395A (zh) * | 2017-02-23 | 2018-08-31 | 华为技术有限公司 | 实现认证/授权的方法、装置、云计算系统及计算机系统 |
CN109716296A (zh) * | 2016-09-21 | 2019-05-03 | 瑞典爱立信有限公司 | 通过相关联容器的应用令牌 |
US20200021615A1 (en) * | 2018-07-10 | 2020-01-16 | Cisco Technology, Inc. | Container authorization policies for network trust |
CN112671720A (zh) * | 2020-12-10 | 2021-04-16 | 苏州浪潮智能科技有限公司 | 一种云平台资源访问控制的令牌构造方法、装置及设备 |
CN113271289A (zh) * | 2020-12-15 | 2021-08-17 | 全芯智造技术有限公司 | 用于资源授权和访问的方法、系统和计算机存储介质 |
CN113742660A (zh) * | 2021-08-11 | 2021-12-03 | 阿里巴巴新加坡控股有限公司 | 应用程序许可管理系统及方法 |
CN113841145A (zh) * | 2019-05-17 | 2021-12-24 | 微软技术许可有限责任公司 | 抑制集成、隔离应用中的勒索软件 |
CN113886771A (zh) * | 2021-09-29 | 2022-01-04 | 新开普电子股份有限公司 | 一种软件授权认证方法 |
CN114253660A (zh) * | 2020-09-24 | 2022-03-29 | 卡巴斯基实验室股份制公司 | 授权用户数据处理器访问用户数据的容器的系统和方法 |
WO2022240613A1 (en) * | 2021-05-11 | 2022-11-17 | Covestro Llc | Blockchain verification system for rigid systems and recycling |
CN115730291A (zh) * | 2021-08-27 | 2023-03-03 | 华为技术有限公司 | 一种保护应用程序的方法、装置和系统 |
-
2023
- 2023-04-14 CN CN202310397706.5A patent/CN116127418B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1866822A (zh) * | 2005-05-16 | 2006-11-22 | 联想(北京)有限公司 | 一种统一认证的实现方法 |
US20130047244A1 (en) * | 2011-08-15 | 2013-02-21 | Bank Of America Corporation | Method and Apparatus for Session Validation to Access Third Party Resources |
CN105723375A (zh) * | 2013-11-15 | 2016-06-29 | 甲骨文国际公司 | 用于管理授权设备上操作的令牌的系统和方法 |
CN107710244A (zh) * | 2015-09-23 | 2018-02-16 | 英艾克斯图股份有限公司 | 用于安全产品标识符的内容序列化和容器 |
CN109716296A (zh) * | 2016-09-21 | 2019-05-03 | 瑞典爱立信有限公司 | 通过相关联容器的应用令牌 |
CN108471395A (zh) * | 2017-02-23 | 2018-08-31 | 华为技术有限公司 | 实现认证/授权的方法、装置、云计算系统及计算机系统 |
US20200021615A1 (en) * | 2018-07-10 | 2020-01-16 | Cisco Technology, Inc. | Container authorization policies for network trust |
CN113841145A (zh) * | 2019-05-17 | 2021-12-24 | 微软技术许可有限责任公司 | 抑制集成、隔离应用中的勒索软件 |
CN114253660A (zh) * | 2020-09-24 | 2022-03-29 | 卡巴斯基实验室股份制公司 | 授权用户数据处理器访问用户数据的容器的系统和方法 |
CN112671720A (zh) * | 2020-12-10 | 2021-04-16 | 苏州浪潮智能科技有限公司 | 一种云平台资源访问控制的令牌构造方法、装置及设备 |
CN113271289A (zh) * | 2020-12-15 | 2021-08-17 | 全芯智造技术有限公司 | 用于资源授权和访问的方法、系统和计算机存储介质 |
WO2022240613A1 (en) * | 2021-05-11 | 2022-11-17 | Covestro Llc | Blockchain verification system for rigid systems and recycling |
CN113742660A (zh) * | 2021-08-11 | 2021-12-03 | 阿里巴巴新加坡控股有限公司 | 应用程序许可管理系统及方法 |
CN115730291A (zh) * | 2021-08-27 | 2023-03-03 | 华为技术有限公司 | 一种保护应用程序的方法、装置和系统 |
CN113886771A (zh) * | 2021-09-29 | 2022-01-04 | 新开普电子股份有限公司 | 一种软件授权认证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116127418B (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108399101B (zh) | 资源调度的方法、装置和系统 | |
CN105095970B (zh) | 第三方应用的执行方法及系统 | |
US20200286162A1 (en) | Method and server for managing shared vehicles | |
CN112528251B (zh) | 用户账号权限管理方法、装置、设备以及可读介质 | |
CN109446259B (zh) | 数据处理方法及装置、处理机及存储介质 | |
US11019493B2 (en) | System and method for user authorization | |
CN108829838A (zh) | 一种账户信息批量处理方法及服务器 | |
CN106131055A (zh) | 用于分配操作权限的方法和装置 | |
CN113157315A (zh) | 一种软件不同版本的差异信息识别方法、装置、设备及介质 | |
CN112017007A (zh) | 用户行为数据的处理方法及装置、计算机设备、存储介质 | |
CN109902493A (zh) | 脚本的下发方法及服务器 | |
Lahmar et al. | Multicloud service composition: a survey of current approaches and issues | |
CN105637542B (zh) | 信息处理装置及信息处理方法 | |
CN116127418B (zh) | 容器应用授权方法、装置及计算机设备 | |
CN112100592A (zh) | 权限管理方法、装置、电子设备和存储介质 | |
CN112084021A (zh) | 教育系统的界面配置方法、装置、设备及可读存储介质 | |
WO2023226461A1 (zh) | 一种多域数据融合的方法、装置和存储介质 | |
US20220335445A1 (en) | Multi-dimensional approach to anti-counterfeiting across different industries | |
CN103914505A (zh) | 信息管理方法和信息管理装置 | |
US10776163B1 (en) | Non-hierarchical management system for application programming interface resources | |
CN112612461A (zh) | 一种erp系统中统一管理和发布安全api接口的方法 | |
US11403685B2 (en) | Automatic distribution of licenses for a third-party service operating in association with a licensed first-party service | |
CN114625320B (zh) | 一种基于特征的混合云平台数据管理系统 | |
CN115481108B (zh) | 一种针对同一数据在不同部门之间的管理方法及系统 | |
CN109583907A (zh) | 一种电子发票的查验方法、装置、介质及电子设备 |
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 |