CN108737444A - 应用于智能机器人的微服务授权管理方法及装置 - Google Patents

应用于智能机器人的微服务授权管理方法及装置 Download PDF

Info

Publication number
CN108737444A
CN108737444A CN201810635423.9A CN201810635423A CN108737444A CN 108737444 A CN108737444 A CN 108737444A CN 201810635423 A CN201810635423 A CN 201810635423A CN 108737444 A CN108737444 A CN 108737444A
Authority
CN
China
Prior art keywords
micro services
authorization message
user
authorization
user information
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.)
Pending
Application number
CN201810635423.9A
Other languages
English (en)
Inventor
杨凯程
郭晓鹏
蒋宏飞
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.)
Beijing Xuan Yi Science And Technology Co Ltd
Original Assignee
Beijing Xuan Yi Science And Technology Co Ltd
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 Beijing Xuan Yi Science And Technology Co Ltd filed Critical Beijing Xuan Yi Science And Technology Co Ltd
Priority to CN201810635423.9A priority Critical patent/CN108737444A/zh
Publication of CN108737444A publication Critical patent/CN108737444A/zh
Priority to CN201811498204.7A priority patent/CN109561095A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • 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
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • H04L63/205Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Telephonic Communication Services (AREA)
  • Storage Device Security (AREA)

Abstract

本申请实施例提供了一种应用于智能机器人的微服务授权管理方法及装置,其中,方法可以包括:将用户信息发送给微服务的管理端;获取管理端根据所述用户信息生成加密的授权信息;校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。本申请实施例提供技术方案能够根据授权信息验证用户是否在得到授权的微服务运行环境中运行了微服务产品,以及,对微服务产品中用户可用的微服务模块和微服务节点等进行具体限制,包括限制授权节点数量和限制节点资源的规模等,从而实现了对微服务产品的有效管理。

Description

