CN116614241A - 一种认证方法,计算装置和实例管理装置 - Google Patents

一种认证方法,计算装置和实例管理装置 Download PDF

Info

Publication number
CN116614241A
CN116614241A CN202210121290.XA CN202210121290A CN116614241A CN 116614241 A CN116614241 A CN 116614241A CN 202210121290 A CN202210121290 A CN 202210121290A CN 116614241 A CN116614241 A CN 116614241A
Authority
CN
China
Prior art keywords
user
password
instance
key pair
user identifier
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
CN202210121290.XA
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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Cloud Computing Technologies 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 Huawei Cloud Computing Technologies Co Ltd filed Critical Huawei Cloud Computing Technologies Co Ltd
Priority to CN202210121290.XA priority Critical patent/CN116614241A/zh
Publication of CN116614241A publication Critical patent/CN116614241A/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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

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

Abstract

一种认证方法包括:接收终端发送的用户标识和私钥;向元数据服务器发送包括用户标识的第一请求;接收元数据服务器根据第一请求发送的密文密码,密文密码是使用公钥对用户密码加密得到的;根据私钥对密文密码进行解密;根据解密结果进行实例登录认证。该方法的不同实例具有不同的密文密码,这样可以降低用户密码泄露带来的安全风险。本申请还提供能够实现上述认证方法的计算装置和实例管理装置。

Description

