CN112153055B - 鉴权方法及装置、计算设备和介质 - Google Patents

鉴权方法及装置、计算设备和介质 Download PDF

Info

Publication number
CN112153055B
CN112153055B CN202011025626.XA CN202011025626A CN112153055B CN 112153055 B CN112153055 B CN 112153055B CN 202011025626 A CN202011025626 A CN 202011025626A CN 112153055 B CN112153055 B CN 112153055B
Authority
CN
China
Prior art keywords
authentication
connection
memory
information
authentication 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.)
Active
Application number
CN202011025626.XA
Other languages
English (en)
Other versions
CN112153055A (zh
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 Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202011025626.XA priority Critical patent/CN112153055B/zh
Publication of CN112153055A publication Critical patent/CN112153055A/zh
Priority to JP2021029103A priority patent/JP7194212B2/ja
Priority to EP21161228.8A priority patent/EP3975499A1/en
Priority to KR1020210031338A priority patent/KR102520809B1/ko
Priority to US17/206,978 priority patent/US20210211424A1/en
Application granted granted Critical
Publication of CN112153055B publication Critical patent/CN112153055B/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/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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • 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/107Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Power Engineering (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本公开提供一种鉴权方法及装置、计算设备和介质,涉及云计算技术领域。所述鉴权方法包括:接收连接请求,所述连接请求包含鉴权信息;从所述连接请求中提取所述鉴权信息;基于所提取的所述鉴权信息,确定连接鉴权结果;响应于所述连接鉴权结果指示鉴权成功,至少基于所述连接鉴权结果和所提取的所述鉴权信息确定鉴权存储数据;响应于所述连接鉴权结果指示鉴权成功,接收至少一个服务请求;基于所述鉴权存储数据,对所述至少一个服务请求中的每一个服务请求执行鉴权。

Description

鉴权方法及装置、计算设备和介质
技术领域
本公开涉及云计算技术领域,特别涉及一种鉴权方法及装置、计算设备和介质。
背景技术
在云计算系统中,为了提高资源利用率,通常可以使用一组云服务器同时服务多个用户。为了避免云服务器中发生越界访问,用户数据泄露的情况,保障用户数据的安全性,当云服务器接收到来自用户的请求时,需要对接收到的请求进行鉴权。每一个用户只允许在其权限范围内对云服务器中的数据进行访问。
在此部分中描述的方法不一定是之前已经设想到或采用的方法。除非另有指明,否则不应假定此部分中描述的任何方法仅因其包括在此部分中就被认为是现有技术。类似地,除非另有指明,否则此部分中提及的问题不应认为在任何现有技术中已被公认。
发明内容
根据本公开的一方面,提供一种鉴权方法,包括:接收连接请求,连接请求包含鉴权信息;从连接请求中提取鉴权信息;基于所提取的鉴权信息,确定连接鉴权结果;响应于连接鉴权结果指示鉴权成功,至少基于连接鉴权结果和所提取的鉴权信息确定鉴权存储数据;响应于连接鉴权结果指示鉴权成功,接收至少一个服务请求;基于鉴权存储数据,对至少一个服务请求中的每一个服务请求执行鉴权。
根据本公开的另一方面,还提供一种鉴权装置,包括:接收单元,被配置用于接收连接请求,连接请求包含鉴权信息;提取单元,被配置用于从连接请求中提取鉴权信息;第一确定单元,被配置用于基于所提取的鉴权信息,确定连接鉴权结果;第二确定单元,被配置用于响应于连接鉴权结果指示鉴权成功,至少基于连接鉴权结果和所提取的鉴权信息确定鉴权存储数据,其中,接收单元,还被配置用于响应于连接鉴权结果指示鉴权成功,接收至少一个服务请求;鉴权单元,被配置用于基于鉴权存储数据,对至少一个服务请求中的每一个服务请求执行鉴权。
根据本公开的另一方面,还提供一种计算设备,包括:处理器;以及存储程序的存储器,程序包括指令,指令在由处理器执行时使处理器执行根据上述的鉴权方法。
根据本公开的另一方面,还提供一种存储程序的计算机可读存储介质,程序包括指令,指令在由计算设备的处理器执行时,致使计算设备执行根据上述的鉴权方法。
根据本公开的另一方面,还提供一种计算机程序产品,包括存储于可读取的计算机存储介质的计算机程序,其中,所述计算机程序包括在被计算设备的处理器执行时实现上述的鉴权方法的指令。
本公开通过鉴权存储数据对接收的每一个服务请求进行鉴权,在保证用户数据安全性的基础上,能够提升系统处理效率。
附图说明
附图示例性地示出了实施例并且构成说明书的一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于例示的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
图1是示出根据示例性实施例的鉴权方法的流程图;
图2是示出根据示例性实施例的鉴权信息的注入示意图;
图3是示出根据示例性实施例的鉴权存储数据的存储示意图;
图4是示出根据示例性实施例的鉴权装置的示意性组成框图;
图5是示出能够应用于示例性实施例的示例性计算设备的结构框图。
具体实施方式
在本公开中,除非另有说明,否则使用术语“第一”、“第二”等来描述各种要素不意图限定这些要素的位置关系、时序关系或重要性关系,这种术语只是用于将一个元件与另一元件区分开。在一些示例中,第一要素和第二要素可以指向该要素的同一实例,而在某些情况下,基于上下文的描述,它们也可以指代不同实例。
在本公开中对各种示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。除非上下文另外明确地表明,如果不特意限定要素的数量,则该要素可以是一个也可以是多个。此外,本公开中所使用的术语“和/或”涵盖所列出的项目中的任何一个以及全部可能的组合方式。
在云计算系统中,使用一组云服务器同时服务多个用户。为了保证每一个用户在云服务器中的数据隔离性和安全性,避免云服务器中的越界访问,云计算系统为每一个用户确定了特定的访问权限,以此限定其在云服务器中可以访问的数据范围、操作权限等。对于用户的每一个请求,只有在该用户所具有的访问权限范围内,才能被允许进行相关处理。
相关技术中,为了保证云计算系统的处理效率,云服务器只在网络层的连接建立时,基于连接请求中的访问入口信息进行一次鉴权,并将鉴权信息和鉴权得到的包括该用户访问权限的鉴权结果存储在云服务器内存中。对于后续基于该连接的每一个服务请求,云服务器不再进行鉴权,而是直接基于已经被存储在内存中的鉴权信息和鉴权结果,确定该服务请求所具有的访问权限,并对该服务请求进行处理。
然而,这种方式虽然能够减少云服务器的计算开销,但是却存在安全隐患。例如,在软件出现bug或者遭到第三方的恶意攻击时,存储在云服务器中的鉴权信息和连接鉴权结果可能会被篡改。或者,当访问入口的访问权限在网络连接建立后发生变更时,会导致存储在云服务器中的鉴权信息和鉴权结果与变更后的访问权限不一致。在这种情况下,当云服务器接收到服务请求时,将会基于已经被篡改的或者变更前的鉴权结果确定该用户的访问权限,导致服务器中的越界访问或数据泄露。
基于此,本公开提出一种鉴权方法,通过从连接请求中提取所包含的鉴权信息进行连接鉴权,并响应于连接鉴权结果指示鉴权成功,至少基于连接鉴权结果和所提取的鉴权信息确定鉴权存储数据。响应于连接鉴权结果指示鉴权成功,客户端和云服务器之间建立连接,云服务器接收基于该连接的服务请求。在对服务请求进行处理之前,云服务器基于该鉴权存储数据,对每一个服务请求执行鉴权。从而能够实现云服务器基于本地存储的鉴权存储数据对每一个服务请求进行鉴权,鉴权速度快,保证云服务器处理效率。同时,还能够克服仅依赖云服务器存储的连接鉴权结果来确定所有服务请求对应的用户访问权限时可能导致的安全隐患问题,提升用户数据的安全性。
本公开的技术方案不局限于云服务器的多租户鉴权,也适用于其它服务器的多租户鉴权。
以下将结合附图对本公开的鉴权方法进行进一步描述。
图1是示出根据本公开示例性实施例的一种鉴权方法的流程图。如图1所示,鉴权方法可以包括:步骤S101、接收连接请求,连接请求包含鉴权信息;步骤S102、从连接请求中提取鉴权信息;步骤S103、基于所提取的鉴权信息,确定连接鉴权结果;步骤S104、响应于连接鉴权结果指示鉴权成功,至少基于连接鉴权结果和所提取的鉴权信息确定鉴权存储数据;步骤S105、响应于连接鉴权结果指示鉴权成功,接收至少一个服务请求;步骤S106、基于鉴权存储数据,对至少一个服务请求中的每一个服务请求执行鉴权。由此,在连接鉴权通过后,通过本地的鉴权存储数据对每一个服务请求均进行鉴权,从而能够在保证云服务器处理效率的同时,还能够提升用户数据的安全性。
在用户申请云服务器的访问权限之后,可以通过网关203在用户可信环境中为用户生成独立的访问入口202。其中,在云计算场景下,用户可信环境201可以包括用户的虚拟机、容器、虚拟网络等,在此不做限定。用户通过该访问入口202对云服务器205进行访问。其中,该云服务器205可以包括一个或多个服务器,参见图2所示。
在网络层连接建立的过程中,用户端通过访问入口发送连接请求至网关,网关在接收到连接请求之后,将该连接请求转发至云服务器,从而能够建立用户端与云服务器的网络层连接。
根据一些实施例,可以在第三方鉴权服务器存储与访问入口相应的鉴权信息,也可以在网关中存储与访问入口相应的鉴权信息,在此不作限定。在示例性实施例中,网关在接收到来自访问入口的连接请求时可以从本地或第三方鉴权服务器获取相应的鉴权信息,并将所获取的鉴权信息注入连接请求中。从而能够实现在连接请求中注入鉴权信息的过程对于用户是透明的,用户无法篡改鉴权过程,从而保证了鉴权信息传递的安全性。
图2是示出根据示例性实施例的鉴权信息的注入示意图。在图2示意的示例中,网关203可以从鉴权服务器204获取鉴权信息,并将鉴权信息注入连接请求中,以使得连接请求包含鉴权信息。由此,能够通过第三方独立存储鉴权信息,减轻云计算系统的存储压力。
在一些示例性实施例中,网关203可以基于鉴权信息对连接请求进行修改,以将鉴权信息注入连接请求中。具体地,网关203可以通过修改连接请求中的握手数据包,将鉴权信息注入连接请求中。云服务器205在接收到包含鉴权信息的连接请求后,从连接请求中提取出鉴权信息,并将握手数据包修改回原始数据,进行后续的处理。
在另一些示例性实施例中,网关203可以通过数据插入的方式将鉴权信息注入连接请求。具体地,网关203可以将鉴权信息插在握手数据包之前,对连接请求中的数据不进行修改。云服务器205在接收到包含鉴权信息的连接请求后,从插入位置提取出鉴权信息,得到原始的连接请求进行后续的处理。
根据一些实施例,在网关从本地获取鉴权信息的情况下,连接请求可以包括访问入口(例如IP地址),鉴权信息可以包括鉴权IP地址。鉴权方法还可以包括:为访问入口配置唯一的鉴权IP地址;在网关203中存储与连接请求相应的鉴权IP地址;以及网关将鉴权IP地址注入连接请求中,以使得连接请求包含鉴权IP地址。由此,网关203无需访问鉴权服务器204,鉴权速度更快。在示例中,网关203可以但不限于通过将连接请求中的访问IP地址替换为相应的鉴权IP地址,以使得连接请求包含鉴权信息。
鉴权IP地址可以由网关配置,也可以由其它设备配置。
上述技术方案中,通过网关将鉴权信息注入连接请求,能够保证鉴权信息对用户端透明,即注入的鉴权信息对用户不可见,用户进而无法篡改整个鉴权过程,能够保证鉴权过程的可靠性,提升系统安全性。
网关将包含鉴权信息的连接请求转发至云服务器,在云服务器接收到包含鉴权信息的连接请求之后,从连接请求中提取鉴权信息,并基于所提取的鉴权信息,确定连接鉴权结果。
根据一些实施例,确定连接鉴权结果可以包括:将鉴权信息发送给鉴权服务器,接收从鉴权服务器返回的连接鉴权结果。由此,云服务器基于连接请求所携带的鉴权信息,通过与鉴权服务器的交互实现了对连接请求的鉴权,从而能够保证连接鉴权结果的可靠性,提升网络层连接的安全性。
连接鉴权结果不仅可以指示连接鉴权是否成功,还可以指示用户在云服务器中的访问权限。
响应于连接鉴权结果指示鉴权成功,用户端与云服务器成功建立网络层连接。然后,可以基于连接鉴权结果和所提取的鉴权信息确定鉴权存储数据,从而能够基于本地的鉴权存储数据对随后基于该连接所接收的每一个服务请求执行鉴权。
根据一些实施例,鉴权存储数据可以包括鉴权状态。在这种情况下,鉴权方法还可以包括:在云服务器中创建鉴权上下文内存;以及将鉴权状态存储在鉴权上下文内存中。相应地,响应于连接鉴权结果指示鉴权成功,至少基于连接鉴权结果和所提取的鉴权信息确定鉴权存储数据可以包括:响应于连接鉴权结果指示鉴权成功,将鉴权上下文内存中的鉴权状态设置为成功。
在示例中,可以响应于连接鉴权结果指示鉴权失败,将鉴权上下文内存中的鉴权状态设置为失败。
在一种实施方式中,在鉴权存储数据包括鉴权状态的情况下,基于鉴权存储数据,对至少一个服务请求中的每一个服务请求执行鉴权可以包括:响应于接收到服务请求,确定鉴权上下文内存中存储的鉴权状态是否为成功;以及响应于确定鉴权状态为不成功,确定服务请求的服务鉴权结果为不通过,由此,可以基于对可读写的鉴权状态的设置反映当前访问权限的变化,并以此作为服务鉴权的依据。
在另一种实施方式中,鉴权存储数据可以包括鉴权上下文内存地址。在这种情况下,鉴权方法还可以包括:响应于连接鉴权结果指示鉴权成功,创建只读内存;以及将鉴权上下文内存地址存储在只读内存中。相应地,至少基于所设置的鉴权存储数据,对至少一个服务请求中的每一个服务请求执行鉴权可以包括:确定鉴权上下文内存的实际地址和只读内存中存储的鉴权上下文内存地址是否一致;以及响应于确定鉴权上下文内存的实际地址和只读内存中存储的鉴权上下文内存地址不一致,确定服务请求的服务鉴权结果为不通过。由于存储在只读内存中的鉴权上下文内存地址不会被篡改,由此,通过对鉴权上下文内存的实际地址和只读内存中存储的鉴权上下文内存地址的比对,可以避免系统读取错误的鉴权上下文内存,以及鉴权状态,避免系统对于访问权限的误判。
在另一种实施方式中,鉴权存储数据可以包括鉴权信息和连接鉴权结果。在这种情况下,鉴权方法还可以包括:将所提取的鉴权信息和连接鉴权结果存储在可读写内存中;响应于连接鉴权结果指示鉴权成功,创建只读内存;以及将鉴权信息和连接鉴权结果存储在只读内存中。相应地,至少基于所设置的鉴权存储数据,对至少一个服务请求中的每一个服务请求执行鉴权还可以包括:确定只读内存和可读写内存两者中存储的鉴权信息和连接鉴权结果是否一致;以及响应于确定只读内存和可读写内存两者中存储的鉴权信息和连接鉴权结果中的至少其中之一连接鉴权结果不一致,确定服务请求的服务鉴权结果为不通过。由于存储在只读内存中的鉴权信息和鉴权结果不会被篡改,由此,通过比对只读内存中存储的鉴权信息和鉴权结果,与被存储在可读写内存中的鉴权信息和鉴权状态进行服务鉴权,可以避免在鉴权信息和鉴权结果被篡改后,系统对访问权限的误判。
上述实施方式中,通过在云服务器中创建可读写的鉴权上下文内存和只读内存来存储鉴权存储数据,并且通过比对该鉴权上下文内存和只读内存中存储的鉴权存储数据来进行服务鉴权。可以理解的是,在此仅是举例说明如何基于本地存储的鉴权存储数据来进行服务鉴权,并不限定仅能通过上述方式来实现基于本地存储的鉴权存储数据进行服务鉴权。
作为一个优选实施例,鉴权存储数据可以包括鉴权状态、鉴权上下文内存地址、以及鉴权参数(鉴权信息和连接鉴权结果)中的至少两个的组合。可以响应于组合中的任一个不满足通过条件(具体详见上文),确定服务请求的服务鉴权结果为不通过。反之,可以响应于组合中的全部满足通过条件,确定服务请求的服务鉴权结果为通过。由此,通过设置多个鉴权存储数据,能够进一步提高鉴权的可靠性,进一步提升用户数据的安全性。
图3是示出根据示例性实施例的鉴权存储数据的存储示意图。参见图3所示,鉴权存储数据的存储流程可以为:
步骤1、云服务器在内存中创建鉴权上下文内存300,在该鉴权上下文内存300中存储只读内存地址301和鉴权状态302。其中,只读内存地址301的初始值为空值;
步骤2、如果连接鉴权结果指示鉴权失败,将鉴权上下文内存中的鉴权状态设置为失败,鉴权过程结束。如果连接鉴权结果指示鉴权成功,继续执行步骤3;
步骤3、响应于连接鉴权结果指示鉴权成功,云服务器在内存中创建一个独立的内存400,将鉴权信息401、连接鉴权结果402和鉴权上下文内存地址403存储到该内存400。然后,将给内存设置为只读状态。只读内存在其只读状态被解除以前,其存储的内容只能被读取,无法被修改;
步骤4、将鉴权上下文内存300中保存的只读内存地址301设置为步骤3中为只读内存400分配的内存地址,并将鉴权状态302设置为“成功”;
步骤5、云服务器将存储在只读内存400中的鉴权信息401、连接鉴权结果402和鉴权上下文内存地址403与所建立的网络层连接进行绑定。
至此,完成鉴权存储数据的确定和存储。
作为一个优选实施例,鉴权存储数据可以包括鉴权状态、鉴权上下文内存地址、以及鉴权信息和连接鉴权结果。响应于接收到服务请求,云服务器基于在鉴权上下文内存300和只读内存400存储中存储的鉴权存储数据实现对服务请求的鉴权。在这种情况下,确定服务请求鉴权通过需要满足以下条件:
1、鉴权上下文内存300中的鉴权状态302为“成功”;
2、鉴权上下文内存300的实际内存地址与只读内存400中存储的鉴权上下文内存地址403一致;
3、只读内存400中存储的鉴权信息401、连接鉴权结果402与被存储在云服务器可读写内存中的鉴权信息、连接鉴权结果一致。
只有当以上三个条件同时满足时,才确定接收到的服务请求的鉴权结果为通过。只要有其中一个条件不满足时,确定接收到的服务请求的鉴权结果为不通过。
本公开的技术方案中,一方面,云服务器对于服务请求的鉴权在云服务器的内部进行。该鉴权过程不依赖于鉴权信息,也不需要通过与鉴权服务器的通信执行鉴权,因此,鉴权速度快,节省了云服务器的计算开销,提升了系统的运行效率。另一方面,云服务器在内存中增设了可读写的鉴权上下文内存和只读内存用以存储鉴权存储数据。当接收到服务请求时,基于鉴权存储数据进行多重条件的鉴权,保障了云服务器中的数据安全性。
根据一些实施例,当所建立的网络层连接断开时,将鉴权上下文内存中的鉴权状态设置为错误。同时,可以解除只读内存的只读状态,并删除只读内存中存储的数据,从而能够避免存储在只读内存中的数据在释放后被泄露。
在实际应用过程中,存在用于建立网络层连接的鉴权信息可能会在连接被建立之后失效的情况。例如,用户的访问权限被更改或取消。如果云服务器无法及时获知鉴权信息失效的信息,可能会导致用户端基于已经建立的网络层连接,基于原服务权限继续访问云服务器,导致云服务器的越界访问和数据泄露。
为了解决上述技术问题,鉴权方法还可以包括:确定鉴权信息是否失效,响应于确定鉴权信息失效,将鉴权上下文内存中的鉴权状态设置为失效。由此,通过可读写的鉴权上下文内存中存储的鉴权状态能够及时反映鉴权信息是否有效。对于鉴权信息失效后接收到的服务请求,云服务器在执行鉴权时会因为鉴权状态为“失效”而导致鉴权不通过,进而防止用户的越界访问。
根据一些实施例,可以由鉴权服务器在鉴权信息失效时,直接向云服务器发送关于鉴权信息失效的通知。在这种情况下,确定鉴权信息是否失效可以包括:接收鉴权服务器发送的关于鉴权信息是否失效的通知。由此,云服务器能够及时获知鉴权信息是否失效。
根据另一些实施例,可以由云服务器以预定时间间隔向鉴权服务器发送确认鉴权信息是否失效的请求,当鉴权信息失效时,鉴权服务器向云服务器反馈关于鉴权信息失效的通知。换言之,确定鉴权信息是否失效可以包括:以预定时间间隔向鉴权服务器发送确认鉴权信息是否失效的请求;以及接收鉴权服务器发送的关于鉴权信息是否失效的通知。由此,鉴权服务器仅对发送确认请求的云服务器返回鉴权信息的失效,减少交互数据量,提升系统的处理效率。
根据本公开的另一方面,如图4所示,还提供一种鉴权装置100,包括:接收单元101,被配置用于接收连接请求,连接请求包含鉴权信息;提取单元102,被配置用于从连接请求中提取鉴权信息;第一确定单元103,被配置用于基于所提取的鉴权信息,确定连接鉴权结果;第二确定单元104,被配置用于响应于连接鉴权结果指示鉴权成功,至少基于连接鉴权结果和所提取的鉴权信息确定鉴权存储数据,其中,接收单元,还被配置用于响应于连接鉴权结果指示鉴权成功接收至少一个服务请求;鉴权单元105,被配置用于基于鉴权存储数据,对至少一个服务请求中的每一个服务请求执行鉴权。
这里,鉴权装置100的上述各单元101-105的操作与前面描述的步骤S101-S106的操作类似,在此不再赘述。
根据一些实施例,第一确定单元可以包括:子发送单元,被配置用于将鉴权信息发送给鉴权服务器;以及子接收单元,被配置用于接收从鉴权服务器返回的连接鉴权结果。
根据一些实施例,鉴权装置还可以包括:网关从鉴权服务器获取鉴权信息;以及网关将鉴权信息注入连接请求,以使得连接请求包含鉴权信息。
根据本公开的另一方面,还提供一种计算设备,包括:处理器;以及存储程序的存储器,程序包括指令,指令在由处理器执行时使处理器执行根据上述的鉴权方法。
根据本公开的另一方面,还提供一种存储程序的计算机可读存储介质,程序包括指令,指令在由计算设备的处理器执行时,致使计算设备执行根据上述的鉴权方法。
参见图5所示,现将描述计算设备2000,其是可以应用于本公开的各方面的硬件设备的示例。计算设备2000可以是被配置为执行处理和/或计算的任何机器,可以是但不限于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数字助理、机器人、智能电话、车载计算机或其任何组合。上述生成方法可以全部或至少部分地由计算设备2000或类似设备或系统实现。
软件要素(程序)可以位于工作存储器2014中,包括但不限于操作系统2016、一个或多个应用程序2018、驱动程序和/或其他数据和代码。用于执行上述方法和步骤的指令可以被包括在一个或多个应用程序2018中,并且上述鉴权方法可以通过由处理器2004读取和执行一个或多个应用程序2018的指令来实现。更具体地,上述鉴权方法中,步骤S101~步骤S106可以例如通过处理器2004执行具有步骤S101~步骤S106的指令的应用程序2018而实现。此外,上述鉴权方法中的其它步骤可以例如通过处理器2004执行具有执行相应步骤中的指令的应用程序2018而实现。软件要素(程序)的指令的可执行代码或源代码可以存储在非暂时性计算机可读存储介质(例如上述存储设备2010)中,并且在执行时可以被存入工作存储器2014中(可能被编译和/或安装)。软件要素(程序)的指令的可执行代码或源代码也可以从远程位置下载。
还应该理解,可以根据具体要求而进行各种变型。例如,也可以使用定制硬件,和/或可以用硬件、软件、固件、中间件、微代码,硬件描述语言或其任何组合来实现特定元件。例如,所公开的方法和设备中的一些或全部可以通过使用根据本公开的逻辑和算法,用汇编语言或硬件编程语言(诸如VERILOG,VHDL,C++)对硬件(例如,包括现场可编程门阵列(FPGA)和/或可编程逻辑阵列(PLA)的可编程逻辑电路)进行编程来实现。
还应该理解,前述方法可以通过服务器-客户端模式来实现。例如,客户端可以接收用户输入的数据并将数据发送到服务器。客户端也可以接收用户输入的数据,进行前述方法中的一部分处理,并将处理所得到的数据发送到服务器。服务器可以接收来自客户端的数据,并且执行前述方法或前述方法中的另一部分,并将执行结果返回给客户端。客户端可以从服务器接收到方法的执行结果,并例如可以通过输出设备呈现给用户。
还应该理解,计算设备2000的组件可以分布在网络上。例如,可以使用一个处理器执行一些处理,而同时可以由远离该一个处理器的另一个处理器执行其他处理。计算系统2000的其他组件也可以类似地分布。这样,计算设备2000可以被解释为在多个位置执行处理的分布式计算系统。
虽然已经参照附图描述了本公开的实施例或示例,但应理解,上述的方法、系统和设备仅仅是示例性的实施例或示例,本发明的范围并不由这些实施例或示例限制,而是仅由授权后的权利要求书及其等同范围来限定。实施例或示例中的各种要素可以被省略或者可由其等同要素替代。此外,可以通过不同于本公开中描述的次序来执行各步骤。进一步地,可以以各种方式组合实施例或示例中的各种要素。重要的是随着技术的演进,在此描述的很多要素可以由本公开之后出现的等同要素进行替换。

Claims (15)

1.一种鉴权方法,应用于云服务器,包括:
接收连接请求,所述连接请求包含鉴权信息;
从所述连接请求中提取所述鉴权信息;
基于所提取的所述鉴权信息,确定连接鉴权结果;
响应于所述连接鉴权结果指示鉴权成功,至少基于所述连接鉴权结果和所提取的所述鉴权信息确定鉴权存储数据;
响应于所述连接鉴权结果指示鉴权成功,接收至少一个服务请求;
基于所述鉴权存储数据,对所述至少一个服务请求中的每一个服务请求执行鉴权,其中,所述鉴权存储数据包括鉴权状态;
所述鉴权方法还包括:
创建鉴权上下文内存;以及
将所述鉴权状态存储在所述鉴权上下文内存中,
其中,响应于所述连接鉴权结果指示鉴权成功,至少基于所述连接鉴权结果和所提取的所述鉴权信息确定鉴权存储数据包括:
响应于所述连接鉴权结果指示鉴权成功,将所述鉴权上下文内存中的鉴权状态设置为成功;
并且其中,所述鉴权存储数据包括鉴权上下文内存地址;
所述鉴权方法还包括:
响应于所述连接鉴权结果指示鉴权成功,创建只读内存;以及
将所述鉴权上下文内存地址存储在所述只读内存中,
其中,所述基于所述鉴权存储数据,对所述至少一个服务请求中的每一个服务请求执行鉴权包括:
确定所述鉴权上下文内存的实际地址和所述只读内存中存储的鉴权上下文内存地址是否一致;以及
响应于确定所述鉴权上下文内存的实际地址和所述只读内存中存储的鉴权上下文内存地址不一致,确定所述服务请求的服务鉴权结果为不通过。
2.如权利要求1所述的鉴权方法,其中,确定连接鉴权结果包括:
将所述鉴权信息发送给鉴权服务器;以及
接收从所述鉴权服务器返回的连接鉴权结果。
3.如权利要求2所述的鉴权方法,还包括:
网关从所述鉴权服务器获取所述鉴权信息;以及
网关将所述鉴权信息注入所述连接请求中,以使得所述连接请求包含所述鉴权信息。
4.如权利要求3所述的鉴权方法,其中,基于所述鉴权信息,网关对所述连接请求进行修改,以将所述鉴权信息注入所述连接请求中。
5.如权利要求3所述的鉴权方法,其中,网关通过数据插入的方式将所述鉴权信息注入所述连接请求中。
6.如权利要求2所述的鉴权方法,其中,所述连接请求还包括访问入口,所述鉴权信息包括鉴权IP地址;
所述鉴权方法还包括:
为所述访问入口配置唯一的鉴权IP地址;
在网关中存储与所述访问入口相应的所述鉴权IP地址;以及
网关将所述鉴权IP地址注入所述连接请求中,以使得所述连接请求包含所述鉴权IP地址。
7.如权利要求1所述的鉴权方法,其中,所述基于所述鉴权存储数据,对所述至少一个服务请求中的每一个服务请求执行鉴权包括:
响应于接收到所述服务请求,确定所述鉴权上下文内存中存储的所述鉴权状态是否为成功;以及
响应于确定所述鉴权状态为不成功,确定所述服务请求的服务鉴权结果为不通过。
8.如权利要求1所述的鉴权方法,其中,所述鉴权存储数据包括所述鉴权信息和所述连接鉴权结果;
所述鉴权方法还包括:
将所提取的所述鉴权信息和所述连接鉴权结果存储在可读写内存中;
响应于所述连接鉴权结果指示鉴权成功,创建只读内存;以及
将所述鉴权信息和所述连接鉴权结果存储在所述只读内存中,
其中,所述基于所述鉴权存储数据,对所述至少一个服务请求中的每一个服务请求执行鉴权包括:
确定所述只读内存和所述可读写内存两者中存储的鉴权信息和连接鉴权结果是否一致;以及
响应于确定所述只读内存和所述可读写内存两者中存储的鉴权信息和连接鉴权结果中的至少其中之一不一致,确定所述服务请求的服务鉴权结果为不通过。
9.如权利要求8所述的鉴权方法,还包括:
响应于连接断开,将所述鉴权上下文内存中的鉴权状态设置为错误;以及
解除所述只读内存的只读状态,并删除所述只读内存中存储的数据。
10.如权利要求1所述的鉴权方法,还包括:
确定所述鉴权信息是否失效;以及
响应于确定所述鉴权信息失效,将所述鉴权上下文内存中的鉴权状态设置为失效。
11.如权利要求10所述的鉴权方法,其中,所述确定所述鉴权信息是否失效包括:
接收鉴权服务器发送的关于所述鉴权信息是否失效的通知。
12.如权利要求10所述的鉴权方法,其中,所述确定所述鉴权信息是否失效包括:
以预定时间间隔向鉴权服务器发送确认所述鉴权信息是否失效的请求;以及
接收所述鉴权服务器发送的关于所述鉴权信息是否失效的通知。
13.如权利要求1所述的鉴权方法,还包括:
响应于所述连接鉴权结果指示鉴权失败,将所述鉴权上下文内存中的鉴权状态设置为失败。
14.一种计算设备,包括:
处理器;以及
存储程序的存储器,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1-13中任一项所述的鉴权方法。
15.一种存储程序的计算机可读存储介质,所述程序包括指令,所述指令在由计算设备的处理器执行时,致使所述计算设备执行根据权利要求1-13中任一项所述的鉴权方法。
CN202011025626.XA 2020-09-25 2020-09-25 鉴权方法及装置、计算设备和介质 Active CN112153055B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202011025626.XA CN112153055B (zh) 2020-09-25 2020-09-25 鉴权方法及装置、计算设备和介质
JP2021029103A JP7194212B2 (ja) 2020-09-25 2021-02-25 認証方法及び装置、コンピューティング機器、並びに媒体
EP21161228.8A EP3975499A1 (en) 2020-09-25 2021-03-08 Authentication method and device, computing equipment and medium
KR1020210031338A KR102520809B1 (ko) 2020-09-25 2021-03-10 인증 방법 및 장치, 컴퓨팅 장치 및 매체
US17/206,978 US20210211424A1 (en) 2020-09-25 2021-03-19 Authenticating service requests

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011025626.XA CN112153055B (zh) 2020-09-25 2020-09-25 鉴权方法及装置、计算设备和介质

Publications (2)

Publication Number Publication Date
CN112153055A CN112153055A (zh) 2020-12-29
CN112153055B true CN112153055B (zh) 2023-04-18

Family

ID=73897373

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011025626.XA Active CN112153055B (zh) 2020-09-25 2020-09-25 鉴权方法及装置、计算设备和介质

Country Status (5)

Country Link
US (1) US20210211424A1 (zh)
EP (1) EP3975499A1 (zh)
JP (1) JP7194212B2 (zh)
KR (1) KR102520809B1 (zh)
CN (1) CN112153055B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210028534A (ko) * 2019-09-04 2021-03-12 삼성전자주식회사 전자 장치 및 전자 장치의 인증 방법
CN115022074A (zh) * 2022-06-24 2022-09-06 中国电信股份有限公司 用户认证授权方法、装置、介质及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109522726A (zh) * 2018-10-16 2019-03-26 平安万家医疗投资管理有限责任公司 小程序的鉴权方法、服务器及计算机可读存储介质
CN109617907A (zh) * 2019-01-04 2019-04-12 平安科技(深圳)有限公司 认证方法、电子装置及计算机可读存储介质
CN110708301A (zh) * 2019-09-24 2020-01-17 贝壳技术有限公司 一种用户请求处理方法、装置、电子设备和存储介质
CN111224955A (zh) * 2019-12-25 2020-06-02 中国平安人寿保险股份有限公司 一种服务响应的方法及系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BRPI0412724A (pt) * 2003-07-29 2006-09-26 Thomson Licensing controle do acesso a uma rede utilizando redirecionamento
JP2008181427A (ja) 2007-01-25 2008-08-07 Fuji Xerox Co Ltd シングルサインオンシステム、情報端末装置、シングルサインオンサーバ、プログラム
KR100888979B1 (ko) 2008-09-26 2009-03-19 넷큐브테크놀러지 주식회사 사용자 인증에 기반한 네트워크 접속 관리 시스템 및 방법
US8997196B2 (en) * 2010-06-14 2015-03-31 Microsoft Corporation Flexible end-point compliance and strong authentication for distributed hybrid enterprises
KR101282504B1 (ko) * 2010-09-27 2013-07-05 주식회사 케이티 네트워크 환경에서 소프트웨어 사용 권한 인증 방법
CN102882676A (zh) * 2011-07-15 2013-01-16 深圳市汇川控制技术有限公司 物联网设备端安全接入方法及系统
JP5485246B2 (ja) * 2011-11-05 2014-05-07 京セラドキュメントソリューションズ株式会社 画像形成装置
JP5478591B2 (ja) 2011-11-22 2014-04-23 日本電信電話株式会社 情報システム及びその認証状態管理方法
US8613069B1 (en) * 2013-05-17 2013-12-17 Phantom Technologies, Inc. Providing single sign-on for wireless devices
JP6106558B2 (ja) 2013-08-30 2017-04-05 アラクサラネットワークス株式会社 通信システム及び認証スイッチ
JP6354382B2 (ja) * 2014-06-26 2018-07-11 株式会社リコー 認証システム、認証方法、認証装置及びプログラム
JP7152765B2 (ja) 2016-06-29 2022-10-13 株式会社プロスパークリエイティブ 通信システム、それに用いる通信装置、管理装置及び情報端末
CN111327650A (zh) * 2018-12-14 2020-06-23 中兴通讯股份有限公司 数据传输方法、装置、设备及存储介质
CN111405036A (zh) * 2020-03-13 2020-07-10 北京奇艺世纪科技有限公司 服务访问方法、装置、相关设备及计算机可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109522726A (zh) * 2018-10-16 2019-03-26 平安万家医疗投资管理有限责任公司 小程序的鉴权方法、服务器及计算机可读存储介质
CN109617907A (zh) * 2019-01-04 2019-04-12 平安科技(深圳)有限公司 认证方法、电子装置及计算机可读存储介质
CN110708301A (zh) * 2019-09-24 2020-01-17 贝壳技术有限公司 一种用户请求处理方法、装置、电子设备和存储介质
CN111224955A (zh) * 2019-12-25 2020-06-02 中国平安人寿保险股份有限公司 一种服务响应的方法及系统

Also Published As

Publication number Publication date
CN112153055A (zh) 2020-12-29
KR102520809B1 (ko) 2023-04-11
US20210211424A1 (en) 2021-07-08
EP3975499A1 (en) 2022-03-30
JP2022054382A (ja) 2022-04-06
JP7194212B2 (ja) 2022-12-21
KR20220041706A (ko) 2022-04-01

Similar Documents

Publication Publication Date Title
CN108810006B (zh) 资源访问方法、装置、设备及存储介质
CN109194673A (zh) 基于用户授权信息的认证方法、系统、设备及存储介质
CN108289098B (zh) 分布式文件系统的权限管理方法和装置、服务器、介质
CN110083465B (zh) 一种寄宿应用间的数据传递方法
EP3337219A1 (en) Carrier configuration processing method, device and system, and computer storage medium
CN112153055B (zh) 鉴权方法及装置、计算设备和介质
CN105379223A (zh) 用于移动应用管理的对移动应用的身份的验证
CN103262466A (zh) 认证系统、认证服务器、服务提供服务器、认证方法和计算机可读记录介质
CN103780580A (zh) 提供能力访问策略的方法、服务器和系统
CN103561006A (zh) 基于安卓系统的应用认证方法和装置及应用认证服务器
CN113239377A (zh) 权限控制方法、装置、设备以及存储介质
CN110278192A (zh) 外网访问内网的方法、装置、计算机设备及可读存储介质
CN105025027A (zh) 一种多控存储系统的rpc安全认证方法
KR20160018554A (ko) 신뢰 및 비신뢰 플랫폼에 걸쳐 인터넷 액세스가능 애플리케이션 상태를 로밍하는 기법
CN107645474B (zh) 登录开放平台的方法及登录开放平台的装置
CN101702724A (zh) 网络访问的安全控制方法及装置
CN112699034B (zh) 虚拟登录用户构建方法、装置、设备及存储介质
CN103559430A (zh) 基于安卓系统的应用账号管理方法和装置
CN114301682B (zh) 数据处理方法、装置和终端设备
US20230074455A1 (en) System and method for monitoring delivery of messages passed between processes from different operating systems
CN112543194B (zh) 移动终端登录方法、装置、计算机设备和存储介质
CN113468579A (zh) 数据访问方法、装置、设备和存储介质
CN111698227B (zh) 信息同步管理方法、装置、计算机系统及可读存储介质
CN108256313B (zh) 一种权限管理方法、系统及装置
CN112637116A (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