应用于智能机器人的微服务授权管理方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种应用于智能机器人的微服务授权管理方法及装置。
背景技术
微服务即微小而紧凑的服务,是一种软件架构风格。微服务以专注于单一责任与功能的小型功能区块(Small Building Blocks)为基础,实现一组独立的功能,并提供统一简捷的应用程序接口(API)供外部访问。一个大型的微服务产品由一个或多个微服务模块组成,微服务模块中可部署多个微服务节点。在微服务产品中,各个微服务模块和微服务节点可被独立部署,每个微服务节点中运行的微服务可仅关注于完成一组独立的功能,在所有情况下,每一组独立的功能代表着一个小的业务能力。
微服务产品通过利用微服务的模块化组合替代开发单个大而全的产品系统的方法,实现了产品的轻量化,每个微服务运行在自己的进程里,并以统一简捷的API进行通讯,解决了传统的整体式应用的产品系统在产品的不断迭代更新中代码越积越多、层次越做越深、逻辑越来越复杂、结构越来越混乱,从而导致的维护困难,牵一发而动全身的问题。
但是,现有技术中对微服务管理也存在一些问题。例如,微服务产品的拥有者只能通过整体授权的方式将整个微服务产品提供给使用者使用,无法实现对微服务产品中单个微服务进行管理,从而,导致使用者可以无限制地添加微服务模块或节点,并无限制地添加节点的业务资源的规模,甚至将微服务产品应用到其他业务中使用,造成微服务资源的滥用。可见,现有技术中对微服务整体授权的方法无法实现对微服务产品进行有效管理。
发明内容
本申请实施例提供了一种应用于智能机器人的微服务授权管理方法及装置,以解决现有技术中对微服务整体授权的方法无法实现对微服务进行有效管理的问题。
第一方面,根据申请实施例,提供了一种应用于智能机器人的微服务授权管理方法,包括:
将用户信息发送给智能机器人微服务的管理端;
获取管理端根据所述用户信息生成加密的授权信息;
校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
第二方面,根据申请实施例,提供了一种应用于智能机器人的微服务授权管理方法,包括:
获取用户信息;
根据所述用户信息生成加密的授权信息;
将所述授权信息提供给用户,以使用户在产品端校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
第三方面,根据申请实施例,提供了一种应用于智能机器人的微服务授权管理装置,包括:
用户信息发送单元,用于将用户信息发送给智能机器人微服务的管理端;
授权信息获取单元,用于获取管理端根据所述用户信息生成加密的授权信息;
微服务产品单元,用于校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
第四方面,根据申请实施例,提供了一种应用于智能机器人的微服务授权管理装置,包括:
用户信息获取单元,用于获取用户信息;
授权信息生成单元,用于根据所述用户信息生成加密的授权信息;
授权信息发送单元,用于将所述授权信息提供给用户,以使用户在产品端校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
由以上技术方案可知,本申请实施例提供的应用于智能机器人的微服务授权管理方法及装置,能够根据用户信息生成加密的授权信息;然后,在用户使用微服产品时校验授权信息,以及,在校验通过后根据所述授权信息获得受限制的微服务;其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。本申请实施例提供技术方案能够根据授权信息验证用户是否在得到授权的微服务运行环境中运行了微服务产品,以及,对微服务产品中用户可用的微服务模块和微服务节点等进行具体限制,包括限制授权节点数量和限制节点资源的规模等,从而实现了对微服务产品的有效管理。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为整体式软件架构和微服务软件架构的应用场景对比图;
图2为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法的流程图;
图3为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法步骤S130的流程图;
图4为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法步骤S132的流程图;
图5为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法步骤S132的流程图;
图6为本申请另一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法的流程图;
图7为本申请另一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法步骤S220的流程图;
图8为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理装置示意框图;
图9为本申请另一示例性实施例提供的一种应用于智能机器人的微服务授权管理装置示意框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
微服务即微小而紧凑的服务,是一种软件架构风格。微服务以专注于单一责任与功能的小型功能区块(Small Building Blocks)为基础,实现一组独立的功能,并提供统一简捷的应用程序接口(API)供外部访问。一个大型的微服务产品由一个或多个微服务模块组成,微服务模块中可部署多个微服务节点。在微服务产品中,各个微服务模块和微服务节点可被独立部署,每个微服务节点中运行的微服务可仅关注于完成一组独立的功能,在所有情况下,每一组独立的功能代表着一个小的业务能力。
微服务产品通过利用微服务的模块化组合替代开发单个大而全的产品系统的方法,实现了产品的轻量化,每个微服务运行在自己的进程里,并以统一简捷的API进行通讯,解决了传统的整体式应用的产品系统在产品的不断迭代更新中代码越积越多、层次越做越深、逻辑越来越复杂、结构越来越混乱,从而导致的维护困难,牵一发而动全身的问题。
图1示出了整体式软件架构和微服务软件架构的应用场景对比图。为了形象化地描述,图1用多边形图案表示软件的一个功能,用平面矩形表示一个进程,用立体矩形表示运行软件的一个服务器。从图1可以看出,整体式架构将所有功能集中到一个进程中,通过复制整个应用到多台服务器的方式实现整体式应用在多个服务器上的扩展,这种整体式扩展的方式无法围绕每个服务器各自的业务需求去组织对应的服务,层次复杂、代冗余、维护困难,无法适应快速响应的市场需求。相反地,微服务架构将每一组独立的功能单独设置在独立的进程中,形成多个微服务,通过按需布置的方式将微服务以模块化组合的方式布置在不同的服务器环境中,从而,简化了应用结构,提高了部署效率。
但是,现有技术中对微服务管理也存在一些问题。例如,微服务拥有者只能通过整体授权的方式将整个微服务产品提供给使用者使用,无法实现对微服务产品中单个微服务进行管理,从而,导致使用者可以无限制地添加微服务模块或节点(例如微服务的授权协议中规定用户只能部署5个微服务节点,但是用户却无限制的部署了超过5个节点等),并无限制地添加节点的业务资源的规模(例如用户可以无限制地增加节点的并发数量和业务知识数量等),甚至将微服务应用到其他业务中使用(例如违反授权协议将微服务产品转让、拷贝给其他用户使用等),从而导致微服务资源的滥用。可见,现有技术中对微服务整体授权的方法无法实现对微服务进行有效管理。
下述为本申请的方法实施例:
本申请一示例性实施例提供了一种应用于智能机器人的微服务授权管理方法,该方法可应用于微服务的产品端。参见图2,为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法的流程图。如图2所示,该方法可以包括以下步骤:
步骤S110,将用户信息发送给微服务的管理端。
本申请中,微服务可以是智能机器人的微服务,管理端例如可以是对产品端运行的微服务进行管理的一方,通常是微服务的拥有者,例如微服务的开发商、发行商、销售商,或者其他持有微服务所有权的一方。管理端在用户通过购买、租赁或订阅等方式获取了微服务产品后,将对应的微服务产品提供给用户,用户则获得了对应的微服务产品的使用权。
用户信息可以至少包括用户提供的微服务运行环境参数,表明用户计划在上述运行环境中部署微服务节点。例如,所述微服务运行环境参数至少包括微服务硬件环境的MAC地址、硬件ID(机器码)等。示例地,如果用户希望在5台服务器中部署微服务节点,那么,用户可提供不多于5台服务器的网卡的MAC地址;或者,用户可提供不多于5台服务器的服务器ID、处理器硬件ID或主板硬件ID等。
需要补充说明的是,一个大型的微服务产品由一个或多个微服务模块组成,这些微服务模块中包含一些承担重要功能的微服务模块,即核心微服务模块,还包括一些承担非重要功能的微服务模块,即非核心模块。本申请在对微服务进行管理时,可只需管理核心微服务模块,因此,用户可只需提供核心微服务模块的运行环境参数。
此外,用户信息还可以包括用户的公司信息或个人信息、微服务的项目用途和项目信息(例如:项目名称、项目类型、项目领域、应用场景等),以使管理端获取足够的用户信息确认用户的身份。
步骤S120,获取管理端根据所述用户信息生成加密的授权信息。
本申请中,管理端根据用户信息生成加密的授权信息。生成的授权信息中至少包括用户信息、授权节点数量和节点资源限制信息。示例地,授权信息中可以具体包括以下内容:
对上述内容使用预设的加密算法进行加密,从而生成授权信息。具体地,可以使用现有技术的对称加密算法或非对称加密算法生成授权信息,本申请实施例中对生成授权信息所使用的加密算法不做具体限定。作为示例地,使用对称加密算法,例如将要加密的内容使用AES(高级加密标准:Advanced Encryption Standard)算法进行加密,然后再使用BACE64编码对加密结果进行转码,从而生成授权信息;或者,使用非对称加密算法,例如使用RSA加密算法,将用于解密的RSA公钥内置于用户获取的微服务产品中,在管理端使用RSA私钥对要加密的内容加密,从而生成授权信息。
本申请中,授权信息可以是加密后得到的特定长度的字符串,也可以是一个可被微服务识别并读取的授权文件(License),例如,生成一个名称为*.lic的授权文件,以便于用户保管。
步骤S130,校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务。
本申请中,基本思路是用户在创建微服务应用时,在产品端输入授权信息,产品端的微服务管理模块校验授权信息,如果校验通过,那么根据授权信息提供受限制的微服务。示例地,根据授权信息中的内容,产品端对微服务的限制包括:限制微服务核心模块只能在指定运行环境参数中运行(例如:只能在具有指定MAC地址的服务器中运行);根据授权节点数量限制生效的微服务节点的数量;根据节点资源限制信息限制微服务节点的最大并发数和最大业务知识数量等。
图3为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法步骤S130的流程图,在一种可选择的实施方式中,步骤S130可以包括以下步骤:
步骤S131,获取用户在微服务管理模块中输入的所述授权信息。
本申请中,用户在创建微服务应用时,可以在微服务管理模块中输入授权信息。示例地,微服务管理模块可以提供可视化界面,用户在可视化界面的引导下将授权信息输入到微服务管理模块中,例如将授权信息的字符串输入到可视化界面中的指定窗口,或者,将包含授权信息的授权文件导入到微服务管理模块中或输入授权文件存储的物理地址。
步骤S132,根据微服务管理模块对所述授权信息的解密结果,校验所述授权信息是否有效。
本申请中,基本思路是使用解密密钥对授权信息进行解密,然后根据解密是否成功以及解密后得到的授权信息中的内容判断该授权信息是否有效。
示例地,如果授权信息是使用的是AES加密+BACE64转码生成,那么,在解密时,就先进行BACE64转码复原,然后再使用AES加密的密钥解密。如果授权信息使用的是RSA加密算法加密,那么,在解密时,使用微服务管理模块中内置的RSA公钥对授权信息进行解密。
图4为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法步骤S132的流程图。在一种可选择的实施方式中,步骤S132可以包括以下步骤:
步骤S1321,分析微服务管理模块对所述授权信息是否能够成功解密。
示例地,如果授权信息为字符串的形式,可以分析对该字符串进行解密后能否得到正确格式的用户信息、授权节点数量和节点资源限制信息等内容,如果正确得到上述内容,则授权信息能够成功解密,如果不能正确得到上述内容(例如:解密后得到的是无意义的乱码),则授权信息不能够被成功解密。
示例地,如果授权信息为授权文件的形式,首先,判断用户输入到微服务管理模块中的授权文件的格式是否正确,例如,如果用户输入到微服务管理模块中的授权文件的格式为*.dll,而正确的授权文件格式为*.lic,那么,认为用户输入到微服务管理模块中的是错误格式的授权文件,授权文件不会被成功解密。然后,如果用户输入的是正确格式的授权文件,获取授权文件中的授权信息,并尝试解密授权信息,如果解密后能够得到正确格式的用户信息、授权节点数量和节点资源限制信息等内容,则解密成功。
步骤S1322,如果成功解密,分析所述授权信息是否处于预设有效期内。
本申请中,可对授权信息预设一个有效期,使授权信息只在其生成后的一段时间内生效,这段时间即为授权信息的预设有效期,在预设有效期过后,用户需重新向管理端请求新的授权信息以继续获得微服务的使用授权。在限制授权信息的预设有效期后,授权信息可以定期更新,从而减少授权信息被破解或滥用的机会,保证对微服务产品授权的可控性。
此外,需要补充说明的是,在本申请中授权信息的预设有效期与上文提到的项目有效期意义不同。项目有效期是指用户使用微服务产品创建项目应用时,这个应用的有效期。示例地,用户在创建“银行服务机器人项目”时,可为这个项目设定一个有效期,如:2018-08-01~2018-08-31,那么该项目将在用户设定的有效期内生效。
步骤S1323,如果处于预设有效期内,则所述授权信息有效。
示例地,可以设置预设有效期为30天,那么,如果授权信息生成与2018年6月1日00:00,授权信息将在2018年6月30日24:00之前有效。
步骤S133,如果所述授权信息有效,将所述授权信息中的授权节点数量存入缓存。
本申请中,授权信息中的节点授权数量是指允许用户部署的微服务节点的最大数量。例如,如果本申请管理的是微服务产品的核心微服务模块,且授权节点数量为5,那么,用户只能部署5个核心节点,在核心微服务模块中部署更多的节点将不会被授权生效。
在一种可选择的实施方式中,如果授权信息有效,将授权信息中可视化展示给用户,以使用户校验根据授权信息获得的授权是否正确。本申请考虑到:用户有时候会同时购买多个微服务产品,那么,用户就会有多个授权信,这就会出现用户分不清哪个授权信息对应哪个微服务产品的问题。为了解决这个问题,本申请在微服务管理模块用户输入授权信息后,如果授权信息有效,将授权信息中可视化展示给用户,以使用户校验根据授权信息获得的授权是否正确。
示例地,展示给用户的授权信息为:
步骤S134,根据缓存的授权节点数量,限制生效的微服务节点的数量。
图5为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法步骤S132的流程图。在一种可选择的实施方式中,在步骤S1321-步骤S1323的基础上,步骤S132可以进一步包括:
步骤S1324,将所述授权信息发送给受管理的微服务模块。
本申请中,微服务模块可以是微服务产品的核心微服务模块,在微服务模块中运行着不多于授权节点数量的生效的微服务节点。具体地,每个微服务节点可以是一个可独立运行的软件包,示例地,在JAVA环境中,每个微服务节点可以是一个可执行的jar包。
步骤S1325,根据微服务模块对所述授权信息的解密结果,校验当前的微服务运行环境参数与所述授权信息中的对应内容是否一致。
本申请中,微服务模块对接收到的授权信息进行解密,并根据解密得到用户提供的微服务运行环境参数,校验微服务模块中当前的微服务运行环境参数与授权信息中的微服务运行环境参数是否一致。具体地,微服务运行环境参数可以包括微服务硬件环境的MAC地址、硬件ID(机器码)等。
步骤S1326,如果不一致,则停止微服务模块的运行。
如果当前的微服务运行环境参数与授权信息中的微服务运行环境参数不一致,说明用户将微服务产品运行在没有得到授权的微服务运行环境中(例如,当微服务产品转让给其他用户),此时,微服务停止运行。示例地,授权信息中记录的微服务运行环境参数包含用户提供绑定微服务产品的服务器网卡的MAC地址,例如该MAC地址为:9A-28-3C-4D-7M,而用户当前运行微服务产品的服务器网卡的MAC地址为:C8-26-7E-4M-63,则说明用户没有在其绑定了微服务产品的服务器中运行微服务,因此,停止微服务模块的运行。
步骤S1327,如果一致,将所述授权信息中的资源限制信息存入缓存。
如果当前的微服务运行环境参数与授权信息中的微服务运行环境参数一致,说明用户将微服务产品运行在得到授权的微服务环境中,那么,进一步就是要对微服务模块提供的微服务进行资源限制。在进行资源限制之前,首先将授权信息中的资源限制信息存入缓存中(如服务器的RAM、或磁盘的%cache%、%temp%文件夹等指定位置),资源限制信息至少包括微服务模块的最大并发数和最大业务知识数量。
步骤S1328,根据缓存的资源限制信息,对微服务模块提供的微服务进行资源限制。
具体地,根据资源限制信息,限制微服务模块所能提供数据传输的最大并发数和最大业务知识数量等。
需要补充说明的是,用户在获得微服务产品后,可根据不同的业务用途利用微服务产品创建不同的应用,这些引用以微服务产品的核心微服务模块作为实现应用功能的核心引擎,此外,还需要根据业务需求在微服务产品的知识管理模块中添加向相应地业务知识。本申请中,最大业务知识数量就是用来限制用户可添加的业务知识的最大数量。
需要补充说明的是,最大并发数量是指用户使用微服务产品创建了微服务应用后,该微服务应用允许同时响应服务请求的最大数量。示例地,用户使用微服务产品创建了一个“银行服务机器人”应用,如果最大并发数量为1000,那么,该“银行服务机器人”应用就能够最多同时响应1000个银行客户发送的服务请求,如果请求数量超出最大并发数量,就会出现请求被忽略或排队的情况。
由以上技术方案可知,本申请实施例提供了一种应用于智能机器人的微服务授权管理方法,包括:将用户信息发送给微服务的管理端;获取管理端根据所述用户信息生成加密的授权信息;校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。本申请实施例提供技术方案能够根据授权信息验证用户是否在得到授权的微服务运行环境中运行了微服务产品,以及,对微服务产品中用户可用的微服务模块和微服务节点等进行具体限制,包括限制授权节点数量和限制节点资源的规模等,从而实现了对微服务产品的有效管理。
本申请一示例性实施例提供了另一种应用于智能机器人的微服务授权管理方法,该方法可应用于微服务的管理端。参见图6,为本申请另一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法的流程图。如图6所示,该方法可以包括以下步骤:
步骤S210,获取用户信息。
本申请中,用户信息由微服务产品的用户主动提供给微服务管理端,用于管理端鉴别用户身份,并生成对应的授权信息。
管理端例如可以是对产品端运行的微服务进行管理的一方,通常是微服务的拥有者,例如微服务的开发商、发行商、销售商,或者其他持有微服务所有权的一方。管理端在用户通过购买、租赁或订阅等方式获取了微服务产品后,将对应的微服务产品提供给用户,用户则获得了对应的微服务产品的使用权。
用户信息可以至少包括用户提供的微服务运行环境参数,表明用户计划在上述运行环境中部署微服务节点。例如,所述微服务运行环境参数至少包括微服务硬件环境的MAC地址、硬件ID(机器码)等。示例地,如果用户希望在5台服务器中部署微服务节点,那么,用户可提供不多于5台服务器的网卡的MAC地址;或者,用户可提供不多于5台服务器的服务器ID、处理器硬件ID或主板硬件ID等。
需要补充说明的是,一个大型的微服务产品由一个或多个微服务模块组成,这些微服务模块中包含一些承担重要功能的微服务模块,即核心微服务模块,还包括一些承担非重要功能的微服务模块,即非核心模块。本申请在对微服务进行管理时,可只需管理核心微服务模块,因此,用户可只需提供核心微服务模块的运行环境参数。
此外,用户信息还可以包括用户的公司信息或个人信息、微服务的项目用途和项目信息(例如:项目名称、项目类型、项目领域、应用场景等),以使管理端获取足够的用户信息确认用户的身份。
步骤S220,根据所述用户信息生成加密的授权信息。
本申请中,授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。根据用户信息生成加密的授权信息的基本思路是根据用户信息匹配到用户拥有的微服务产品,从而进一步确定用户拥有的微服务产品的授权节点数量和节点资源限制信息,然后,将用户信息、授权节点数量和节点资源限制信息进行加密,以生成授权信息。示例地,授权信息中可以具体包括以下内容:
本申请中,授权信息可以是加密后得到的特定长度的字符串,也可以是一个可被微服务识别并读取的授权文件(License),例如,生成一个名称为*.lic的授权文件,以便于用户保管。
步骤S230,将所述授权信息提供给用户,以使用户在产品端校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务。
管理端在生成授权信息之后,将授权信息提供给用户。用户在创建微服务应用时,在产品端输入授权信息,产品端的微服务管理模块校验授权信息,如果校验通过,那么,产品端将根据授权信息为用户提供受限制的微服务。示例地,根据授权信息中的内容,产品端对微服务的限制包括:限制微服务核心模块只能在指定运行环境参数中运行(例如:只能在具有指定MAC地址的服务器中运行);根据授权节点数量限制生效的微服务节点的数量;根据节点资源限制信息限制微服务节点的最大并发数和最大业务知识数量等。
图7为本申请另一示例性实施例提供的一种应用于智能机器人的微服务授权管理方法步骤S220的流程图。
如图7所示,在一种可选择的实施方式中,步骤S220可以包括以下步骤:
步骤S221,根据所述用户信息,获取用户拥有的授权节点数量和节点资源限制信息。
用户可通过购买、租赁或订阅等方式获取微服务产品,微服务产品的拥有者对提供给用户的微服务产品限制了授权节点数量和节点资源的规模。在步骤S221中,管理端根据用户信息匹配到用户拥有的产品,并进一步获取用户拥有的授权节点数量和节点资源限制信息,以根据这些信息生成授权信息。
步骤S222,根据预设加密算法,对用户信息、授权节点数量和节点资源限制信息进行加密,以生成所述授权信息。
具体地,可以使用现有技术的对称加密算法或非对称加密算法生成授权信息,本申请实施例中对生成授权信息所使用的加密算法不做具体限定。作为示例地,使用对称加密算法,例如将要加密的内容使用AES(高级加密标准:Advanced Encryption Standard)算法进行加密,然后再使用BACE64编码对加密结果进行转码,从而生成授权信息;或者,使用非对称加密算法,例如使用RSA加密算法,将用于解密的RSA公钥内置于用户获取的微服务产品中,在管理端使用RSA私钥对要加密的内容加密,从而生成授权信息。
由以上技术方案可知,本申请实施例提供了一种应用于智能机器人的微服务授权管理方法,包括:获取用户信息;根据所述用户信息生成加密的授权信息;将所述授权信息提供给用户,以使用户在产品端校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。本申请实施例提供的技术方案生成的授权信息,能够用于验证用户是否在得到授权的微服务运行环境中运行了微服务产品,以及,对微服务产品中用户可用的微服务模块和微服务节点等进行具体限制,包括限制授权节点数量和限制节点资源的规模等,从而实现了对微服务产品的有效管理。
下述为本申请的装置实施例:
本申请一示例性实施例提供了一种应用于智能机器人的微服务授权管理装置,该装置可应用于微服务的产品端,用于执行本申请的方法实施例,对于本申请装置实施例中未披露的细节,请参照本申请的方法实施例。参见图8,为本申请一示例性实施例提供的一种应用于智能机器人的微服务授权管理装置示意框图。如图8所示,该装置可以包括:
用户信息发送单元310,用于将用户信息发送给微服务的管理端;
授权信息获取单元320,用于获取管理端根据所述用户信息生成加密的授权信息;
微服务产品单元330,用于校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
由以上技术方案可知,本申请实施例提供了一种应用于智能机器人的微服务授权管理装置,用于:将用户信息发送给微服务的管理端;获取管理端根据所述用户信息生成加密的授权信息;校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。本申请实施例提供技术方案能够根据授权信息验证用户是否在得到授权的微服务运行环境中运行了微服务产品,以及,对微服务产品中用户可用的微服务模块和微服务节点等进行具体限制,包括限制授权节点数量和限制节点资源的规模等,从而实现了对微服务产品的有效管理。
本申请另一示例性实施例提供了一种应用于智能机器人的微服务授权管理装置,该装置可应用于微服务的管理端,用于执行本申请的方法实施例,对于本申请装置实施例中未披露的细节,请参照本申请的方法实施例。参见图9,为本申请另一示例性实施例提供的一种应用于智能机器人的微服务授权管理装置示意框图。如图9所示,该装置可以包括:
用户信息获取单元410,用于获取用户信息;
授权信息生成单元420,用于根据所述用户信息生成加密的授权信息;
授权信息发送单元430,用于将所述授权信息提供给用户,以使用户在产品端校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
由以上技术方案可知,本申请实施例提供了一种应用于智能机器人的微服务授权管理装置,用于:获取用户信息;根据所述用户信息生成加密的授权信息;将所述授权信息提供给用户,以使用户在产品端校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。本申请实施例提供的技术方案生成的授权信息,能够用于验证用户是否在得到授权的微服务运行环境中运行了微服务产品,以及,对微服务产品中用户可用的微服务模块和微服务节点等进行具体限制,包括限制授权节点数量和限制节点资源的规模等,从而实现了对微服务产品的有效管理。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (10)