一种认证方法,计算装置和实例管理装置
技术领域
本申请涉及通信领域,尤其涉及一种认证方法,计算装置和实例管理装置。
背景技术
弹性云服务器(elastic cloud server,ECS)用于提供自助获取、可弹性伸缩的云计算服务。
目前常用镜像模板来创建弹性云服务器。这样为不同租户创建的弹性云服务器具有相同的管理员用户名和密码。租户通过该管理员用户名和密码可以登录弹性云服务器。
如果该管理员用户名和密码被破解或泄露,很多弹性云服务器就面临大规模攻击的安全风险。
发明内容
有鉴于此,本申请提供一种认证方法,能够为每个弹性云服务器绑定不同的密码,从而克服相同密码导致的安全风险。本申请还提供能够实现上述认证方法的相关设备。
第一方面提供一种认证方法,该方法包括:接收终端发送的用户标识和私钥后,向元数据服务器发送包括所述用户标识的第一请求;在所述元数据服务器根据所述第一请求获取所述用户标识对应的密文密码后,接收元数据服务器发送的密文密码,根据私钥对密文密码进行解密;当解密成功时,根据解密得到的密码建立计算装置与终端的通信链路;当解密失败时,确定终端登录失败。其中,实例可以是但不限于弹性云服务器。由于密文密码是使用公钥对用户密码加密得到的,因此不同实例有不同的密文密码和用户密码,由此可降低实例的登录密码泄露导致的安全风险,提高登录实例的安全性。
在一种可能的实现方式中,根据解密结果进行实例登录认证包括:当解密结果为用户标识对应的用户密码时,确定终端通过实例登录认证;当解密结果不是用户标识对应的用户密码时,确定终端登录实例失败。当解密结果为用户标识对应的用户密码时,表明加密所采用的公钥和终端发送的私钥是一个密钥对,而且用户密码与用户标识存在对应关系。当解密结果不是用户标识对应的用户密码时,表明加密所采用的公钥和终端发送的私钥不是一个密钥对,或者用户密码与用户标识没有对应关系,因此不允许该终端登录实例。
在另一种可能的实现方式中,在接收终端发送的用户标识和私钥之前,上述方法还包括:接收元数据服务器发送的用户标识;使用伪随机函数生成用户密码;向元数据服务器发送包括用户标识的第二请求;接收元数据服务器发送的公钥,公钥是元数据服务器根据第二请求携带的用户标识获取的;使用公钥将用户密码加密为密文密码;将用户标识和密文密码发送给元数据服务器。使用伪随机函数生成的用户密码通常是唯一的,为每个用户配置唯一密码后,将用户密码保存在元数据服务器,这样不需要用户输入该密码,也不需要终端保存密码,可以降低密码泄露的风险。
第二方面提供一种认证方法,该方法包括:获取与用户标识对应的密钥对;向计算装置发送创建实例请求;接收计算装置发送的实例信息;将密钥对和用户标识对应的实例进行绑定;将用户标识与密钥对发送给元数据服务器。依此可以将用户的密钥对,用户标识和实例进行绑定,而且可以将用户的密钥对发送给元数据服务器进行保存。这样提供了一种保存密钥对的方法,该密钥对可以用于登录实例。
在一种可能的实现方式中,获取与用户标识对应的密钥对包括:接收终端发送的创建密钥对请求;根据创建密钥对请求生成与用户标识对应的密钥对。其中,创建密钥对请求包括用户标识。依此实施,云端可以生成用户标识对应的密钥对。
在另一种可能的实现方式中,方法还包括:将密钥对中的私钥发送给终端。云端生成用户标识对应的密钥对后,将私钥发送给终端,便于终端使用私钥登录实例。
在另一种可能的实现方式中,获取与用户标识对应的密钥对包括:接收终端发送的用户标识和密钥对。终端可以获取密钥对,然后发送给云端,这样提供了另一种保存密钥对的方法。
第三方面提供一种计算装置,该计算装置包括接收单元,处理单元和发送单元;接收单元用于接收终端发送的用户标识和私钥;发送单元用于向元数据服务器发送包括用户标识的第一请求,第一请求用于获取与用户标识对应的密文密码;接收单元还用于接收元数据服务器根据第一请求发送的密文密码,密文密码是使用公钥对用户密码加密得到的;处理单元用于根据私钥对密文密码进行解密,根据解密结果进行实例登录认证。
在一种可能的实现方式中,处理单元具体用于当解密结果为用户标识对应的用户密码时,确定终端通过实例登录认证;当解密结果不是用户标识对应的用户密码时,确定终端登录实例失败。
在另一种可能的实现方式中,接收单元还用于接收元数据服务器发送的用户标识;处理单元还用于使用伪随机函数生成用户标识对应的用户密码;发送单元还用于向元数据服务器发送包括用户标识的第二请求;接收单元还用于接收元数据服务器发送的公钥,公钥是元数据服务器根据第二请求携带的用户标识获取的;处理单元还用于使用公钥将用户密码加密为密文密码;发送单元还用于将用户标识和密文密码发送给元数据服务器。
第四方面提供一种实例管理装置,该实例管理装置包括获取单元,处理单元,接收单元和发送单元;获取单元用于获取与用户标识对应的密钥对;发送单元用于向计算装置发送创建实例请求;接收单元用于接收计算装置发送的实例信息;处理单元用于将密钥对和用户标识对应的实例进行绑定;发送单元还用于将用户标识与密钥对发送给元数据服务器。
在一种可能的实现方式中,获取单元具体用于接收终端发送的创建密钥对请求,创建密钥对请求包括用户标识;根据创建密钥对请求生成与用户标识对应的密钥对。
在另一种可能的实现方式中,发送单元还用于将密钥对中的私钥发送给终端。
在另一种可能的实现方式中,获取单元具体用于接收终端发送的用户标识和密钥对。
第五方面提供一种计算设备,其包括处理器和存储器,所述存储器用于存储程序;所述处理器通过执行程序用于实现第一方面的方法。
第六方面提供一种服务器,其包括处理器和存储器,所述存储器用于存储程序;所述处理器通过执行程序用于实现第二方面的方法。
第七方面提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
第八方面提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面的方法。
第九方面提供了一种芯片系统,包括至少一个处理器,所述处理器和存储器耦合,所述存储器用于存储计算机程序或指令,所述处理器用于执行所述计算机程序或指令,以实现上述各方面的方法。
附图说明
图1为本申请实施例中通信场景的一个示意图;
图2为本申请实施例中计算装置的一个结构图;
图3为本申请实施例中认证方法的一个信令交互图;
图4为本申请实施例中认证方法的另一个信令交互图;
图5为本申请实施例中认证方法的另一个信令交互图;
图6A为本申请实施例中密钥对的一个示意图;
图6B为本申请实施例中云服务器名称和密钥对的一个示意图;
图6C为本申请实施例中密钥对,私钥和密码的一个示意图;
图7为本申请实施例中认证方法的另一个信令交互图;
图8为本申请实施例中认证方法的另一个信令交互图;
图9为本申请实施例中计算装置的一个结构图;
图10为本申请实施例中实例管理装置的一个结构图;
图11为本申请实施例中计算设备的一个结构图;
图12为本申请实施例中服务器的一个结构图。
具体实施方式
本申请的认证方法可以应用于云服务的通信场景。
参阅图1,在一个示例中,通信场景包括终端11、网络15、实例管理装置12、计算装置131、计算装置132、计算装置133和元数据服务器14。
终端11可以是个人电脑,手机,平板电脑,车载电脑,可穿戴设备,虚拟现实设备,增强现实设备等。实例管理装置12用于为用户分配弹性云服务器,弹性云服务器可以是计算装置,例如计算装置131、计算装置132和计算装置133等。弹性云服务器也可以是计算装置提供的虚拟机。元数据服务器14用于存储元数据。元数据包括用户信息和主机信息。用户信息包括用户账号,密码,密钥,用户的虚拟机资料等。主机信息包括主机的硬件信息,虚拟机的硬件信息等。网络15可以包括但不限于网际互连协议(internet protocol,IP)网络。
用户通过终端11可以登录实例管理装置12提供的网站,用户点击网站的按钮或超链接等,可以向实例管理装置12发送相应的指令或请求。当终端11向实例管理装置12发送创建实例请求时,实例管理装置12根据创建实例请求包括的用户标识,为用户分配虚拟机或主机。分配的主机以计算装置131为例,用户登录计算装置131时,计算装置131可以向用户提供云计算服务。
下面以计算装置131为例对计算装置进行介绍,参阅图2,在一个示例中,计算装置131包括计算资源21,虚拟机管理器22,虚拟机231,虚拟机232和虚拟机233。计算资源21包括但不限于处理器和内存。虚拟机管理器22基于计算资源21进行计算虚拟化,以创建虚拟机。每个租户可以申请创建一个或多个虚拟机,例如,租户1对应虚拟机231,租户2对应虚拟机232,租户3对应虚拟机233。
下面对本申请的部分术语进行介绍,虚拟化技术,主要由计算虚拟化、I/O虚拟化组成。作为云场景的核心技术,它以虚拟机为粒度将一台物理服务器共享给多个租户使用,使租户能在安全隔离的前提下方便灵活地使用物理资源,并且能极大提升物理资源的利用率。
计算虚拟化是将服务器的处理器和内存等计算资源提供给虚拟实例使用,虚拟实例可以是虚拟机,在一些场景中,虚拟实例也可以是容器、裸金属服务器等。
虚拟化是资源的逻辑表示,使其不受物理限制的约束。将任何一种形式的接口和资源映射成另一种形式的接口和资源的技术,都可以称为虚拟化技术。其实现形式一般是在系统中加入一个虚拟化软件层,将下层的资源抽象成另一形式的资源,提供给上层使用。
其中,通过虚拟化仿真出来的计算机系统叫做虚拟机(virtual machine,VM)。运行虚拟机的底层机器称为主机(Host)。运行在虚拟环境上的软件称为客户机(guest)。如果有操作系统,相应地,底层机器上运行的操作系统称为操作系统(host operating system,HostOS)。运行在虚拟机之上的操作系统称为客户机操作系统(guest operating system,GuestOS)。
Hypervisor是用于虚拟资源的创建、调度和管理的软件。Hypervisor利用底层硬件资源来创建一个包含虚拟处理器、内存和外设等的虚拟环境。在这个环境中,客户机操作系统认为自己运行在一台真实的计算机上,并唯一拥有这台“虚拟”机器上的所有资源。Hypervisor可以同时构建多个虚拟机环境,从而允许多个客户机操作系统并发执行。
在实例管理装置12收到用户通过终端发送的创建实例请求时,实例管理装置12会根据创建实例请求在多个计算装置中选择一个计算装置,然后向选中的计算装置发送创建实例指令。计算装置根据创建实例指令获取虚拟机模板,将虚拟机模板与该用户标识进行绑定后,得到用户对应的虚拟机。由于虚拟机模板的管理员账号和密码都是预设的,因此为不同租户提供的虚拟机中管理员账号和密码是相同的。当管理员密码泄露后,存在被大规模攻击的风险。
对此,本申请提供一种认证方法,将密钥对,用户密码与用户的弹性云服务器进行绑定,使得每个弹性云服务器具有不同的管理员账号和密码,从而降低安全风险。
下面对本申请的认证方法进行介绍,参阅图3,本申请中认证方法的一个实施例包括:
步骤301、终端向实例管理装置发送创建密钥对请求。
步骤302、实例管理装置根据创建密钥对请求生成密钥对。
实例管理装置收到创建密钥对请求后,根据创建密钥对请求包括的用户标识可以创建用户标识对应的密钥对。用户标识可以是但不限于用户名。
密钥对包括公钥和私钥。具体的,实例管理装置根据安全外壳(secure shell,SSH)协议生成密钥对。SSH协议是为远程登录会话和其他网络服务提供安全性的一种协议。
步骤303、实例管理装置将私钥发送给终端。
步骤304、实例管理装置向计算装置发送创建实例请求。创建实例请求包括用户标识。
步骤305、计算装置根据创建实例请求创建用户标识对应的实例。
需要说明的是,步骤304和步骤305是创建实例的过程,步骤301和步骤302是生成密钥对的过程,两个过程并无固定先后顺序。创建实例的过程可以在生成密钥对的过程之前执行。
步骤306、计算装置将实例信息发送给实例管理装置。
实例信息可以包括但不限于实例标识。
步骤307、实例管理装置绑定密钥对,用户标识和实例。
具体的,实例管理装置根据实例信息绑定密钥对,用户标识和实例。
步骤308、实例管理装置将用户标识和密钥对发送到元数据服务器。
步骤309、元数据服务器存储用户标识和密钥对。
步骤310、计算装置接收元数据服务器发送的用户标识。
步骤311、计算装置用伪随机函数生成用户密码。
可选的,用户密码可以是但不限于管理员密码。Linux实例中管理员的用户名为root。Windows实例中管理员的用户名为Administrator。
步骤312、计算装置向元数据服务器发送包括用户标识的第二请求。
步骤313、计算装置接收元数据服务器发送的公钥。
元数据服务器根据第二请求获取用户标识对应的公钥后,将公钥发送给计算装置。
步骤314、计算装置使用公钥将用户密码加密为密文密码。
使用公钥将用户密码加密的算法可以是但不限于RSA算法。
步骤315、计算装置将用户标识和密文密码发送给元数据服务器。
步骤316、元数据服务器存储用户标识和密文密码。
本实施例中,使用公钥将用户密码加密为密文密码后,只有公钥对应的私钥能够正确解密。当攻击者使用假的私钥访问计算装置时,计算装置不能用假的私钥解密密文密码,从而拒绝攻击者登录实例,因此具有良好的安全性。
其次,使用伪随机函数生成的密码可以认为是随机密码,这样能够使得不同实例的用户具有不同的密码,从而防止相同密码导致的安全风险。
再次,使用公钥将用户密码加密为密文密码后,可以将密文密码保存在元数据服务器,这样能够减少用户密码泄露的可能性,提高密码的安全性。
除了实例管理装置生成密钥对之外,终端也可以生成密钥对。下面对实例管理装置从终端导入密钥对的方法进行介绍。下面对本申请的另一种认证方法进行介绍,参阅图4,本申请中认证方法的另一个实施例包括:
步骤401、终端向实例管理装置发送用户标识和密钥对。
密钥对包括公钥和私钥。具体的,终端根据安全外壳(secure shell,SSH)协议生成密钥对后,向实例管理装置发送用户标识和密钥对。SSH协议是为远程登录会话和其他网络服务提供安全性的一种协议。
步骤402、实例管理装置向计算装置发送创建实例请求,创建实例请求包括用户标识。
步骤403、计算装置根据创建实例请求创建用户标识对应的实例。该实例与创建实例请求包括的用户标识对应。
需要说明的是,步骤402和步骤403是创建实例的过程,步骤401是获取密钥对的过程,两个过程并无固定先后顺序。创建实例的过程可以在步骤401之前执行。
步骤404、计算装置将实例信息发送给实例管理装置。
步骤405、实例管理装置绑定密钥对,用户标识和实例。
步骤406、实例管理装置将用户标识和密钥对发送到元数据服务器。
步骤407、元数据服务器存储用户标识和密钥对。
步骤408、计算装置接收元数据服务器发送的用户标识。
步骤409、计算装置用伪随机函数生成用户标识对应的用户密码。
步骤410、计算装置向元数据服务器发送包括用户标识的第二请求。
步骤411、计算装置接收元数据服务器发送的公钥。
元数据服务器根据第二请求获取用户标识对应的公钥后,将公钥发送给计算装置。
步骤412、计算装置使用公钥将用户密码加密为密文密码。
步骤413、计算装置将用户标识和密文密码发送给元数据服务器。
步骤414、元数据服务器存储用户标识和密文密码。
步骤402至步骤414与步骤304至步骤316相似,具体可参阅上述记载。
本实施例中,使用公钥将用户密码加密为密文密码后,只有公钥对应的私钥能够正确解密。当攻击者使用假的私钥访问计算装置时,计算装置不能用假的私钥解密密文密码,从而拒绝攻击者登录实例,因此具有良好的安全性。
其次,使用伪随机函数生成的密码可以认为是随机密码,这样能够使得每个实例具有不同的密码,从而防止相同密码导致的安全风险。
再次,使用公钥将用户密码加密为密文密码后,可以将密文密码保存在元数据服务器,这样能够防止用户的密码泄露,提高密码的安全性。
此外,用户可以向实例管理装置导入密钥对,提高了方案实施的灵活性。
对于现有的Windows实例,用户可以在虚拟网络控制台(virtual networkconsole,VNC)中使用用户自设的密码进行登录。但是在网络中传输用户密码存在被截获的安全风险。基于本申请的密钥对和用户密码,本申请提供一种认证方法,能够提高用户登录实例的安全性。下面对其进行介绍,参阅图5,本申请中认证方法的另一个实施例包括:
步骤501、计算装置接收终端发送的用户标识和私钥。
可选的,终端向计算装置发送私钥文件,私钥文件包括用户标识和私钥。私钥文件可以是但不限于pem文件。pem文件是采用Base64编码的文件。由于私钥长度可能是32位,64位或128位,因此用户手动输入私钥登录Linux实例进行SSH登录时,登录效率很低,也容易出错。在本申请中,用户通过终端发送私钥文件,而不用手动输入私钥,因此能够加快登录速度,减少错误输入私钥的情况。
步骤502、计算装置向元数据服务器发送包括用户标识的第一请求。
第一请求可以是通过应用程序接口(application programming interface,API)接口发送的。
可选的,第一请求为:
GET/v2/{tenant_id}/servers/{server_id}/os-server-password。应理解,第一请求可以根据实际情况进行设置,本申请不作限定。
当元数据服务器根据第一请求获取用户标识对应的密文密码后,将密文密码发送给计算装置。
步骤503、计算装置接收元数据服务器发送的密文密码。
步骤504、计算装置根据私钥对密文密码进行解密。
步骤505、根据解密结果进行实例登录认证。
可选的,当解密结果为用户标识对应的用户密码时,确定终端通过实例登录认证。当解密结果不是用户标识对应的用户密码时,确定终端登录实例失败。应理解,用户密码是采用伪随机函数生成的,可以认为是随机密码。
本实施例中,终端可以通过私钥和计算装置解密得到的用户密码登录实例,不需要传输用户密码,可以防止中间人获取用户密码,提高登录安全性。
为便于理解,下面结合实例管理装置提供的网站对本申请的密钥对和密码进行介绍:
参阅图6A,当用户登录网站后,点击“创建密钥对”的按钮,终端根据用户的点击操作向实例管理装置发送创建密钥对请求,实例管理装置根据创建密钥对请求生成密钥对,密钥对文件的名称以KeyPair-75cf为例。密钥对的指纹可以是根据SHA算法生成的fingerprint1。SHA算法可以是但不限于SHA256。
当终端根据创建密钥对工具生成密钥的情况下,用户点击“导入密钥对”的按钮,然后在终端存储的文件中选择包括密钥对的文件(如pem文件),可以将包括密钥对的文件发送给实例管理装置。
参阅图6B,实例管理装置获取实例信息(如云服务器名称)和密钥对后,将实例信息和密钥对进行绑定。应理解,实例管理装置还可以将用户标识,密钥对和实例进行绑定。
计算装置使用伪随机算法生成用户密码后,可以利用密钥对中的公钥将用户密码进行加密为密文密码,然后保存在元数据。
参阅图6C,当用户选择KeyPair-75cf文件后,实例管理装置可以获取KeyPair-75cf文件的私钥。当用户点击“获取密码”按钮后,实例管理装置向元数据服务器发送获取密文密码请求,元数据服务器根据获取密文密码请求获取用户标识对应的密文密码,然后将密文密码发送给实例管理装置,实例管理装置用KeyPair-75cf文件的私钥对密文密码进行解密。解密成功,可以获取用户密码,密码以zjhLD为例。根据zjhLD可以登录Linux实例或Window实例。
本申请中,用户还可以设置实例对应的用户密码。实例管理装置可以将用户标识,用户密码和实例进行绑定。这样用户能够通过用户标识和用户密码登录实例。由于多个用户设置的用户密码各不相同,可以使得不同实例对应的用户密码基本不同,避免被大规模攻击的安全风险。
参阅图7,本申请中认证方法的另一个实施例包括:
步骤701、终端向实例管理装置发送用户标识和用户密码。
用户标识可以是但不限于用户名。用户密码是由用户设置的,不是实例模板的密码,因此不同用户设置的密码不相同。
步骤702、实例管理装置向计算装置发送创建实例请求。
步骤703、计算装置根据创建实例请求创建实例。
步骤704、计算装置将实例信息发送给实例管理装置。
实例信息包括但不限于实例标识。
步骤705、实例管理装置绑定用户标识、用户密码和实例。
步骤706、实例管理装置将用户标识和用户密码发送给元数据服务器。
步骤707、元数据服务器存储用户标识和用户密码。
本实施例中,实例管理装置接收用户标识和用户密码后,可以将创建的实例与用户标识和用户密码绑定,然后将用户标识和用户密码存储在元数据服务器中。由于不同该用户设置的密码基本不同,这样可以获得绑定不同密码的实例,从而降低被大规模攻击的安全风险。
下面对使用用户标识和用户密码登录实例的过程进行介绍,参阅图8,本申请中认证方法的另一个实施例包括:
步骤801、终端将用户标识和用户密码发送给计算装置。
步骤802、计算装置将包括用户标识的获取密码请求发送给元数据服务器。
步骤803、计算装置接收元数据服务器发送的用户密码。该用户密码与用户标识对应。
步骤804、计算装置根据用户标识和用户密码进行实例登录认证。
具体的,将终端发送的用户密码和元数据服务器发送的用户密码进行比较,如果相同,那么确定该用户标识和用户密码通过认证。如果不同,那么确定该用户标识和用户密码不能通过认证。计算装置拒绝该登录请求。
根据本实施例的用户标识和用户密码进行实例登录具有更高的安全性。可以克服按照现有方法创建的新实例具有相同密码的缺陷。
图9为本申请中计算装置的一个结构图。参阅图9,在一个实施例中,计算装置900包括接收单元901,处理单元902和发送单元903;
接收单元901用于接收终端发送的用户标识和私钥;
发送单元903用于向元数据服务器发送包括用户标识的第一请求,第一请求用于获取与用户标识对应的密文密码;
接收单元901还用于接收元数据服务器根据第一请求发送的密文密码,密文密码是使用公钥对用户密码加密得到的;
处理单元902用于根据私钥对密文密码进行解密,根据解密结果进行实例登录认证。
在一个可选实施例中,
处理单元902具体用于当解密结果为用户标识对应的用户密码时,确定终端通过实例登录认证;当解密结果不是用户标识对应的用户密码时,确定终端登录实例失败。
在另一个可选实施例中,
接收单元901还用于接收元数据服务器发送的用户标识;
处理单元902还用于使用伪随机函数生成用户密码;
发送单元903还用于向元数据服务器发送包括用户标识的第二请求;
接收单元901还用于接收元数据服务器发送的公钥,公钥是元数据服务器根据第二请求携带的用户标识获取的;
处理单元902还用于使用公钥将用户密码加密为密文密码;
发送单元903还用于将用户标识和密文密码发送给元数据服务器。
参阅图10,在一个实施例中,本申请的实例管理装置1000的一个实施例包括获取单元1001,发送单元1002,接收单元1003和处理单元1004;
获取单元1001用于获取与用户标识对应的密钥对;
发送单元1002用于向计算装置发送创建实例请求;
接收单元1003用于接收计算装置发送的实例信息;
处理单元1004用于将密钥对和用户标识对应的实例进行绑定;
发送单元1002还用于将用户标识与密钥对发送给元数据服务器。
在一个可选实施例中,
获取单元1001具体用于接收终端发送的创建密钥对请求,创建密钥对请求包括用户标识;根据创建密钥对请求生成与用户标识对应的密钥对。
在另一个可选实施例中,发送单元1002还用于将密钥对中的私钥发送给终端。
在另一个可选实施例中,获取单元1001具体用于接收终端发送的用户标识和密钥对。
本申请提供一种计算设备能够执行上述实施例中由计算装置执行的步骤。如图11所示,在一个实施例中,计算设备1100包括处理器1101和内存1104。处理器1101通过双倍速率(double data rate,DDR)总线1103和内存1104相连。这里,不同的内存1104可能采用不同的数据总线与处理器1101通信,因此DDR总线1103也可以替换为其他类型的数据总线,本申请实施例不对总线类型进行限定。另外,计算设备1100还包括各种输入输出设备,处理器1101可以通过PCIe总线1105访问这些输入输出设备1107。
处理器(Processor)1101是计算设备1100的运算核心和控制核心。处理器1101可以包括一个或多个处理核(core)1102。处理器1101可以是一块超大规模的集成电路。在处理器1101中安装有操作系统和其他软件程序,从而处理器1101能够实现对内存1104及各种PCIe设备的访问。可以理解的是,在本申请实施例中,处理器1101中的处理核1102例如可以是中央处理器(Central Processing unit,CPU),可以是其他特定集成电路(ApplicationSpecific Integrated Circuit,ASIC)。处理器1101还可以是是其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specificintegrated circuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。实际应用中,计算设备100也可以包括多个处理器。
内存控制器(Memory Controller)是计算设备1100内部控制内存1104并用于管理与规划从内存1104到处理核1102间的数据传输的总线电路控制器。通过内存控制器,内存1104与处理核1102之间可以交换数据。内存控制器可以是一个单独的芯片,并通过系统总线与处理核1102连接。本领域技术人员可以知道,内存控制器也可以被集成到处理器1101中,也可以被内置于北桥中,还可以是一块独立的内存控制器芯片,本申请实施例不对内存控制器的具体位置和存在形式进行限定。实际应用中,内存控制器可以控制必要的逻辑以将数据写入内存1104或从内存1104中读取数据。内存控制器1104可以是通用处理器、专用加速器、GPU、FPGA、嵌入式处理器等处理器系统中的内存控制器。
内存1104是计算设备1100的主存。内存1104通常用来存放操作系统中各种正在运行的软件、输入和输出数据以及与外存交换的信息等。为了提高处理器1101的访问速度,内存1104需要具备访问速度快的优点。在传统的计算机系统架构中,通常采用动态随机存取存储器(Dynamic Random Access Memory,DRAM)作为内存1104。处理器1101能够通过内存控制器高速访问内存1104,对内存1104中的任意一个存储单元进行读操作和写操作。除了DRAM之外,内存1104还可以是其他随机存取存储器,例如静态随机存取存储器(StaticRandom Access Memory,SRAM)等。另外,内存1104也可以是只读存储器(Read OnlyMemory,ROM)。而对于只读存储器,举例来说,可以是可编程只读存储器(ProgrammableRead Only Memory,PROM)、可抹除可编程只读存储器(Erasable Programmable Read OnlyMemory,EPROM)等。本实施例不对内存1104的数量和类型进行限定。此外,可对内存1104进行配置使其具有保电功能。保电功能是指系统发生掉电又重新上电时,存储器中存储的数据也不会丢失。具有保电功能的内存1104被称为非易失性存储器。
输入输出(input/ourput,I/O)设备1107是指可以进行数据传输的硬件,也可以理解为与I/O接口对接的设备。常见的I/O设备有网卡、打印机、键盘、鼠标等。所有的外存也可以作为I/O设备,如硬盘、软盘、光盘等。处理器1101可通过PCIe总线1105访问各个输入输出1107。需要说明的是,PCIe总线1105只是其中的一个示例,可以被替换为其他总线,例如统一(unified bus,UB)总线等。
基板管理控制器(Baseboard Management Controller,BMC)1106,可以对设备进行固件升级,对设备的运行状态进行管理以及排除故障等。处理器1101可通过PCIe总线或者USB、I2C等总线访问基板管理控制器1106。基板管理控制器1106还可以和至少一个传感器相连。通过传感器获取计算设备的状态数据,其中状态数据包括:温度数据,电流数据、电压数据等等。在本申请中不对状态数据的类型做具体限制。基板管理控制器1106通过PCIe总线或者其他类型的总线和处理器1101通信,例如,将获取到的状态数据,传递给处理器1101进行处理。基板管理控制器1106也可以对内存1104中的程序代码进行维护,包括升级或恢复等等。基板管理控制器1106还可以对计算设备1100内的电源电路或时钟电路进行控制等。总之,基板管理控制器1106可以通过以上方式实现对计算设备1100的管理。然而,基板管理控制器1106只是一个可选设备。在一些实施方式中,处理器1101可以直接和传感器通信,从而对计算设备直接进行管理和维护。
本实施例中,内存1104用于存储程序,指令或数据等信息。通过调用内存1104存储的程序或指令,处理器1101用于执行上述实施例中由计算装置执行的步骤或者实例管理装置执行的步骤。
本申请提供一种服务器能够执行上述实施例中由实例管理装置执行的步骤。图12是本申请实施例提供的一种服务器结构示意图。参阅图12,该服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)1222(例如,一个或一个以上处理器)和存储器1232,一个或一个以上存储应用程序1242或数据1244的存储介质1230(例如一个或一个以上海量存储设备)。其中,存储器1232和存储介质1230可以是短暂存储或持久存储。存储在存储介质1230的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储介质1230通信,在服务器1200上执行存储介质1230中的一系列指令操作。
服务器1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作系统1241,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行上述实施例或可选实施例中的认证方法。
本申请还提供一种包括计算机程序产品,当其在计算机上运行时,使得计算机执行如上述所示实施例或可选实施例中的认证方法。
本申请还提供一种芯片系统,该芯片系包括相互耦合的处理器和存储器。存储器用于存储的计算机程序或指令,该处理单元用于执行存储器存储的计算机程序或指令,以使路由设备执行上述实施例中由第一路由设备、目标路由设备或第二路由设备执行的步骤。可选地,存储器为芯片内的存储器,如寄存器、缓存等,存储器还可以是站点内的位于芯片外部的存储器,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,专用集成电路(application specificintegrated circuit,ASIC)或一个或多个用于实现上述认证方法的集成电路。
另外需说明的是,以上所描述的装置实施例只是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。