1.一种应用于智能机器人的微服务授权管理方法,其特征在于,包括:
将用户信息发送给微服务的管理端;
获取管理端根据所述用户信息生成加密的授权信息;
校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
2.根据权利要求1所述的方法,其特征在于,所述校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务的步骤,包括:
获取用户在微服务管理模块中输入的所述授权信息;
根据微服务管理模块对所述授权信息的解密结果,校验所述授权信息是否有效;
如果所述授权信息有效,将所述授权信息中的授权节点数量存入缓存;
根据缓存的授权节点数量,限制生效的微服务节点的数量。
3.根据权利要求2所述的方法,其特征在于,还包括:
将所述授权信息发送给受管理的微服务模块;
根据微服务模块对所述授权信息的解密结果,校验当前的微服务运行环境参数与所述授权信息中的对应内容是否一致;
如果不一致,则停止微服务模块的运行;
如果一致,将所述授权信息中的资源限制信息存入缓存;
根据缓存的资源限制信息,对微服务模块提供的微服务进行资源限制;
其中,所述资源限制信息至少包括微服务模块的最大并发数和最大业务知识数量。
4.根据权利要求1-3任一所述的方法,其特征在于,所述微服务运行环境参数至少包括微服务硬件环境的MAC地址、硬件ID的一个或多个。
5.根据权利要求2所述的方法,其特征在于,所述根据微服务管理模块对所述授权信息的解密结果,校验所述授权信息是否有效的步骤,包括:
分析微服务管理模块对所述授权信息是否能够成功解密;
如果成功解密,分析所述授权信息是否处于预设有效期内;
如果处于预设有效期内,则所述授权信息有效。
6.根据权利要求2所述的方法,其特征在于,还包括:
如果所述授权信息有效,将所述授权信息中可视化展示给用户,以使用户校验根据所述授权信息获得的授权是否正确。
7.一种应用于智能机器人的微服务授权管理方法,其特征在于,包括:
获取用户信息;
根据所述用户信息生成加密的授权信息;
将所述授权信息提供给用户,以使用户在产品端校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
8.根据权利要求7所述的方法,其特征在于,所述根据所述用户信息生成加密的授权信息的步骤包括:
根据所述用户信息,获取用户拥有的授权节点数量和节点资源限制信息;
根据预设加密算法,对用户信息、授权节点数量和节点资源限制信息进行加密,以生成所述授权信息。
9.一种应用于智能机器人的微服务授权管理装置,其特征在于,包括:
用户信息发送单元,用于将用户信息发送给微服务的管理端;
授权信息获取单元,用于获取管理端根据所述用户信息生成加密的授权信息;
微服务产品单元,用于校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
10.一种应用于智能机器人的微服务授权管理装置,其特征在于,包括:
用户信息获取单元,用于获取用户信息;
授权信息生成单元,用于根据所述用户信息生成加密的授权信息;
授权信息发送单元,用于将所述授权信息提供给用户,以使用户在产品端校验所述授权信息,以及在校验通过后根据所述授权信息获得受限制的微服务;
其中,所述用户信息至少包括用户提供的微服务运行环境参数;所述授权信息至少包括所述用户信息、授权节点数量和节点资源限制信息。
CN201810635423.9A 2018-06-20 2018-06-20 应用于智能机器人的微服务授权管理方法及装置 Pending CN108737444A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810635423.9A CN108737444A (zh) 2018-06-20 2018-06-20 应用于智能机器人的微服务授权管理方法及装置
CN201811498204.7A CN109561095A (zh) 2018-06-20 2018-12-07 微服务授权管理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810635423.9A CN108737444A (zh) 2018-06-20 2018-06-20 应用于智能机器人的微服务授权管理方法及装置

Publications (1)

Publication Number Publication Date
CN108737444A true CN108737444A (zh) 2018-11-02

Family

ID=63930298

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810635423.9A Pending CN108737444A (zh) 2018-06-20 2018-06-20 应用于智能机器人的微服务授权管理方法及装置
CN201811498204.7A Pending CN109561095A (zh) 2018-06-20 2018-12-07 微服务授权管理方法及装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201811498204.7A Pending CN109561095A (zh) 2018-06-20 2018-12-07 微服务授权管理方法及装置

Country Status (1)

Country Link
CN (2) CN108737444A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111262836A (zh) * 2020-01-09 2020-06-09 腾讯科技(深圳)有限公司 一种微服务授权方法、设备及存储介质
WO2023185991A1 (zh) * 2022-04-02 2023-10-05 杭州海康威视数字技术股份有限公司 一种应用运行授权处理方法、系统和设备

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111585880B (zh) * 2020-05-13 2021-09-28 腾讯科技(深圳)有限公司 业务系统中的网关控制方法、装置及电子设备
CN112333272B (zh) * 2020-11-06 2023-05-26 杭州安恒信息技术股份有限公司 一种微服务数据访问方法、装置、设备及可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102750479B (zh) * 2012-06-12 2018-08-07 北京英华高科科技有限公司 一种分层软件版权保护方法
US10404680B2 (en) * 2016-08-11 2019-09-03 Motorola Solutions, Inc. Method for obtaining vetted certificates by microservices in elastic cloud environments
CN106100840A (zh) * 2016-08-25 2016-11-09 广州唯品会信息科技有限公司 微服务的权限变更方法及装置
CN106789891A (zh) * 2016-11-22 2017-05-31 国云科技股份有限公司 一种适用于IaaS云平台的多维度软件授权控制方法
CN107528853A (zh) * 2017-09-12 2017-12-29 上海艾融软件股份有限公司 微服务权限控制的实现方法
CN108092984B (zh) * 2017-12-25 2021-02-26 新华三技术有限公司 一种应用客户端的授权方法、装置及设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111262836A (zh) * 2020-01-09 2020-06-09 腾讯科技(深圳)有限公司 一种微服务授权方法、设备及存储介质
WO2023185991A1 (zh) * 2022-04-02 2023-10-05 杭州海康威视数字技术股份有限公司 一种应用运行授权处理方法、系统和设备

Also Published As

Publication number Publication date
CN109561095A (zh) 2019-04-02

Similar Documents

Publication Publication Date Title
Ullah et al. Towards blockchain-based secure storage and trusted data sharing scheme for IoT environment
Samanta et al. Cipher block chaining support vector machine for secured decentralized cloud enabled intelligent IoT architecture
CN108737444A (zh) 应用于智能机器人的微服务授权管理方法及装置
CN108667605B (zh) 一种数据加密、解密方法和装置
CN107046687A (zh) 低功率设备的安全连接
CN111292041A (zh) 一种电子合同生成方法、装置、设备及存储介质
JP2006229948A (ja) 記憶媒体に対するリモート・サービス・インターフェースのサービス担当ユーザを確実に認証する方法およびシステム
CN108537047B (zh) 基于区块链生成信息的方法及装置
CN112422287B (zh) 基于密码学的多层级角色权限控制方法和装置
CN109491727A (zh) 对象序列化方法、终端设备及计算机可读存储介质
Saini et al. E2EE for data security for hybrid cloud services: a novel approach
CN112765642A (zh) 数据处理方法、数据处理装置、电子设备及介质
CN111027981A (zh) 多方联合训练针对IoT机具的风险评估模型的方法及装置
CN116502732A (zh) 基于可信执行环境的联邦学习方法以及系统
JP2013115522A (ja) リンク・アクセスの制御方法、プログラム及びシステム
EP3930279B1 (en) Secure management of a robotic process automation environment
CN115953244A (zh) 基于区块链的交易监管方法、装置、电子设备和存储介质
Sun et al. Blockchain and homomorphic encryption for digital copyright protection
Charanya et al. Attribute based encryption for secure sharing of E-health data
Shin et al. A Software Product Line Approach for Feature Modeling and Design of Secure Connectors.
Tang et al. A Blockchain-Based Framework for Secure Storage and Sharing of Resumes.
Liu et al. A fusion data security protection scheme for sensitive E-documents in the open network environment
Zheng Big Data among Multiple Institutions Based on DAG Blockchain
CN116527404B (zh) 基于区块链的数字藏品定向分享方法及系统
Shin et al. A software product line approach to design secure connectors in component-based software architectures

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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20181102