Claims (15)

1.一种认证方法,其特征在于,包括:
接收终端发送的用户标识和私钥;
向元数据服务器发送包括所述用户标识的第一请求,所述第一请求用于获取与所述用户标识对应的密文密码;
接收所述元数据服务器根据所述第一请求发送的密文密码,所述密文密码是使用公钥对用户密码加密得到的;
根据所述私钥对所述密文密码进行解密;
根据解密结果进行实例登录认证。
2.根据权利要求1所述的方法,其特征在于,所述根据解密结果进行实例登录认证包括:
当解密结果为所述用户标识对应的用户密码时,确定所述终端通过实例登录认证;
当解密结果不是所述用户标识对应的用户密码时,确定所述终端登录实例失败。
3.根据权利要求1或2所述的方法,其特征在于,在所述接收终端发送的用户标识和私钥之前,所述方法还包括:
接收元数据服务器发送的所述用户标识;
使用伪随机函数生成所述用户密码;
向所述元数据服务器发送包括所述用户标识的第二请求;
接收所述元数据服务器发送的公钥,所述公钥是所述元数据服务器根据所述第二请求携带的用户标识获取的;
使用所述公钥将所述用户密码加密为所述密文密码;
将所述用户标识和所述密文密码发送给所述元数据服务器。
4.一种认证方法,其特征在于,包括:
获取与用户标识对应的密钥对;
向计算装置发送创建实例请求;
接收所述计算装置发送的实例信息;
将所述密钥对和所述用户标识对应的实例进行绑定;
将所述用户标识与所述密钥对发送给元数据服务器。
5.根据权利要求4所述的方法,其特征在于,所述获取与用户标识对应的密钥对包括:
接收所述终端发送的创建密钥对请求,所述创建密钥对请求包括用户标识;
根据所述创建密钥对请求生成与所述用户标识对应的密钥对。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
将所述密钥对中的私钥发送给所述终端。
7.根据权利要求4所述的方法,其特征在于,所述获取与用户标识对应的密钥对包括:
接收所述终端发送的用户标识和密钥对。
8.一种计算装置,其特征在于,包括:
接收单元,用于接收终端发送的用户标识和私钥;
发送单元,用于向元数据服务器发送包括所述用户标识的第一请求,所述第一请求用于获取与所述用户标识对应的密文密码;
所述接收单元,还用于接收所述元数据服务器根据所述第一请求发送的密文密码,所述密文密码是使用公钥对用户密码加密得到的;
处理单元,用于根据所述私钥对所述密文密码进行解密,根据解密结果进行实例登录认证。
9.根据权利要求8所述的计算装置,其特征在于,
所述处理单元具体用于当解密结果为所述用户标识对应的用户密码时,确定所述终端通过实例登录认证;当解密结果不是所述用户标识对应的用户密码时,确定所述终端登录实例失败。
10.根据权利要求8或9所述的计算装置,其特征在于,
所述接收单元还用于接收元数据服务器发送的所述用户标识;
所述处理单元还用于使用伪随机函数生成所述用户密码;
所述发送单元还用于向所述元数据服务器发送包括所述用户标识的第二请求;
所述接收单元还用于接收所述元数据服务器发送的公钥,所述公钥是所述元数据服务器根据所述第二请求携带的用户标识获取的;
所述处理单元还用于使用所述公钥将所述用户密码加密为密文密码;
所述发送单元还用于将所述用户标识和所述密文密码发送给所述元数据服务器。
11.一种实例管理装置,其特征在于,包括:
获取单元,用于获取与用户标识对应的密钥对;
发送单元,用于向计算装置发送创建实例请求;
接收单元,用于接收所述计算装置发送的实例信息;
处理单元,用于将所述密钥对和所述用户标识对应的实例进行绑定;
所述发送单元,还用于将所述用户标识与所述密钥对发送给元数据服务器。
12.根据权利要求11所述的实例管理装置,其特征在于,
所述获取单元具体用于接收所述终端发送的创建密钥对请求,所述创建密钥对请求包括用户标识;根据所述创建密钥对请求生成与所述用户标识对应的密钥对。
13.根据权利要求12所述的实例管理装置,其特征在于,
所述发送单元还用于将所述密钥对中的私钥发送给所述终端。
14.根据权利要求11所述的实例管理装置,其特征在于,
所述获取单元具体用于接收所述终端发送的用户标识和密钥对。
15.一种计算机可读存储介质用于存储指令,其特征在于,当所述指令在计算机上运行时,使得计算机执行权利要求1至7中任一项所述的方法。
CN202210121290.XA 2022-02-09 2022-02-09 一种认证方法,计算装置和实例管理装置 Pending CN116614241A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210121290.XA CN116614241A (zh) 2022-02-09 2022-02-09 一种认证方法,计算装置和实例管理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210121290.XA CN116614241A (zh) 2022-02-09 2022-02-09 一种认证方法,计算装置和实例管理装置

Publications (1)

Publication Number Publication Date
CN116614241A true CN116614241A (zh) 2023-08-18

Family

ID=87676950

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210121290.XA Pending CN116614241A (zh) 2022-02-09 2022-02-09 一种认证方法,计算装置和实例管理装置

Country Status (1)

Country Link
CN (1) CN116614241A (zh)

Similar Documents

Publication Publication Date Title
US10171432B2 (en) Systems to implement security in computer systems
US10567360B2 (en) SSH key validation in a hyper-converged computing environment
US9252946B2 (en) Method and system to securely migrate and provision virtual machine images and content
US20160028551A1 (en) Systems and methods for hardware security module as certificate authority for network-enabled devices
US10262130B2 (en) System and method for providing cryptographic operation service in virtualization environment
US20160366130A1 (en) Apparatus and method for providing security service based on virtualization
US20140137115A1 (en) Secure Communication Using a Trusted Virtual Machine
TW201635180A (zh) 與網路服務主機通訊之安全硬體安全模組系統與方法
US10462182B2 (en) Thin agent-based SSL offloading
EP3363149A1 (en) System, apparatus and method for migrating a device having a platform group
WO2016107394A1 (zh) 虚拟机的深度证明方法、计算设备和计算机系统
KR20140099325A (ko) 글로벌 플랫폼 규격을 사용하는 발행자 보안 도메인에 대한 키 관리 시스템 및 방법
US8738915B2 (en) System and method for establishing perpetual trust among platform domains
US20160323104A1 (en) Autonomous private key recovery
KR20150092890A (ko) 가상화 기반 보안 강화 장치 및 그 방법
CN111669351B (zh) 鉴权方法、业务服务器、客户端及计算机可读存储介质
JP2016189527A (ja) 情報処理装置及び情報処理システム及び情報処理方法及び情報処理プログラム
CN111158857B (zh) 数据加密方法、装置、设备及存储介质
KR20230027241A (ko) 공유 자원 식별
CN105871540A (zh) 一种基于宿主机的密码机及密码运算实现方法
CN116418522A (zh) 一种基于虚拟化技术的云服务器密码机系统
WO2023041025A1 (zh) 基于云技术的计算节点及基于云技术的实例管理方法
CN116614241A (zh) 一种认证方法,计算装置和实例管理装置
CN110115012B (zh) 一种秘密信息的分发方法和设备
US11805109B1 (en) Data transfer encryption offloading using session pairs

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication