CN110417863B - 生成身份识别码的方法和装置、身份认证的方法和装置 - Google Patents

生成身份识别码的方法和装置、身份认证的方法和装置 Download PDF

Info

Publication number
CN110417863B
CN110417863B CN201910565923.4A CN201910565923A CN110417863B CN 110417863 B CN110417863 B CN 110417863B CN 201910565923 A CN201910565923 A CN 201910565923A CN 110417863 B CN110417863 B CN 110417863B
Authority
CN
China
Prior art keywords
user
field
tenant
information table
target
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
CN201910565923.4A
Other languages
English (en)
Other versions
CN110417863A (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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei 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 Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201910565923.4A priority Critical patent/CN110417863B/zh
Publication of CN110417863A publication Critical patent/CN110417863A/zh
Priority to PCT/CN2020/084351 priority patent/WO2020258998A1/zh
Application granted granted Critical
Publication of CN110417863B publication Critical patent/CN110417863B/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请实施例提供了一种云计算平台生成ID和身份认证的方法、装置、计算设备及计算机程序产品。在租户请求注册时,生成租户ID,该ID包括,指示租户归属地的第一字段,指示租户的数据所在数据库的数据库编号的第二字段,指示租户的数据所在表的表编号的第三字段,以及指示ID的应用对象的第四字段,其字段值指示该ID为租户。在租户注册成功后,为该租户生成用户,该用户的用户ID的第一字段、第二字段、第三字段的字段值与租户ID相应字段的字段值一一对应相同,该用户ID的第四字段值指示此ID的应用对象为用户。在认证阶段,利用ID查询相应的数据库进行认证。通过ID实现了归属地识别和分库分表,提高了云计算平台的性能。

Description

生成身份识别码的方法和装置、身份认证的方法和装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种在云计算平台上生成身份识别码(identity,ID)和身份认证的方法、装置、计算设备及计算机程序产品。
背景技术
云计算(cloud computing)是一种通过网络以服务的方式向客户提供动态可伸缩的虚拟化资源,例如计算、存储、网络等资源的计算模式。在云计算平台上,每个客户就是一个租户,每个租户希望有严格的租户隔离机制,也即租户的数据跨租户不可见。
云计算平台上租户数量及其庞大。例如,大型的公有云计算平台上的租户数量可以达到百万甚或千万。在大规模的租户数据压力下,公有云计算平台上存放关系型数据的关系型数据库一般都会存在性能瓶颈,这就需要公有云计算平台的厂商将这些租户数据进行分库分表处理,将它们分散存储到多个数据库和表中,以缓解此关系型数据库的压力。
在公有云计算平台上,为了保证各租户的租户数据隔离,公有云计算平台的厂商一般采用分布式系统唯一ID来实现各租户的租户ID以及其他数据ID的唯一性。现有技术中,常见的分布式系统唯一ID生成方案有以下几种:数据库自增长字段,通用唯一识别码(universally unique identifier,UUID),Redis生成ID和雪花(snowflake)ID算法。
这些常见的分布式系统唯一ID生成方案在使用中都逐渐暴露出了一些问题。例如,数据库自增长字段方案在单库环境下问题不大,但在分布式环境下很难保证ID的唯一性。UUID是结合机器的网卡、当地时间和一个随机数来生成的,因此生成的ID完全随机。通过该ID做分库分表时数据分片完全没有规律性,查询数据很不方便。采用Redis生成ID时,系统中需要引入该Redis组件,不仅增加了系统的复杂度,而且大大增加了编码和配置的工作量。snowflake ID算法生成的ID是一个递增的数字ID,且在大规模数据量的场景下,利用该ID进行分库分表非常麻烦。
因此,分布式系统唯一ID生成方案值得研究。
发明内容
有鉴于此,本申请实施例提供了一种生成分布式系统唯一ID以及身份认证的方案。该方案实现了归属地识别和分库分表,提高了云计算平台的性能。
第一方面,提供了一种生成身份识别码的方法。首先,归属云的服务器接收目标租户的注册请求,该注册请求包括该目标租户的租户名和该目标租户的租户密码。然后,归属云的服务器根据该注册请求,为该目标租户生成租户身份识别码,该租户身份识别码包括第一字段、第二字段、第三字段和第四字段。其中,该第一字段用于指示该目标租户的归属地,该第二字段用于指示该目标租户的数据所在数据库的数据库编号,该第三字段用于指示该目标租户的数据所在表的表编号,该第四字段用于指示应用对象,其中,该租户身份识别码的第四字段的字段值指示该应用对象是租户。接着,归属云的服务器在租户信息表中存储该租户名和该租户身份识别码的关联关系。其中,该租户信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该租户信息表具有该第三字段的字段值表示的表编号。
通过为使用云计算平台的目标租户生成携带有数据来源标记的归属地、数据库编号和表编号的身份识别码,使得云计算平台不仅可以快速地识别该目标租户的归属地;还可以为该目标租户提供严格的数据隔离机制,保障该目标租户的数据安全;另外,还能够通过身份识别码的数据库编号和表编号快速地查询到该目标租户的数据,极大地提高了云计算平台的性能和可靠性。
结合第一方面,一种可能的实施方式中,归属云的服务器创建第一用户,其中,该第一用户的第一用户名是基于该租户名根据预定命名规则生成的,该第一用户的第一用户密码是基于该租户密码根据预定加密规则生成的。然后,归属云的服务器为该第一用户生成第一用户身份识别码。其中,该第一用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,该第一用户身份识别码的第四字段的字段值指示该第一用户身份识别码的应用对象是用户。接着,归属云的服务器在用户信息表中存储该第一用户名、该第一用户身份识别码、该第一用户密码和该租户身份识别码的关联关系。其中,该用户信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该用户信息表具有该第三字段的字段值表示的表编号。
结合第一方面或第一方面中任一可能的实施方式,一种可能的实施方式中,该第一用户名是该租户名,该第一用户密码是该租户密码。
结合第一方面或第一方面中任一可能的实施方式,一种可能的实施方式中,归属云的服务器接收用于创建第二用户的第一创建请求,该第一创建请求包括该第二用户的第二用户名和该第二用户的第二用户密码。然后,归属云的服务器为该第二用户生成第二用户身份识别码。其中,该第二用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,该第二用户身份识别码的第四字段的字段值指示该第二用户身份识别码的应用对象是用户。接着,归属云的服务器在该用户信息表中存储该第二用户名、该第二用户身份识别码、该第二用户密码和该租户身份识别码的关联关系。
结合第一方面或第一方面中任一可能的实施方式,一种可能的实施方式中,归属云的服务器接收用于创建第一用户组的第二创建请求,该第二创建请求包括该第一用户组的第一组名。然后,归属云的服务器为该第一用户组生成第一用户组身份识别码。其中,该第一用户组身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,该第一用户组身份识别码的第四字段的字段值指示该第一用户组身份识别码的应用对象是用户组。接着,归属云的服务器在用户组信息表中存储该第一组名和该第一用户组身份识别码的关联关系。其中,该用户组信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该用户组信息表具有该第三字段的字段值表示的表编号。
结合第一方面或第一方面中任一可能的实施方式,一种可能的实施方式中,归属云的服务器接收用于创建第一用户组的权限的第三创建请求。该第三创建请求包括该第一用户组的第一组名和该第一用户组的第一用户组权限。然后,归属云的服务器在组权限信息表中存储该第一组名对应的第一用户组身份识别码和该第一用户组权限的关联关系。其中,该组权限信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该组权限信息表具有该第三字段的字段值表示的表编号。
结合第一方面或第一方面中任一可能的实施方式,一种可能的实施方式中,归属云的服务器接收用于创建用户和组关联关系的第四创建请求。该第四创建请求包括该第二用户名和该第一组名。然后,归属云的服务器在关联关系信息表中存储该第二用户名对应的第二用户身份识别码和该第一组名对应的第一用户组身份识别码的关联关系。其中,该关联关系信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该关联关系信息表具有该第三字段的字段值表示的表编号。
结合第一方面或第一方面中任一可能的实施方式,一种可能的实施方式中,归属云的服务器根据该目标租户的账单信息,确定该目标租户的租户状态。然后,归属云的服务器确定与该目标租户对应的用户状态信息表,该用户状态信息表用于记录该目标租户中的用户的用户状态。该用户状态信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该用户状态信息表具有该第三字段的字段值表示的表编号。接着,归属云的服务器将该用户状态信息表中的用户的用户状态设置为该租户状态。
结合第一方面或第一方面中任一可能的实施方式,一种可能的实施方式中,该租户身份识别码包括第五字段,该第五字段用于指示生成该租户身份识别码的时间。可选地,该租户身份识别码的第二字段是根据该第五字段生成的。
通过为云计算平台上的同一租户内的其他数据生成携带有数据来源标记的归属地、数据库编号和表编号的身份识别码,且生成的其他数据身份识别码所携带的归属地、数据库编号和表编号与该租户身份识别码所携带的归属地、数据库编号和表编号相同,使得该云计算平台为该租户提供了严格的数据隔离机制,保障了租户的数据安全;另外,还能够通过该身份识别码快速地查询到租户的数据,极大地提高了云计算平台的性能和可靠性。
第二方面,提供了一种进行身份认证的方法,首先,归属云的服务器接收当前用户的登录认证请求。该登录认证请求包括该当前用户所属的目标租户的租户名、该当前用户的用户名和该当前用户的用户密码。然后,归属云的服务器根据该租户名,查询租户信息表获取该租户名对应的租户身份识别码。其中,该租户身份识别码包括第一字段、第二字段和第三字段。接着,归属云的服务器根据该第一字段解析出该租户名对应的目标租户的目标归属地;根据该第二字段解析出该目标租户的数据所在数据库的目标数据库编号;根据该第三字段解析出该目标租户的数据所在表的目标表编号。然后,归属云的服务器在该目标归属地存储的、具有该目标数据库编号的数据库中,获取具有该目标表编号的用户信息表。在获取到具有该目标表编号的用户信息表后,归属云的服务器在该用户信息表中查询该当前用户的用户名和该当前用户的用户密码,得到第一查询结果。然后,归属云的服务器根据该第一查询结果,认证该当前用户的身份。
结合第二方面,一种可能的实施方式中,在根据该第一查询结果,认证该当前用户的身份之后,归属云的服务器从该用户信息表中获取该当前用户的用户身份识别码。其中,该用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与该租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。
结合第二方面或第二方面中任一可能的实施方式,一种可能的实施方式中,在从该用户信息表中获取该当前用户的用户身份识别码之后,归属云的服务器在该目标归属地存储的、具有目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表。然后,归属云的服务器在该用户状态信息表中,查询该当前用户的用户状态,得到第二查询结果。接着,归属云的服务器根据该第二查询结果,认证该当前用户的用户状态。
结合第二方面或第二方面中任一可能的实施方式,一种可能的实施方式中,在根据该第一查询结果,认证该当前用户的身份之后,归属云的服务器接收该当前用户的权限认证请求,该权限认证请求包括该当前用户所请求的权限。然后,归属云的服务器在该目标归属地存储的、具有目标数据库编号的数据库中,获取具有该目标表编号的用户组信息表、组权限信息表和关联关系信息表。接着,归属云的服务器查询该用户组信息表、该组权限信息表和该关联关系信息表,得到第三查询结果。然后,归属云的服务器根据该第三查询结果,认证该当前用户的权限。
结合第二方面或第二方面中任一可能的实施方式,一种可能的实施方式中,在从该用户信息表中获取该当前用户的当前用户身份识别码之后,归属云的服务器响应于该当前用户登录伙伴云的请求,向该伙伴云的服务器发送第一单点登录请求。该第一单点登录请求包括该当前用户的用户身份识别码。然后,归属云的服务器接收该伙伴云的服务器的数据同步请求。该数据同步请求包括该用户身份识别码,用于请求与该用户身份识别码对应的用户状态和/或权限。接着,归属云的服务器在该目标归属地存储的、具有该目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表、用户组信息表、组权限信息表和关联关系信息表。然后,归属云的服务器从该用户状态信息表中获取与该用户身份识别码对应的用户状态;并且,从该用户组信息表、该组权限信息表和该关联关系信息表中获取与该用户身份识别码对应的权限。在获取到用户状态和权限后,归属云的服务器将该用户状态和该权限发送给该伙伴云的服务器。
结合第二方面或第二方面中任一可能的实施方式,一种可能的实施方式中,在接收该伙伴云的服务器的数据同步请求之后,归属云的服务器接收该伙伴云的服务器的数据更新订阅请求,该数据更新订阅请求包括该用户身份识别码,该数据更新订阅请求用于请求在该用户身份识别码对应的用户状态和/或权限发生变更时推送变更后的用户状态和/或权限。
结合第二方面或第二方面中任一可能的实施方式,一种可能的实施方式中,在接收该伙伴云的服务器的数据更新订阅请求之后,归属云的服务器在该用户身份识别码对应的用户状态和/或权限发生变更时,将变更后的用户状态和/或权限推送给该伙伴云的服务器。
通过利用携带有数据来源标记的归属地、数据库编号和表编号的身份识别码,可以在云计算平台上快速地查询到该身份识别码对应的租户或用户的相关数据,对该用户进行身份认证,极大地提高了云计算平台的性能。
第三方面,提供了一种进行身份认证的方法,首先,伙伴云的服务器接收当前用户的单点登录请求,该单点登录请求中包括该当前用户的用户身份识别码,其中该用户身份识别码包括第一字段。然后,伙伴云的服务器在本地数据库中,查询用户状态信息表和用户权限信息表。当在该用户状态信息表中未查询到与该用户身份识别码对应的用户状态,和/或,当在该用户权限信息表中未查询到与该用户身份识别码对应的权限时,伙伴云的服务器根据该第一字段解析出该当前用户的目标归属地。然后,伙伴云的服务器向该目标归属地所属的归属云的服务器发送数据同步请求。该数据同步请求包括该当前用户的用户身份识别码,用于请求与该用户身份识别码对应的用户状态和/或权限。在发送数据同步请求后,伙伴云的服务器接收该归属云的服务器返回的与该用户身份识别码对应的用户状态和/或权限。
结合第三方面,一种可能的实施方式中,伙伴云的服务器根据该用户身份识别码的第二字段解析出该当前用户的数据所在数据库的目标数据库编号。以及,根据该用户身份识别码的第三字段解析出该当前用户的数据所在表的目标表编号。然后,伙伴云的服务器在具有该目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表和用户权限信息表。在获取到用户状态信息表和用户权限信息表之后,伙伴云的服务器在该用户状态信息表中查询该当前用户的用户状态;以及在该用户权限信息表中查询该当前用户的权限。
结合第三方面或第三方面中任一可能的实施方式,一种可能的实施方式中,在接收该归属云的服务器返回的与该用户身份识别码对应的用户状态和/或权限之后,伙伴云的服务器将该用户状态存储到该用户状态信息表中;和/或将该权限存储到该用户权限信息表中。
结合第三方面或第三方面中任一可能的实施方式,一种可能的实施方式中,在根据该第一字段解析出该当前用户的目标归属地之后,伙伴云的服务器向该目标归属地所属的归属云的服务器发送数据更新订阅请求。该数据更新订阅请求包括该用户身份识别码,用于请求该归属云的服务器在变更该当前用户身份识别码对应的用户状态和/或权限后推送变更后的用户状态和/或权限。
结合第三方面或第三方面中任一可能的实施方式,一种可能的实施方式中,在向该目标归属地所属的归属云的服务器发送数据更新订阅请求之后,伙伴云的服务器接收该归属云的服务器发送的变更后的用户状态和/或权限。在接收到变更后的用户状态和/或权限之后,伙伴云的服务器将该用户状态信息表中的该用户身份识别码对应的用户状态更新为该变更后的用户状态;和/或将该权限信息表中的该用户身份识别码对应的权限更新为该变更后的权限。
通过利用携带有数据来源标记的归属地、数据库编号和表编号的身份识别码,可以在云计算平台上快速地查询到该身份识别码对应的租户或用户的相关数据,对该用户进行身份认证,极大地提高了云计算平台的性能。
第四方面,提供了一种生成身份识别码的装置,该装置设置于归属云的服务器中;该装置包括:第一接收单元,第一生成单元和第一存储单元。其中,该第一接收单元配置为:接收目标租户的注册请求,该注册请求包括该目标租户的租户名和该目标租户的租户密码。该第一生成单元配置为:根据该注册请求,为该目标租户生成租户身份识别码,该租户身份识别码包括第一字段、第二字段、第三字段和第四字段。其中,该第一字段用于指示该目标租户的归属地,该第二字段用于指示该目标租户的数据所在数据库的数据库编号,该第三字段用于指示该目标租户的数据所在表的表编号,该第四字段用于指示应用对象,其中,该租户身份识别码的第四字段的字段值指示该应用对象是租户。该第一存储单元配置为:在租户信息表中存储该租户名和该租户身份识别码的关联关系。其中,该租户信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该租户信息表具有该第三字段的字段值表示的表编号。
结合第四方面,一种可能的实施方式中,该装置包括:第一创建单元,第二生成单元和第二存储单元。该第一创建单元配置为:创建第一用户,其中,该第一用户的第一用户名是基于该租户名根据预定命名规则生成的,该第一用户的第一用户密码是基于该租户密码根据预定加密规则生成的。该第二生成单元配置为:为该第一用户生成第一用户身份识别码。其中,该第一用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。该第一用户身份识别码的第四字段的字段值指示该第一用户身份识别码的应用对象是用户。该第二存储单元配置为:在用户信息表中存储该第一用户名、该第一用户身份识别码、该第一用户密码和该租户身份识别码的关联关系。其中,该用户信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该用户信息表具有该第三字段的字段值表示的表编号。
结合第四方面或第四方面中任一可能的实施方式,一种可能的实施方式中,该第一用户名是该租户名,该第一用户密码是该租户密码。
结合第四方面或第四方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第二接收单元,第三生成单元和第三存储单元。该第二接收单元配置为:接收用于创建第二用户的第一创建请求,该第一创建请求包括该第二用户的第二用户名和该第二用户的第二用户密码。该第三生成单元配置为:为该第二用户生成第二用户身份识别码。其中,该第二用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。该第二用户身份识别码的第四字段的字段值指示该第二用户身份识别码的应用对象是用户。该第三存储单元配置为:在该用户信息表中存储该第二用户名、该第二用户身份识别码、该第二用户密码和该租户身份识别码的关联关系。
结合第四方面或第四方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第三接收单元,第四生成单元和第四存储单元。该第三接收单元配置为:接收用于创建第一用户组的第二创建请求。该第二创建请求包括该第一用户组的第一组名。该第四生成单元配置为:为该第一用户组生成第一用户组身份识别码。其中,该第一用户组身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。该第一用户组身份识别码的第四字段的字段值指示该第一用户组身份识别码的应用对象是用户组。该第四存储单元配置为:在用户组信息表中存储该第一组名和该第一用户组身份识别码的关联关系。其中,该用户组信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该用户组信息表具有该第三字段的字段值表示的表编号。
结合第四方面或第四方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第四接收单元和第五存储单元。该第四接收单元配置为:接收用于创建第一用户组的权限的第三创建请求。该第三创建请求包括该第一用户组的第一组名和该第一用户组的第一用户组权限。该第五存储单元配置为:在组权限信息表中存储该第一组名对应的第一用户组身份识别码和该第一用户组权限的关联关系。其中,该组权限信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该组权限信息表具有该第三字段的字段值表示的表编号。
结合第四方面或第四方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第五接收单元和第六存储单元。该第五接收单元配置为:接收用于创建用户和组关联关系的第四创建请求。该第四创建请求包括该第二用户名和该第一组名。该第六存储单元配置为:在关联关系信息表中存储该第二用户名对应的第二用户身份识别码和该第一组名对应的第一用户组身份识别码的关联关系。其中,该关联关系信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该关联关系信息表具有该第三字段的字段值表示的表编号。
结合第四方面或第四方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第一确定单元,第二确定单元和第一设置单元。该第一确定单元配置为:根据该目标租户的账单信息,确定该目标租户的租户状态。该第二确定单元配置为:确定与该目标租户对应的用户状态信息表。该用户状态信息表用于记录该目标租户中的用户的用户状态。该用户状态信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该用户状态信息表具有该第三字段的字段值表示的表编号。该第一设置单元配置为:将该用户状态信息表中的用户的用户状态设置为该租户状态。
结合第四方面或第四方面中任一可能的实施方式,一种可能的实施方式中,该租户身份识别码包括第五字段,该第五字段用于指示生成该租户身份识别码的时间。可选地,该租户身份识别码的第二字段是根据该第五字段生成的。
第五方面,提供了一种进行身份认证的装置,该装置设置于归属云的服务器中;该装置包括:第六接收单元,第一查询单元,第一解析单元,第二解析单元,第三解析单元,第一获取单元,第二查询单元和第一认证单元。该第六接收单元配置为:接收当前用户的登录认证请求。该登录认证请求包括该当前用户所属的目标租户的租户名、该当前用户的用户名和该当前用户的用户密码。该第一查询单元配置为:根据该租户名,查询租户信息表获取该租户名对应的租户身份识别码。其中,该租户身份识别码包括第一字段、第二字段和第三字段。该第一解析单元配置为:根据该第一字段解析出该租户名对应的目标租户的目标归属地。该第二解析单元配置为:根据该第二字段解析出该目标租户的数据所在数据库的目标数据库编号。该第三解析单元配置为:根据该第三字段解析出该目标租户的数据所在表的目标表编号。该第一获取单元配置为:在该目标归属地存储的、具有该目标数据库编号的数据库中,获取具有该目标表编号的用户信息表。该第二查询单元配置为:在该用户信息表中查询该当前用户的用户名和该当前用户的用户密码,得到第一查询结果。该第一认证单元配置为:根据该第一查询结果,认证该当前用户的身份。
结合第五方面,一种可能的实施方式中,该装置包括:第二获取单元。该第二获取单元配置为:从该用户信息表中获取该当前用户的用户身份识别码。其中,该用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与该租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。
结合第五方面或第五方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第三获取单元,第三查询单元和第二认证单元。该第三获取单元配置为:在该目标归属地存储的、具有目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表。该第三查询单元配置为:在该用户状态信息表中,查询该当前用户的用户状态,得到第二查询结果。该第二认证单元配置为:根据该第二查询结果,认证该当前用户的用户状态。
结合第五方面或第五方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第七接收单元,第四获取单元,第四查询单元,第三认证单元。该第七接收单元配置为:接收该当前用户的权限认证请求。该权限认证请求包括该当前用户所请求的权限。该第四获取单元配置为:在该目标归属地存储的、具有目标数据库编号的数据库中,获取具有该目标表编号的用户组信息表、组权限信息表和关联关系信息表。该第四查询单元配置为:查询该用户组信息表、该组权限信息表和该关联关系信息表,得到第三查询结果。该第三认证单元配置为:根据该第三查询结果,认证该当前用户的权限。
结合第五方面或第五方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第一发送单元,第八接收单元,第五获取单元,第六获取单元,第七获取单元和第二发送单元。该第一发送单元配置为:响应于该当前用户登录伙伴云的请求,向该伙伴云的服务器发送第一单点登录请求。该第一单点登录请求包括该当前用户的用户身份识别码。该第八接收单元配置为:接收该伙伴云的服务器的数据同步请求。该数据同步请求包括该用户身份识别码,用于请求与该用户身份识别码对应的用户状态和/或权限。该第五获取单元配置为:在该目标归属地存储的、具有该目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表、用户组信息表、组权限信息表和关联关系信息表。该第六获取单元配置为:从该用户状态信息表中获取与该用户身份识别码对应的用户状态。该第七获取单元配置为:从该用户组信息表、该组权限信息表和该关联关系信息表中获取与该用户身份识别码对应的权限。该第二发送单元配置为:将该用户状态和该权限发送给该伙伴云的服务器。
结合第五方面或第五方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第九接收单元。该第九接收单元配置为:接收该伙伴云的服务器的数据更新订阅请求。该数据更新订阅请求包括该用户身份识别码,请求用于请求在该用户身份识别码对应的用户状态和/或权限发生变更时推送变更后的用户状态和/或权限。
结合第五方面或第五方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第一推送单元。该第一推送单元配置为:在该用户身份识别码对应的用户状态和/或权限发生变更时,将变更后的用户状态和/或权限推送给该伙伴云的服务器。
第六方面,提供了一种进行身份认证的装置,该装置设置于伙伴云的服务器中;该装置包括:第十接收单元,第五查询单元,第四解析单元,第三发送单元和第十一接收单元。该第十接收单元配置为:接收当前用户的单点登录请求。该单点登录请求中包括该当前用户的用户身份识别码,其中该用户身份识别码包括第一字段。该第五查询单元配置为:在本地数据库中,查询用户状态信息表和用户权限信息表。该第四解析单元配置为:当在该用户状态信息表中未查询到与该用户身份识别码对应的用户状态,和/或,当在该用户权限信息表中未查询到与该用户身份识别码对应的权限时,根据该第一字段解析出该当前用户的目标归属地。该第三发送单元配置为:向该目标归属地所属的归属云的服务器发送数据同步请求。该数据同步请求包括该当前用户的用户身份识别码,。用于请求与该用户身份识别码对应的用户状态和/或权限。该第十一接收单元配置为:接收该归属云的服务器返回的与该用户身份识别码对应的用户状态和/或权限。
结合第六方面,一种可能的实施方式中,该第五查询单元包括:第一解析模块,第二解析模块,第一获取模块,第一查询模块和第二查询模块。该第一解析模块配置为:根据该用户身份识别码的第二字段解析出该当前用户的数据所在数据库的目标数据库编号。该第二解析模块配置为:根据该用户身份识别码的第三字段解析出该当前用户的数据所在表的目标表编号。该第一获取模块配置为:在具有该目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表和用户权限信息表。该第一查询模块配置为:在该用户状态信息表中查询该当前用户的用户状态。该第二查询模块配置为:在该用户权限信息表中查询该当前用户的权限。
结合第六方面或第六方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第七存储单元和/或第八存储单元。该第七存储单元配置为:将该用户状态存储到该用户状态信息表中。该第八存储单元配置为:将该权限存储到该用户权限信息表中。
结合第六方面或第六方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第四发送单元。该第四发送单元配置为:向该目标归属地所属的归属云的服务器发送数据更新订阅请求。该数据更新订阅请求包括该用户身份识别码,用于请求该归属云的服务器在变更该当前用户身份识别码对应的用户状态和/或权限后推送变更后的用户状态和/或权限。
结合第六方面或第六方面中任一可能的实施方式,一种可能的实施方式中,该装置包括:第十二接收单元,第一更新单元和/或第二更新单元。该第十二接收单元配置为:接收该归属云的服务器发送的变更后的用户状态和/或权限。该第一更新单元配置为:将该用户状态信息表中的该用户身份识别码对应的用户状态更新为该变更后的用户状态。该第二更新单元配置为:将该权限信息表中的该用户身份识别码对应的权限更新为该变更后的权限。
第七方面,提供了一种生成身份识别码的系统,该系统包括归属云的服务器,该服务器上设置有上述第四方面以及第四方面的任意一种可能的设计中的装置。
第八方面,提供了一种进行身份识别的系统,该系统包括归属云的服务器和伙伴云的服务器,该归属云的服务器上设置有上述第五方面以及第五方面的任意一种可能的设计中的装置,该伙伴云的服务器上设置有上述第六方面以及第六方面的任意一种可能的设计中的装置。
第九方面,提供了一种计算设备,该计算设备包括处理器和存储器,其中,该存储器用于存储计算机指令,该处理器用于执行该存储器存储的计算机指令,使得该计算设备执行上述第一至第三方面中的任一方面以及第一至第三方面的任意一种可能的设计中所述的方法。
第十方面,提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令指示计算设备执行上述第一至第三方面中的任一方面以及第一至第三方面的任意一种可能的设计中所述的方法。
第十一方面,提供了一种计算机程序产品,其包含指令,当该程序被计算机所执行时,该指令使得计算机执行上述第一至第三方面中的任一方面以及第一至第三方面的任意一种可能的设计中所述的方法。
第十二方面,提供了一种计算机程序,其包含指令,当该程序被计算机所执行时,该指令使得计算机执行上述第一至第三方面中的任一方面以及第一至第三方面的任意一种可能的设计中所述的方法。
附图说明
图1为本说明书披露的一个实施例的实施场景示意图;
图2为本申请实施例提供的一种生成ID方法流程示意图;
图3为本申请实施例生成的一种ID的示意图;
图4为本申请实施例生成的一种ID的示意图;
图5为本申请实施例提供的一种利用ID进行身份认证的方法流程示意图;
图6为本申请实施例提供的一种利用ID进行身份认证的方法流程示意图;
图7为本申请实施例提供的一种生成ID的装置结构示意图;
图8为本申请实施例提供的一种进行身份认证的装置结构示意图;
图9为本申请实施例提供的一种进行身份认证的装置结构示意图;
图10为本申请实施例提供的一种计算设备的可能的基本硬件架构。
具体实施方式
图1为本说明书披露的一个实施例的实施场景示意图。在该实施场景中,归属云与其他伙伴云一起形成“全球一朵云”模式的云联盟平台,为客户提供云服务。归属云,顾名思义,是与客户签署云服务合同的直接签约主体,并向该客户提供统一的云服务销售、云服务消费、账单支付和技术支持界面。伙伴云,则是向客户提供一到多个地域(region)的云服务,并对地域的建设、维护、服务级别协议(service-level agreement,SLA)和客户问题承担最终责任,对云服务消费的结算采取与归属云之间按事先约定条款进行。客户可以在归属云上的任一地域,例如中国地域,开通账户,也即注册成为一个租户,例如租户A,然后就可以在该云联盟平台上的任一地域,例如中国地域、亚太地域、西欧地域、南美地域、新加坡地域和巴黎地域,发放资源和开展业务。该客户仅需在归属云上进行管理操作,例如管理子用户、分配权限等,也仅需在归属云上结算费用,即可在全球“漫游”。
在此“漫游”情形下,对提供此云服务的云联盟平台提出了挑战:租户数据需要有严格的隔离机制,以此保障租户的安全性;能够快速对租户数据进行分库分表,支持大规模的租户访问;支持租户漫游,从归属云访问伙伴云时,能够快速识别该租户的归属地以便于对该租户进行相应的管理操作和费用结算。
为了迎接上述挑战,在客户开通账户注册为租户A时,归属云为此租户A及其数据生成唯一ID,该ID至少包括,指示该租户A的归属地的第一字段,指示该租户A的数据所在数据库的数据库编号的第二字段以及指示该租户A的数据所在表的表编号的第三字段。如此,在云联盟平台上,利用此方案生成的唯一ID可以实现ID的分布式计算,满足全球的唯一要求;可以根据该唯一ID实现租户A跨云“漫游”的归属地识别;还可以通过该唯一ID对租户A的数据进行数据库分库分表。
下面描述如何生成ID,以及利用ID进行身份认证的具体实施过程。
图2为本申请实施例提供的一种生成ID方法流程示意图,该方法由归属云的服务器执行,可以包括以下部分:步骤201,该归属云的服务器接收目标租户的注册请求,该注册请求中包括该目标租户的租户名和该目标租户的租户密码;步骤202,该归属云的服务器根据该注册请求,为该目标租户生成租户ID,其中,该租户ID包括第一字段、第二字段、第三字段和第四字段,其中,第一字段表示该目标租户的归属地,第二字段表示该目标租户的数据所在数据库的数据库编号,第三字段表示该目标租户的数据所在表的表编号,第四字段指示应用对象;步骤203,该归属云的服务器在租户信息表中存储该租户名和该租户ID的关联关系。下面描述以上各个步骤的具体执行方式。
首先,在步骤201,归属云的服务器接收目标租户的注册请求。一般地,归属云为租户提供客户端,例如web页面。租户可以通过归属云的客户端与归属云的服务器进行交互,例如通过客户端提交各种请求。对于注册请求,归属云的客户端中设置有专用的入口和对应的注册请求页面,租户在该注册请求页面中填入注册所需的信息,然后向归属云的服务器提交注册请求。在一个实施例中,租户提交的注册请求中包括租户名和租户密码。
在归属云的服务器接收到该注册请求后,在步骤202,归属云的服务器根据该注册请求,为该目标租户生成租户ID。
在一个实施例中,归属云的服务器为了使得租户ID能够快速地识别该租户的归属地以及对该租户的数据进行分库分表,生成的租户ID包括以下三个字段:第一字段,指示该目标租户的归属地;第二字段,指示该目标租户的数据所在数据库的数据库编号;第三字段,指示该目标租户的数据所在表的表编号。
在一个实施例中,归属云的服务器为了指示租户ID的应用对象,生成的租户ID还包括第四字段,该第四字段的字段值指示该租户ID的应用对象为租户。
在一个实施例中,在步骤203,归属云的服务器在租户信息表中存储该租户名和该租户ID的关联关系。该租户信息表位于该租户ID的第一字段的字段值所表示的归属地存储的、具有该租户ID的第二字段的字段值表示的数据库编号的数据库中,且该租户信息表具有该租户ID的第三字段的字段值表示的表编号。
在一个实施例中,在步骤203,归属云的服务器在租户信息表中存储该租户名和该租户ID的关联关系后,该归属云的服务器为该目标租户创建第一用户,其中该第一用户的第一用户名是基于该目标租户的租户名根据预定命名规则生成的,该第一用户的第一用户密码是基于该目标租户的租户密码根据预定加密规则生成的。在一个实施例中,该第一用户名是该目标租户的租户名,该第一用户密码是该目标租户的租户密码。
然后,归属云的服务器为该第一用户生成第一用户ID,其中,该第一用户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。在一个实施例中,该第一用户ID还包括第四字段,该第四字段的字段值指示该第一用户ID的应用对象是用户。
在生成第一用户ID后,归属云的服务器在用户信息表中存储该第一用户名、该第一用户ID、该第一用户密码和该租户ID的关联关系,其中该用户信息表位于该租户ID的第一字段的字段值所表示的归属地存储的、具有该租户ID的第二字段的字段值表示的数据库编号的数据库中,且该用户信息表具有该租户ID的第三字段的字段值表示的表编号。
在一个实施例中,在归属云的服务器生成第一用户后,该第一用户向该归属云的服务器发起创建第二用户的第一创建请求,归属云的服务器接收该第一用户发起的用于创建第二用户的第一创建请求,该第一创建请求包括该第二用户的第二用户名和第二用户密码。
然后,归属云的服务器为该第二用户生成第二用户ID,其中该第二用户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。在一个实施例中,该第二用户ID还包括第四字段,该第四字段的字段值指示该第二用户ID的应用对象是用户。
在生成第二用户ID后,归属云的服务器在用户信息表中存储该第二用户名、该第二用户ID、该第二用户密码和该租户ID的关联关系。
在一个实施例中,在归属云的服务器生成第一用户后,该第一用户向该归属云的服务器发起创建第一用户组的第二创建请求,归属云的服务器接收该第一用户发起的用于创建第一用户组的第二创建请求,该第二创建请求包括该第一用户组的第一组名。
然后,归属云的服务器为该第一用户组生成第一用户组ID,其中该第一用户组ID的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。在一个实施例中,该第一用户组ID还包括第四字段,该第四字段的字段值指示该第一用户组ID的应用对象是用户组。
在生成第一用户组ID后,归属云的服务器在用户组信息表中存储该第一组名和该第一用户组ID的关联关系,其中该用户组信息表位于该租户ID的第一字段的字段值所表示的归属地存储的、具有该租户ID的第二字段的字段值表示的数据库编号的数据库中,且该用户组信息表具有该租户ID的第三字段的字段值表示的表编号。
在一个实施例中,在归属云的服务器为第一用户创建第一用户组后,第一用户向该归属云的服务器发起创建第一用户组的权限的第三创建请求,归属云的服务器接收该第一用户发起的用于创建第一用户组的权限的第三创建请求,该第三创建请求包括该第一用户组的第一组名和第一用户组权限。
归属云的服务器在组权限信息表中存储该第一组名对应的第一用户组ID和该第一用户组权限的关联关系,其中该组权限信息表位于该租户ID的第一字段的字段值所表示的归属地存储的、具有该租户ID的第二字段的字段值表示的数据库编号的数据库中,且该组权限信息表具有该租户ID的第三字段的字段值表示的表编号。
在一个实施例中,在归属云的服务器为第一用户创建第一用户组后,第一用户向该归属云的服务器发起创建用户和组关联关系的第四创建请求,归属云的服务器接收该第一用户发起的用于创建用户和组关联关系的第四创建请求,该第四创建请求包括该第二用户名和该第一组名。
归属云的服务器在关联关系信息表中存储该第二用户名对应的第二用户ID和该第一组名对应的第一用户组ID的关联关系,其中该关联关系信息表位于该租户ID的第一字段的字段值所表示的归属地存储的、具有该租户ID的第二字段的字段值表示的数据库编号的数据库中,且该关联关系信息表具有该租户ID的第三字段的字段值表示的表编号。
在一个实施例中,归属云的服务器根据用户组信息表、组权限信息表以及关联关系信息表,生成用户权限信息表,其中该用户权限信息表包括用户ID和对应的权限,并且位于该租户ID的第一字段的字段值所表示的归属地存储的、具有该租户ID的第二字段的字段值表示的数据库编号的数据库中,且该用户权限信息表具有该租户ID的第三字段的字段值表示的表编号。
在一个实施例中,归属云的服务器根据目标租户的账单信息,确定该目标租户的租户状态。例如,当目标租户的账单信息显示欠费时,则目标租户的租户状态为“冻结”;当目标租户的账单信息显示正常时,则目标租户的租户状态为“正常”。归属云的服务器在租户状态信息表中存储目标租户的租户ID和租户状态的关联关系,该租户状态信息表位于该租户ID的第一字段的字段值所表示的归属地存储的、具有该租户ID的第二字段的字段值表示的数据库编号的数据库中,且该租户状态信息表具有该租户ID的第三字段的字段值表示的表编号。当需要查询用户的用户状态时,归属云的服务器首先根据该用户所属的租户来查询租户状态信息表,然后根据查询到的租户状态确定用户状态,例如,当租户状态为“冻结”,则用户状态为“冻结”;当租户状态为“正常”,则用户状态为“正常”。
在一个实施例中,归属云的服务器根据目标租户的账单信息,确定该目标租户的租户状态。然后,确定与该目标租户对应的用户状态信息表,该用户状态信息表用于记录该目标租户中所有用户的用户状态,并且该用户状态信息表位于该目标租户的租户ID的第一字段的字段值所表示的归属地存储的、具有该租户ID的第二字段的字段值表示的数据库编号的数据库中,且该用户状态信息表具有该租户ID的第三字段的字段值表示的表编号。接着,将该用户状态信息表中的所有用户的用户状态设置为租户状态。例如,当目标租户的账单信息显示欠费时,则目标租户的租户状态为“冻结”,那么用户状态信息表中所有的用户状态为“冻结”。当目标租户的账单信息显示正常时,则目标租户的租户状态为“正常”,那么用户状态信息表中所有的用户状态为“正常”。
图3为本申请实施例生成的一种ID的示意图。如图3所示,在生成的ID的实施例中,第一字段包括14位,用于指示该ID所对应的租户所属的归属地。在一个例子中,该第一字段的14位字段值可以表示某个归属云,例如00000000001111,表示三体云。在一个例子中,该第一字段的14位的前5位字段值表示某个归属云,后9位字段值表示具体的一个地域,例如,前5位字段值01111表示三体云,后9位字段值000010101表示中国地域。
第二字段包括6位,用于指示该ID所对应的租户的数据被分库后所分配的数据库的数据库编号。例如,第二字段的字段值为000011,则表示该数据库的数据库编号为3。
第三字段包括7位,用于指示该ID所对应的租户的数据被分表后所在表的表编号。例如,第三字段的字段值为0000111,则表示该表编号为7。
第四字段包括4位,用于指示该ID的应用对象。例如,第四字段的字段值为0001时,指示该ID的应用对象为租户。又例如,第四字段的字段值为0010时,指示该ID的应用对象为用户。再例如,第四字段的字段值为0011时,指示该ID的应用对象为用户组。
可以理解,图3仅仅是一个示例,各个字段的字段长度可以根据需要进行设定或调整。例如,第一字段长度依赖于要划分的归属云以及归属云中的地域的数量,第二字段长度和第三字段长度取决于租户数据的数量。第四字段的长度取决于应用对象的数量。在具体的应用过程中,可以根据具体的业务需求,扩展或缩减每一个字段的位数。在具体实现时,可以将ID的位串进行编码,转换成可传输的可见字符串,例如可以采用base16,base32,base58和base64等编码算法。
例如,在图3示例的ID中,第一字段为14位,当这14位的字段值表示某个归属云时,则可以支持16384朵云的云联盟平台的访问。因此,图3所示的ID可以确保,云联盟平台上拥有1万数量级的归属云。
在一个实施例中,第二字段可以设置为8位或者5位,第三字段可以设置成9位或6位,以满足租户数据量增长或减少的需求。
在一个实施例中,第四字段可以设置成5位或3位,以满足应用对象的数量的变化。
可以理解,第一字段、第二字段、第三字段和第四字段只是针对上述字段所起的名称,其并不必然按照第一、第二、第三和第四的顺序排列。并且,ID还可以包含更多字段,从而具有更进一步的功能。
在一个实施例中,ID还包括第五字段,该第五字段包括41位,用于指示生成该ID的时间,可以精确到毫秒。
在一个实施例中,该ID的第二字段可以根据第五字段生成。例如,可以根据第五字段的字段值表示的年份来生成第二字段的字段值,当第五字段的字段值表示2019年时,根据映射关系,可以生成第二字段的字段值000001,表示2019年的数据放入数据库编号为000001的数据库中。
在一个实施例中,ID还包括第七字段,该第七字段包括8位,用于指示生成该ID的机器编号。
在一个实施例中,ID还包括第八字段,该第八字段包括8位,用于指示生成该ID的服务进程编号。
在一个实施例中,ID还包括第九字段,该第九字段包括8位,用于指示同一个机器同一个进程在同一毫秒生成的ID序号。
在一个实施例中,ID还包括第六字段,该第六字段是摘要,包括32位,此32位的字段值是归属云的服务器通过对该ID的其他字段,例如,第一字段、第七字段和第八字段,的字段值进行哈希函数计算获得。在归属云的服务器读取该ID时,可以先取出该ID的相应的第一字段、第七字段和第八字段的字段值进行哈希函数计算,将此计算结果与该ID的摘要字段值进行比较,相同则表示数据有效。又例如,通过对该ID的第五字段、第一字段、第七字段、第八字段和第九字段的字段值进行哈希函数计算,将此计算结果作为此ID的摘要的字段值。然后,在读取该ID时,先取出该ID的第五字段、第一字段、第七字段、第八字段和第九字段的字段值进行哈希函数计算,将此计算结果与该ID的摘要的字段值进行比较。以此方式,可以防止ID的第五字段、第一字段、第七字段、第八字段和第九字段的字段值的数据被篡改。
在一个实施例中,归属云的服务器根据ID的第六字段的字段值确定第三字段的字段值。例如,以第六字段的字段值为被除数,第三字段所能指示的表编号的总个数作为除数,进行模运算,所得到的结果作为第三字段的字段值。
图4为本申请实施例生成的一种ID的示意图。如图4所示,生成了128位的ID,其中包括:
第一字段,包括14位,用于指示该ID所对应的租户所属的归属地;
第二字段,包括6位,用于指示该ID所对应的租户的数据所在数据库的数据库编号;
第三字段,包括7位,用于指示该ID所对应的租户的数据所在表的表编号;
第四字段,包括4位,用于指示该ID的应用对象;
第五字段,包括41位,用于指示生成该ID的时间;
第六字段,包括32位,用于对该ID的其他字段进行有效性核验;
第七字段,包括8位,用于指示生成该ID的机器编号;
第八字段,包括8位,用于指示生成该ID的服务进程编号;
第九字段,包括8位,用于指示同一个机器同一个进程在同一毫秒生成的ID序号。
可以理解的是,图4仅仅是一个示例。在其他实施例中,ID中各个字段还可以具有不同的长度,各个字段之间的排列方式也不限于图4所示。
图5为本申请实施例提供的一种利用ID进行身份认证的方法流程示意图。该方法由归属云的服务器执行,如图5所示,包括以下部分:步骤501,归属云的服务器接收当前用户的登录认证请求,该登录认证请求包括该当前用户所属的目标租户的租户名、该当前用户的用户名和该当前用户的用户密码;步骤502,归属云的服务器根据该租户名,查询租户信息表获取该租户名对应的租户ID;步骤503,归属云的服务器解析该租户ID的第一字段、第二字段和第三字段,得到第一解析结果,该第一解析结果包括归属地、数据库编号和表编号;步骤504,归属云的服务器根据该第一解析结果,在归属地存储的具有该数据库编号的数据库中获取具有该表编号的用户信息表;步骤505,归属云的服务器在用户信息表中查询当前用户的用户名和当前用户的用户密码,得到第一查询结果;步骤506,归属云的服务器根据该第一查询结果,认证当前用户的身份。下面描述上述步骤的具体执行方式。
首先,在步骤501,归属云的服务器接收当前用户的登录认证请求。在一个实施例中,当前用户在归属云所提供的客户端,例如登录认证请求页面中,输入租户名、用户名和用户密码。归属云的服务器接收所输入的租户名、用户名和用户密码。
然后,在步骤502,归属云的服务器根据输入的租户名,在数据库中查询租户信息表获取与该租户名对应的租户ID。该租户ID包括以下三个字段:第一字段,指示该目标租户的归属地;第二字段,指示该目标租户的数据所在数据库的数据库编号;第三字段,指示该目标租户的数据所在表的表编号。
获取到该租户ID后,在步骤503,归属云的服务器根据该租户ID的第一字段解析出租户名对应的目标租户的目标归属地,根据第二字段解析出该目标租户的数据所在数据库的目标数据库编号,根据第三字段解析出该目标租户的数据所在表的目标表编号,由此得到第一解析结果,该第一解析结果包括目标归属地、目标数据库编号和目标表编号。
得到上述第一解析结果后,在步骤504,归属云的服务器根据此第一解析结果,在该目标归属地存储的、具有该目标数据库编号的数据库中,获取具有该目标表编号的用户信息表。
然后,在步骤505,归属云的服务器在该用户信息表中查询当前用户的用户名和当前用户的用户密码,得到第一查询结果。当查询到当前用户的用户名和当前用户的用户密码时,第一查询结果为“是”;否则,为“否”。
在步骤506,当第一查询结果为“是”时,归属云的服务器则认证当前用户的身份为“合法”;否则,为“非法”。
在认证当前用户的身份为“合法”后,在一个实施例中,归属云的服务器从该用户信息表中获取当前用户的用户ID,其中该用户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值与该租户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。
在归属云的服务器从该用户信息表中获取当前用户的用户ID后,在一个实施例中,归属云的服务器在目标归属地存储的、具有目标数据库编号的数据库中,获取具有目标表编号的用户状态信息表;在该用户状态信息表中,查询当前用户的用户状态,得到第二查询结果;根据该第二查询结果,认证当前用户的用户状态。例如,当第二查询结果为“正常”时,则该当前用户的用户状态为“正常”。
在归属云的服务器认证当前用户的身份为“合法”后,在一个实施例中,当前用户在归属云提供的客户端,例如资源使用页面,点击想使用的资源。响应于当前用户的点击操作,归属云的客户端向归属云的服务器发起权限认证请求,该权限认证请求中包括所请求的权限。归属云的服务器接收当前用户的权限认证请求,在目标归属地存储的、具有目标数据库编号的数据库中,获取具有目标表编号的用户权限信息表。然后,在该用户权限信息表中查询该当前用户的权限,得到第三查询结果。归属云的服务器根据该第三查询结果,认证当前用户的权限。例如,当在用户权限信息表中,查询到当前用户所请求的权限时,则认证当前用户可以使用该资源。
在一个实施例中,归属云的服务器根据用户组信息表、组权限信息表、关联关系信息表生成用户权限信息表,其中该用户组信息表、该组权限信息表以及该关联关系信息表位于目标归属地存储的、具有目标数据库编号的数据库中,且具有目标表编号。
在归属云的服务器从该用户信息表中获取当前用户的用户ID后,在一个实施例中,归属云的服务器响应于该当前用户登录伙伴云的请求,向伙伴云的服务器发送第一单点登录请求,该第一单点登录请求包括当前用户的用户ID。然后,归属云的服务器接收伙伴云的服务器的数据同步请求,该数据同步请求中包括当前用户的用户ID,用于请求与该当前用户的用户ID对应的用户状态和/或权限。归属云的服务器在目标归属地存储的、具有目标数据库编号的数据库中,获取具有目标表编号的用户状态信息表和用户权限信息表。归属云的服务器从该用户状态信息表中获取与该当前用户的用户ID对应的用户状态,以及从该用户权限信息表中获取与该当前用户的用户ID对应的权限。然后,将所获取的用户状态和权限发送给伙伴云的服务器。
在归属云的服务器接收伙伴云的服务器的数据同步请求后,在一个实施例中,归属云的服务器还接收伙伴云的服务器的数据更新订阅请求,该数据更新订阅请求包括当前用户的用户ID,用于请求在当前用户的用户ID对应的用户状态和/或权限发生变更时,推送变更后的用户状态和/或权限。
在归属云的服务器接收伙伴云的服务器的数据更新订阅请求之后,在一个实施例中,归属云的服务器在当前用户的用户ID对应的用户状态和/或权限发生变更时,将变更后的用户状态和/或权限推送给伙伴云的服务器。
图6为本申请实施例提供的一种利用ID进行身份认证的方法流程示意图。该方法由伙伴云的服务器执行,如图6所示,包括以下部分:步骤601,伙伴云的服务器接收当前用户的第一单点登录请求,该单点登录请求中包括当前用户的用户ID;步骤602,伙伴云的服务器在本地数据库中,查询用户状态信息表和用户权限信息表;步骤603,当未查询到用户状态和/或权限时,伙伴云的服务器解析用户ID,得到第二解析结果,该第二解析结果包括归属地;步骤604,伙伴云的服务器根据该第二解析结果,向归属地所属的归属云的服务器发送数据同步请求;步骤605,伙伴云的服务器接收归属云的服务器返回的与当前用户的用户ID对应的用户状态和/或权限。下面描述上述步骤的具体执行方式。
首先,在步骤601,接收当前用户的第一单点登录请求,该第一单点登录请求由归属云的服务器发送,包括当前用户的用户ID,该用户ID包括第一字段。
在接收到归属云的服务器发送的当前用户的第一单点登录请求后,步骤602,伙伴云的服务器在本地数据库中,查询用户状态信息表和用户权限信息表。
在一个实施例中,该当前用户的用户ID还包括第二字段和第三字段。伙伴云的服务器根据第二字段,解析出当前用户的数据所在数据库的目标数据库编号,根据第三字段,解析出当前用户的数据所在表的目标表编号。然后,在具有该目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表和用户权限信息表。在所获取的用户状态信息表中查询当前用户的用户状态;以及在所获取的用户权限信息表中查询当前用户的权限。
在查询用户状态信息表和用户权限信息表后,步骤603,当在用户状态信息表中未查询到与当前用户ID对应的用户状态,和/或,当在用户权限信息表中未查询到与当前用户ID对应的权限时,伙伴云的服务器根据当前用户的用户ID的第一字段,解析出当前用户的目标归属地。
在解析出当前用户的目标归属地后,步骤604,伙伴云的服务器向该目标归属地所属的归属云的服务器发送数据同步请求,该数据同步请求中包括当前用户的用户ID,用于请求与该当前用户的用户ID对应的用户状态和/或权限。
在向归属云的服务器发送数据同步请求后,步骤605,伙伴云的服务器接收归属云的服务器返回的与当前用户的用户ID对应的用户状态和/或权限。
在一个实施例中,在伙伴云的服务器接收归属云的服务器返回的与当前用户的用户ID对应的用户状态和/或权限之后,伙伴云的服务器将所接收到的用户状态存储到用户状态信息表中;和/或将所接收到的权限存储到用户权限信息表中。
在一个实施例中,在步骤603解析出目标归属地后,伙伴云的服务器向该目标归属地所属的归属云的服务器发送数据更新订阅请求,该数据更新订阅请求包括当前用户的用户ID,用于请求该归属云的服务器在变更该当前用户ID对应的用户状态和/或权限后,推送变更后的用户状态和/或权限。
在一个实施例中,在伙伴云的服务器向该目标归属地所属的归属云的服务器发送数据更新订阅请求后,伙伴云的服务器接收该归属云的服务器发送的变更后的用户状态和/或权限;更新本地数据库,将用户状态信息表中的当前用户的用户ID对应的用户状态更新为变更后的用户状态,和/或,将权限信息表中的当前用户的用户ID对应的权限更新为变更后的权限。
上述实施例中,通过为使用云计算平台的租户(或用户)生成携带有数据来源标记的归属地、数据库编号和表编号的ID,使得该云计算平台不仅可快速地识别租户(用户)的归属地;还可以为租户提供严格的数据隔离机制,保障租户的数据安全;另外,还能够通过ID的分库分表快速地查询到租户(用户)的数据,极大地提高了云计算平台的性能和可靠性。
上文详细描述了根据本申请实施例的一种生成ID以及利用该ID进行身份认证的方法,下面将详细描述根据本申请实施例的一种生成ID以及利用该ID进行身份认证的装置。
图7为本申请实施例提供的一种生成ID的装置结构示意图,该生成ID的装置设置于归属云的服务器中。如图7所示,生成ID的装置700包括第一接收单元701,第一生成单元702,第一存储单元703。第一接收单元701配置为:接收目标租户的注册请求,该注册请求包括目标租户的租户名和目标租户的租户密码。第一生成单元702配置为:根据注册请求,为该目标租户生成租户ID,该租户ID包括第一字段、第二字段、第三字段和第四字段。其中,该第一字段用于指示该目标租户的归属地,该第二字段用于指示该目标租户的数据所在数据库的数据库编号,该第三字段用于指示该目标租户的数据所在表的表编号,该第四字段用于指示应用对象,其中,该租户ID的第四字段的字段值指示该应用对象是租户。第一存储单元703配置为:在租户信息表中存储该租户名和该租户ID的关联关系;其中,该租户信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该租户信息表具有该第三字段的字段值表示的表编号。
在一个实施例中,该装置700包括:第一创建单元,第二生成单元和第二存储单元。其中,该第一创建单元配置为:创建第一用户,其中,该第一用户的第一用户名是基于该租户名根据预定命名规则生成的,该第一用户的第一用户密码是基于该租户密码根据预定加密规则生成的。该第二生成单元配置为:为该第一用户生成第一用户ID,其中,该第一用户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,该第一用户ID的第四字段的字段值指示该第一用户ID的应用对象是用户。该第二存储单元配置为:在用户信息表中存储该第一用户名、该第一用户ID、该第一用户密码和该租户ID的关联关系;其中,该用户信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该用户信息表具有该第三字段的字段值表示的表编号。
在一个实施例中,该第一用户名是该租户名,该第一用户密码是该租户密码。
在一个实施例中,该装置700包括:第二接收单元,第三生成单元和第三存储单元。其中,该第二接收单元配置为:接收用于创建第二用户的第一创建请求,该第一创建请求包括该第二用户的第二用户名和该第二用户的第二用户密码。该第三生成单元配置为:为该第二用户生成第二用户ID,其中,该第二用户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,该第二用户ID的第四字段的字段值指示该第二用户ID的应用对象是用户。该第三存储单元配置为:在该用户信息表中存储该第二用户名、该第二用户ID、该第二用户密码和该租户ID的关联关系。
在一个实施例中,该装置700包括:第三接收单元,第四生成单元和第四存储单元。其中,该第三接收单元配置为:接收用于创建第一用户组的第二创建请求,该第二创建请求包括该第一用户组的第一组名。该第四生成单元配置为:为该第一用户组生成第一用户组ID,其中,该第一用户组ID的第一字段的字段值、第二字段的字段值和第三字段的字段值与该目标租户的租户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,该第一用户组ID的第四字段的字段值指示该第一用户组ID的应用对象是用户组。该第四存储单元配置为:在用户组信息表中存储该第一组名和该第一用户组ID的关联关系;其中,该用户组信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该用户组信息表具有该第三字段的字段值表示的表编号。
在一个实施例中,该装置700包括:第四接收单元和第五存储单元。其中,该第四接收单元配置为:接收用于创建第一用户组的权限的第三创建请求,该第三创建请求包括该第一用户组的第一组名和该第一用户组的第一用户组权限。该第五存储单元配置为:在组权限信息表中存储该第一组名对应的第一用户组ID和该第一用户组权限的关联关系;其中,该组权限信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该组权限信息表具有该第三字段的字段值表示的表编号。
在一个实施例中,该装置700包括:第五接收单元和第六存储单元。其中,该第五接收单元配置为:接收用于创建用户和组关联关系的第四创建请求,该第四创建请求包括该第二用户名和该第一组名。该第六存储单元配置为:在关联关系信息表中存储该第二用户名对应的第二用户ID和该第一组名对应的第一用户组ID的关联关系;其中,该关联关系信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该关联关系信息表具有该第三字段的字段值表示的表编号。
在一个实施例中,该装置700包括:第一确定单元,第二确定单元和第一设置单元。其中,该第一确定单元配置为:根据该目标租户的账单信息,确定该目标租户的租户状态。该第二确定单元配置为:确定与该目标租户对应的用户状态信息表,该用户状态信息表用于记录该目标租户中的用户的用户状态;该用户状态信息表位于在该第一字段的字段值所表示的归属地存储的、具有该第二字段的字段值表示的数据库编号的数据库中,且该用户状态信息表具有该第三字段的字段值表示的表编号。该第一设置单元配置为:将该用户状态信息表中的用户的用户状态设置为该租户状态。
在一个实施例中,该租户ID包括第五字段,该第五字段用于指示生成该租户ID的时间,其中,该租户ID的第二字段是根据该第五字段生成的。
图8为本申请实施例提供的一种进行身份认证的装置结构示意图,该身份认证的装置设置于归属云的服务器中。如图8所示,身份认证的装置800包括:第六接收单元801,第一查询单元802,第一解析单元803,第二解析单元804,第三解析单元805,第一获取单元806,第二查询单元807和第一认证单元808。其中,第六接收单元801配置为:接收当前用户的登录认证请求,该登录认证请求包括该当前用户所属的目标租户的租户名、该当前用户的用户名和该当前用户的用户密码。第一查询单元802配置为:根据该租户名,查询租户信息表获取该租户名对应的租户ID,其中,该租户ID包括第一字段、第二字段和第三字段。第一解析单元803配置为:根据该第一字段解析出该租户名对应的目标租户的目标归属地。第二解析单元804配置为:根据该第二字段解析出该目标租户的数据所在数据库的目标数据库编号。第三解析单元805配置为:根据该第三字段解析出该目标租户的数据所在表的目标表编号。第一获取单元806配置为:在该目标归属地存储的、具有该目标数据库编号的数据库中,获取具有该目标表编号的用户信息表。第二查询单元807配置为:在该用户信息表中查询该当前用户的用户名和该当前用户的用户密码,得到第一查询结果。第一认证单元808配置为:根据该第一查询结果,认证该当前用户的身份。
在一个实施例中,该装置800包括:第二获取单元。该第二获取单元配置为:从该用户信息表中获取该当前用户的用户ID,其中,该用户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值与该租户ID的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。
在一个实施例中,该装置800包括:第三获取单元,第三查询单元和第二认证单元。其中,该第三获取单元配置为:在该目标归属地存储的、具有目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表。该第三查询单元配置为:在该用户状态信息表中,查询该当前用户的用户状态,得到第二查询结果。该第二认证单元配置为:根据该第二查询结果,认证该当前用户的用户状态。
在一个实施例中,该装置800包括:第七接收单元,第四获取单元,第四查询单元和第三认证单元。其中,该第七接收单元配置为:接收该当前用户的权限认证请求,该权限认证请求包括该当前用户所请求的权限。该第四获取单元配置为:在该目标归属地存储的、具有目标数据库编号的数据库中,获取具有该目标表编号的用户组信息表、组权限信息表和关联关系信息表。该第四查询单元配置为:查询该用户组信息表、该组权限信息表和该关联关系信息表,得到第三查询结果。该第三认证单元配置为:根据该第三查询结果,认证该当前用户的权限。
在一个实施例中,该装置800包括:第一发送单元,第八接收单元,第五获取单元,第六获取单元,第七获取单元和第二发送单元。其中,该第一发送单元配置为:响应于该当前用户登录伙伴云的请求,向该伙伴云的服务器发送第一单点登录请求,该第一单点登录请求包括该当前用户的用户ID。该第八接收单元配置为:接收该伙伴云的服务器的数据同步请求,该数据同步请求包括该用户ID,该数据同步请求用于请求与该用户ID对应的用户状态和/或权限。该第五获取单元配置为:在该目标归属地存储的、具有该目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表、用户组信息表、组权限信息表和关联关系信息表。该第六获取单元配置为:从该用户状态信息表中获取与该用户ID对应的用户状态。该第七获取单元配置为:从该用户组信息表、该组权限信息表和该关联关系信息表中获取与该用户ID对应的权限。该第二发送单元配置为:将该用户状态和该权限发送给该伙伴云的服务器。
在一个实施例中,该装置800包括:第九接收单元。该第九接收单元配置为:接收该伙伴云的服务器的数据更新订阅请求,该数据更新订阅请求包括该用户ID,该数据更新订阅请求用于请求在该用户ID对应的用户状态和/或权限发生变更时推送变更后的用户状态和/或权限。
在一个实施例中,该装置800包括:第一推送单元。该第一推送单元配置为:在该用户ID对应的用户状态和/或权限发生变更时,将变更后的用户状态和/或权限推送给该伙伴云的服务器。
图9为本申请实施例提供的一种进行身份认证的装置结构示意图,该身份认证的装置设置于伙伴云的服务器中。如图9所示,身份认证的装置900包括:第十接收单元901,第五查询单元902,第四解析单元903,第三发送单元904和第十一接收单元905。其中,第十接收单元901配置为:接收当前用户的单点登录请求,该单点登录请求中包括该当前用户的用户ID,其中该用户ID包括第一字段。第五查询单元902配置为:在本地数据库中,查询用户状态信息表和用户权限信息表。第四解析单元903配置为:当在该用户状态信息表中未查询到与该用户ID对应的用户状态,和/或,当在该用户权限信息表中未查询到与该用户ID对应的权限时,根据该第一字段解析出该当前用户的目标归属地。第三发送单元904配置为:向该目标归属地所属的归属云的服务器发送数据同步请求,该数据同步请求包括该当前用户的用户ID,该数据同步请求用于请求与该用户ID对应的用户状态和/或权限。第十一接收单元905配置为:接收该归属云的服务器返回的与该用户ID对应的用户状态和/或权限。
在一个实施例中,该用户ID包括第二字段和第三字段;第五查询单元902包括:第一解析模块,第二解析模块,第一获取模块,第一查询模块和第二查询模块。其中,该第一解析模块配置为:根据该第二字段解析出该当前用户的数据所在数据库的目标数据库编号。该第二解析模块配置为:根据该第三字段解析出该当前用户的数据所在表的目标表编号。该第一获取模块配置为:在具有该目标数据库编号的数据库中,获取具有该目标表编号的用户状态信息表和用户权限信息表。该第一查询模块配置为:在该用户状态信息表中查询该当前用户的用户状态。该第二查询模块配置为:在该用户权限信息表中查询该当前用户的权限。
在一个实施例中,该装置900包括:第七存储单元和第八存储单元。其中,该第七存储单元配置为:将该用户状态存储到该用户状态信息表中。和/或,该第八存储单元配置为:将该权限存储到该用户权限信息表中。
在一个实施例中,该装置900包括:第四发送单元。该第四发送单元配置为:向该目标归属地所属的归属云的服务器发送数据更新订阅请求,该数据更新订阅请求包括该用户ID,该数据更新订阅请求用于请求该归属云的服务器在变更该当前用户ID对应的用户状态和/或权限后推送变更后的用户状态和/或权限。
在一个实施例中,该装置900包括:第十二接收单元,第一更新单元和第二更新单元。其中,该第十二接收单元配置为:接收该归属云的服务器发送的变更后的用户状态和/或权限。该第一更新单元配置为:将该用户状态信息表中的该用户ID对应的用户状态更新为该变更后的用户状态。和/或,该第二更新单元配置为:将该权限信息表中的该用户ID对应的权限更新为该变更后的权限。
图10为本申请实施例提供的一种计算设备的可能的基本硬件架构。如图10所示,计算设备1000包括处理器1001、存储器1002、通信接口1003和总线1004。
计算设备1000中,处理器1001的数量可以是一个或多个,图10仅示出了其中一个处理器1001。可选地,处理器1001,可以是中央处理器(central processing unit,CPU)。如果计算设备1000具有多个处理器1001,多个处理器1001的类型可以不同,或者可以相同。可选地,计算设备1000的多个处理器1001还可以集成为多核处理器。
存储器1002存储计算机指令和数据;例如,存储器1002存储提供云计算所需的计算机指令和数据,以及存储实现图2、图5和图6所描述的方法所需的计算机指令和数据。存储器1002可以是以下存储介质的任一种或任一种组合:非易失性存储器(例如只读存储器(read-only memory,ROM)、固态硬盘(solid state drive,SSD)、硬盘(hard disk drive,HDD)、光盘),易失性存储器。
通信接口1003可以是以下器件的任一种或任一种组合:网络接口(例如以太网接口)、无线网卡等具有网络接入功能的器件。通信接口1003用于计算设备1000与其它设备(例如终端)进行数据通信。
图10用一条粗线表示总线1004。总线1004可以将处理器1001与存储器1002和通信接口1003连接。这样,通过总线1004,处理器1001可以访问存储器1002,还可以利用通信接口1003与其它设备(例如用户终端)进行数据交互。
在一个实施例中,处理器1001执行存储器1002存储的计算机指令,使得计算设备1000实现图2、图5和图6所描述的方法。
在一个实施例中,计算设备1000是归属云的服务器。
在一个实施例中,计算设备1000是伙伴云的服务器。
在一个实施例中,还提供一种生成ID的系统,该系统包括归属云的服务器,该归属云的服务器上设置有图7所示的装置。
在一个实施例中,还提供一种进行身份识别的系统,该系统包括归属云的服务器和伙伴云的服务器,该归属云的服务器上设置有图8所示的装置,该伙伴云的服务器上设置有图9所示的装置。
在一个实施例中,还提供一种计算机可读存储介质,其上存储有计算机程序,当该计算机程序在计算机中执行时,令计算机执行结合图2、图5和图6所描述的方法。
在上述各个本申请实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例所描述的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读介质向另一个计算机可读介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘)等。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。

Claims (39)

1.一种生成身份识别码的方法,所述方法由归属云的服务器执行;其特征在于,所述方法包括:
接收目标租户的注册请求,所述注册请求包括所述目标租户的租户名和所述目标租户的租户密码;
根据所述注册请求,为所述目标租户生成租户身份识别码,所述租户身份识别码包括第一字段、第二字段、第三字段和第四字段,其中,
所述第一字段用于指示所述目标租户的归属地,
所述第二字段用于指示所述目标租户的数据所在数据库的数据库编号,
所述第三字段用于指示所述目标租户的数据所在表的表编号,
所述第四字段用于指示应用对象,其中,所述租户身份识别码的第四字段的字段值指示所述应用对象是租户;
在租户信息表中存储所述租户名和所述租户身份识别码的关联关系;其中,所述租户信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述租户信息表具有所述第三字段的字段值表示的表编号。
2.根据权利要求1所述的方法,其特征在于,所述方法包括:
创建第一用户,其中,所述第一用户的第一用户名是基于所述租户名根据预定命名规则生成的,所述第一用户的第一用户密码是基于所述租户密码根据预定加密规则生成的;
为所述第一用户生成第一用户身份识别码,其中,所述第一用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与所述目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,所述第一用户身份识别码的第四字段的字段值指示所述第一用户身份识别码的应用对象是用户;
在用户信息表中存储所述第一用户名、所述第一用户身份识别码、所述第一用户密码和所述租户身份识别码的关联关系;其中,所述用户信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述用户信息表具有所述第三字段的字段值表示的表编号。
3.根据权利要求2所述的方法,其特征在于,所述第一用户名是所述租户名,所述第一用户密码是所述租户密码。
4.根据权利要求2或3所述的方法,其特征在于,所述方法包括:
接收用于创建第二用户的第一创建请求,所述第一创建请求包括所述第二用户的第二用户名和所述第二用户的第二用户密码;
为所述第二用户生成第二用户身份识别码,其中,所述第二用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与所述目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,所述第二用户身份识别码的第四字段的字段值指示所述第二用户身份识别码的应用对象是用户;
在所述用户信息表中存储所述第二用户名、所述第二用户身份识别码、所述第二用户密码和所述租户身份识别码的关联关系。
5.根据权利要求4所述的方法,其特征在于,所述方法包括:
接收用于创建第一用户组的第二创建请求,所述第二创建请求包括所述第一用户组的第一组名;
为所述第一用户组生成第一用户组身份识别码,其中,所述第一用户组身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与所述目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,所述第一用户组身份识别码的第四字段的字段值指示所述第一用户组身份识别码的应用对象是用户组;
在用户组信息表中存储所述第一组名和所述第一用户组身份识别码的关联关系;其中,所述用户组信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述用户组信息表具有所述第三字段的字段值表示的表编号。
6.根据权利要求5所述的方法,其特征在于,所述方法包括:
接收用于创建第一用户组的权限的第三创建请求,所述第三创建请求包括所述第一用户组的第一组名和所述第一用户组的第一用户组权限;
在组权限信息表中存储所述第一组名对应的第一用户组身份识别码和所述第一用户组权限的关联关系;其中,所述组权限信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述组权限信息表具有所述第三字段的字段值表示的表编号。
7.根据权利要求5或6所述的方法,其特征在于,所述方法包括:
接收用于创建用户和组关联关系的第四创建请求,所述第四创建请求包括所述第二用户名和所述第一组名;
在关联关系信息表中存储所述第二用户名对应的第二用户身份识别码和所述第一组名对应的第一用户组身份识别码的关联关系;其中,所述关联关系信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述关联关系信息表具有所述第三字段的字段值表示的表编号。
8.根据权利要求4所述的方法,其特征在于,所述方法包括:
根据所述目标租户的账单信息,确定所述目标租户的租户状态;
确定与所述目标租户对应的用户状态信息表,所述用户状态信息表用于记录所述目标租户中的用户的用户状态;所述用户状态信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述用户状态信息表具有所述第三字段的字段值表示的表编号;
将所述用户状态信息表中的用户的用户状态设置为所述租户状态。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述租户身份识别码包括第五字段,所述第五字段用于指示生成所述租户身份识别码的时间,其中,所述租户身份识别码的第二字段是根据所述第五字段生成的。
10.一种进行身份认证的方法,所述方法由归属云的服务器执行;其特征在于,所述方法包括:
接收当前用户的登录认证请求,所述登录认证请求包括所述当前用户所属的目标租户的租户名、所述当前用户的用户名和所述当前用户的用户密码;
根据所述租户名,查询租户信息表获取所述租户名对应的租户身份识别码,其中,所述租户身份识别码包括第一字段、第二字段和第三字段;
根据所述第一字段解析出所述租户名对应的目标租户的目标归属地;
根据所述第二字段解析出所述目标租户的数据所在数据库的目标数据库编号;
根据所述第三字段解析出所述目标租户的数据所在表的目标表编号;
在所述目标归属地存储的、具有所述目标数据库编号的数据库中,获取具有所述目标表编号的用户信息表;
在所述用户信息表中查询所述当前用户的用户名和所述当前用户的用户密码,得到第一查询结果;
根据所述第一查询结果,认证所述当前用户的身份。
11.根据权利要求10所述的方法,其特征在于,所述根据所述第一查询结果,认证所述当前用户的身份之后,所述方法包括:
从所述用户信息表中获取所述当前用户的用户身份识别码,其中,所述用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与所述租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。
12.根据权利要求11所述的方法,其特征在于,所述从所述用户信息表中获取所述当前用户的用户身份识别码之后,所述方法包括:
在所述目标归属地存储的、具有目标数据库编号的数据库中,获取具有所述目标表编号的用户状态信息表;
在所述用户状态信息表中,查询所述当前用户的用户状态,得到第二查询结果;
根据所述第二查询结果,认证所述当前用户的用户状态。
13.根据权利要求10所述的方法,其特征在于,所述根据所述第一查询结果,认证所述当前用户的身份之后,所述方法包括:
接收所述当前用户的权限认证请求,所述权限认证请求包括所述当前用户所请求的权限;
在所述目标归属地存储的、具有目标数据库编号的数据库中,获取具有所述目标表编号的用户组信息表、组权限信息表和关联关系信息表;
查询所述用户组信息表、所述组权限信息表和所述关联关系信息表,得到第三查询结果;
根据所述第三查询结果,认证所述当前用户的权限。
14.根据权利要求11所述的方法,其特征在于,所述从所述用户信息表中获取所述当前用户的当前用户身份识别码之后,所述方法包括:
响应于所述当前用户登录伙伴云的请求,向所述伙伴云的服务器发送第一单点登录请求,所述第一单点登录请求包括所述当前用户的用户身份识别码;
接收所述伙伴云的服务器的数据同步请求,所述数据同步请求包括所述用户身份识别码,所述数据同步请求用于请求与所述用户身份识别码对应的用户状态和/或权限;
在所述目标归属地存储的、具有所述目标数据库编号的数据库中,获取具有所述目标表编号的用户状态信息表、用户组信息表、组权限信息表和关联关系信息表;
从所述用户状态信息表中获取与所述用户身份识别码对应的用户状态;
从所述用户组信息表、所述组权限信息表和所述关联关系信息表中获取与所述用户身份识别码对应的权限;
将所述用户状态和所述权限发送给所述伙伴云的服务器。
15.根据权利要求14所述的方法,其特征在于,所述接收所述伙伴云的服务器的数据同步请求之后,所述方法包括:
接收所述伙伴云的服务器的数据更新订阅请求,所述数据更新订阅请求包括所述用户身份识别码,所述数据更新订阅请求用于请求在所述用户身份识别码对应的用户状态和/或权限发生变更时推送变更后的用户状态和/或权限。
16.根据权利要求15所述的方法,其特征在于,所述接收所述伙伴云的服务器的数据更新订阅请求之后,所述方法包括:
在所述用户身份识别码对应的用户状态和/或权限发生变更时,将变更后的用户状态和/或权限推送给所述伙伴云的服务器。
17.一种进行身份认证的方法,所述方法由伙伴云的服务器执行;其特征在于,所述方法包括:
接收当前用户的单点登录请求,所述单点登录请求中包括所述当前用户的用户身份识别码,其中所述用户身份识别码包括第一字段;
在本地数据库中,查询用户状态信息表和用户权限信息表;
当在所述用户状态信息表中未查询到与所述用户身份识别码对应的用户状态,和/或,当在所述用户权限信息表中未查询到与所述用户身份识别码对应的权限时,根据所述第一字段解析出所述当前用户的目标归属地;
向所述目标归属地所属的归属云的服务器发送数据同步请求,所述数据同步请求包括所述当前用户的用户身份识别码,所述数据同步请求用于请求与所述用户身份识别码对应的用户状态和/或权限;
接收所述归属云的服务器返回的与所述用户身份识别码对应的用户状态和/或权限。
18.根据权利要求17所述的方法,其特征在于,所述用户身份识别码包括第二字段和第三字段;所述在本地数据库中,查询用户状态信息表和用户权限信息表包括:
根据所述第二字段解析出所述当前用户的数据所在数据库的目标数据库编号;
根据所述第三字段解析出所述当前用户的数据所在表的目标表编号;
在具有所述目标数据库编号的数据库中,获取具有所述目标表编号的用户状态信息表和用户权限信息表;
在所述用户状态信息表中查询所述当前用户的用户状态;
在所述用户权限信息表中查询所述当前用户的权限。
19.根据权利要求17或18所述的方法,其特征在于,所述接收所述归属云的服务器返回的与所述用户身份识别码对应的用户状态和/或权限之后,所述方法包括:
将所述用户状态存储到所述用户状态信息表中;和/或
将所述权限存储到所述用户权限信息表中。
20.根据权利要求19所述的方法,其特征在于,所述根据所述第一字段解析出所述当前用户的目标归属地之后,所述方法包括:
向所述目标归属地所属的归属云的服务器发送数据更新订阅请求,所述数据更新订阅请求包括所述用户身份识别码,所述数据更新订阅请求用于请求所述归属云的服务器在变更所述当前用户身份识别码对应的用户状态和/或权限后推送变更后的用户状态和/或权限。
21.根据权利要求20所述的方法,其特征在于,所述向所述目标归属地所属的归属云的服务器发送数据更新订阅请求之后,所述方法包括:
接收所述归属云的服务器发送的变更后的用户状态和/或权限;
将所述用户状态信息表中的所述用户身份识别码对应的用户状态更新为所述变更后的用户状态;和/或
将所述权限信息表中的所述用户身份识别码对应的权限更新为所述变更后的权限。
22.一种生成身份识别码的装置,所述装置设置于归属云的服务器中;其特征在于,所述装置包括:
第一接收单元,所述第一接收单元配置为:接收目标租户的注册请求,所述注册请求包括所述目标租户的租户名和所述目标租户的租户密码;
第一生成单元,所述第一生成单元配置为:根据所述注册请求,为所述目标租户生成租户身份识别码,所述租户身份识别码包括第一字段、第二字段、第三字段和第四字段,其中,
所述第一字段用于指示所述目标租户的归属地,
所述第二字段用于指示所述目标租户的数据所在数据库的数据库编号,
所述第三字段用于指示所述目标租户的数据所在表的表编号,
所述第四字段用于指示应用对象,其中,所述租户身份识别码的第四字段的字段值指示所述应用对象是租户;
第一存储单元,所述第一存储单元配置为:在租户信息表中存储所述租户名和所述租户身份识别码的关联关系;其中,所述租户信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述租户信息表具有所述第三字段的字段值表示的表编号。
23.根据权利要求22所述的装置,其特征在于,所述装置包括:
第一创建单元,所述第一创建单元配置为:创建第一用户,其中,所述第一用户的第一用户名是基于所述租户名根据预定命名规则生成的,所述第一用户的第一用户密码是基于所述租户密码根据预定加密规则生成的;
第二生成单元,所述第二生成单元配置为:为所述第一用户生成第一用户身份识别码,其中,所述第一用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与所述目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,所述第一用户身份识别码的第四字段的字段值指示所述第一用户身份识别码的应用对象是用户;
第二存储单元,所述第二存储单元配置为:在用户信息表中存储所述第一用户名、所述第一用户身份识别码、所述第一用户密码和所述租户身份识别码的关联关系;其中,所述用户信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述用户信息表具有所述第三字段的字段值表示的表编号。
24.根据权利要求23所述的装置,其特征在于,所述第一用户名是所述租户名,所述第一用户密码是所述租户密码。
25.根据权利要求23或24所述的装置,其特征在于,所述装置包括:
第二接收单元,所述第二接收单元配置为:接收用于创建第二用户的第一创建请求,所述第一创建请求包括所述第二用户的第二用户名和所述第二用户的第二用户密码;
第三生成单元,所述第三生成单元配置为:为所述第二用户生成第二用户身份识别码,其中,所述第二用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与所述目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,所述第二用户身份识别码的第四字段的字段值指示所述第二用户身份识别码的应用对象是用户;
第三存储单元,所述第三存储单元配置为:在所述用户信息表中存储所述第二用户名、所述第二用户身份识别码、所述第二用户密码和所述租户身份识别码的关联关系。
26.根据权利要求25所述的装置,其特征在于,所述装置包括:
第三接收单元,所述第三接收单元配置为:接收用于创建第一用户组的第二创建请求,所述第二创建请求包括所述第一用户组的第一组名;
第四生成单元,所述第四生成单元配置为:为所述第一用户组生成第一用户组身份识别码,其中,所述第一用户组身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与所述目标租户的租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同,所述第一用户组身份识别码的第四字段的字段值指示所述第一用户组身份识别码的应用对象是用户组;
第四存储单元,所述第四存储单元配置为:在用户组信息表中存储所述第一组名和所述第一用户组身份识别码的关联关系;其中,所述用户组信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述用户组信息表具有所述第三字段的字段值表示的表编号。
27.根据权利要求26所述的装置,其特征在于,所述装置包括:
第四接收单元,所述第四接收单元配置为:接收用于创建第一用户组的权限的第三创建请求,所述第三创建请求包括所述第一用户组的第一组名和所述第一用户组的第一用户组权限;
第五存储单元,所述第五存储单元配置为:在组权限信息表中存储所述第一组名对应的第一用户组身份识别码和所述第一用户组权限的关联关系;其中,所述组权限信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述组权限信息表具有所述第三字段的字段值表示的表编号。
28.根据权利要求26或27所述的装置,其特征在于,所述装置包括:
第五接收单元,所述第五接收单元配置为:接收用于创建用户和组关联关系的第四创建请求,所述第四创建请求包括所述第二用户名和所述第一组名;
第六存储单元,所述第六存储单元配置为:在关联关系信息表中存储所述第二用户名对应的第二用户身份识别码和所述第一组名对应的第一用户组身份识别码的关联关系;其中,所述关联关系信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述关联关系信息表具有所述第三字段的字段值表示的表编号。
29.根据权利要求25所述的装置,其特征在于,所述装置包括:
第一确定单元,所述第一确定单元配置为:根据所述目标租户的账单信息,确定所述目标租户的租户状态;
第二确定单元,所述第二确定单元配置为:确定与所述目标租户对应的用户状态信息表,所述用户状态信息表用于记录所述目标租户中的用户的用户状态;所述用户状态信息表位于在所述第一字段的字段值所表示的归属地存储的、具有所述第二字段的字段值表示的数据库编号的数据库中,且所述用户状态信息表具有所述第三字段的字段值表示的表编号;
第一设置单元,所述第一设置单元配置为:将所述用户状态信息表中的用户的用户状态设置为所述租户状态。
30.根据权利要求22-29任一项所述的装置,其特征在于,所述租户身份识别码包括第五字段,所述第五字段用于指示生成所述租户身份识别码的时间,其中,所述租户身份识别码的第二字段是根据所述第五字段生成的。
31.一种进行身份认证的装置,所述装置设置于归属云的服务器中;其特征在于,所述装置包括:
第六接收单元,所述第六接收单元配置为:接收当前用户的登录认证请求,所述登录认证请求包括所述当前用户所属的目标租户的租户名、所述当前用户的用户名和所述当前用户的用户密码;
第一查询单元,所述第一查询单元配置为:根据所述租户名,查询租户信息表获取所述租户名对应的租户身份识别码,其中,所述租户身份识别码包括第一字段、第二字段和第三字段;
第一解析单元,所述第一解析单元配置为:根据所述第一字段解析出所述租户名对应的目标租户的目标归属地;
第二解析单元,所述第二解析单元配置为:根据所述第二字段解析出所述目标租户的数据所在数据库的目标数据库编号;
第三解析单元,所述第三解析单元配置为:根据所述第三字段解析出所述目标租户的数据所在表的目标表编号;
第一获取单元,所述第一获取单元配置为:在所述目标归属地存储的、具有所述目标数据库编号的数据库中,获取具有所述目标表编号的用户信息表;
第二查询单元,所述第二查询单元配置为:在所述用户信息表中查询所述当前用户的用户名和所述当前用户的用户密码,得到第一查询结果;
第一认证单元,所述第一认证单元配置为:根据所述第一查询结果,认证所述当前用户的身份。
32.根据权利要求31所述的装置,其特征在于,所述装置包括:
第二获取单元,所述第二获取单元配置为:从所述用户信息表中获取所述当前用户的用户身份识别码,其中,所述用户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值与所述租户身份识别码的第一字段的字段值、第二字段的字段值和第三字段的字段值一一对应相同。
33.根据权利要求32所述的装置,其特征在于,所述装置包括:
第三获取单元,所述第三获取单元配置为:在所述目标归属地存储的、具有目标数据库编号的数据库中,获取具有所述目标表编号的用户状态信息表;
第三查询单元,所述第三查询单元配置为:在所述用户状态信息表中,查询所述当前用户的用户状态,得到第二查询结果;
第二认证单元,所述第二认证单元配置为:根据所述第二查询结果,认证所述当前用户的用户状态。
34.根据权利要求31所述的装置,其特征在于,所述装置包括:
第七接收单元,所述第七接收单元配置为:接收所述当前用户的权限认证请求,所述权限认证请求包括所述当前用户所请求的权限;
第四获取单元,所述第四获取单元配置为:在所述目标归属地存储的、具有目标数据库编号的数据库中,获取具有所述目标表编号的用户组信息表、组权限信息表和关联关系信息表;
第四查询单元,所述第四查询单元配置为:查询所述用户组信息表、所述组权限信息表和所述关联关系信息表,得到第三查询结果;
第三认证单元,所述第三认证单元配置为:根据所述第三查询结果,认证所述当前用户的权限。
35.根据权利要求32所述的装置,其特征在于,所述装置包括:
第一发送单元,所述第一发送单元配置为:响应于所述当前用户登录伙伴云的请求,向所述伙伴云的服务器发送第一单点登录请求,所述第一单点登录请求包括所述当前用户的用户身份识别码;
第八接收单元,所述第八接收单元配置为:接收所述伙伴云的服务器的数据同步请求,所述数据同步请求包括所述用户身份识别码,所述数据同步请求用于请求与所述用户身份识别码对应的用户状态和/或权限;
第五获取单元,所述第五获取单元配置为:在所述目标归属地存储的、具有所述目标数据库编号的数据库中,获取具有所述目标表编号的用户状态信息表、用户组信息表、组权限信息表和关联关系信息表;
第六获取单元,所述第六获取单元配置为:从所述用户状态信息表中获取与所述用户身份识别码对应的用户状态;
第七获取单元,所述第七获取单元配置为:从所述用户组信息表、所述组权限信息表和所述关联关系信息表中获取与所述用户身份识别码对应的权限;
第二发送单元,所述第二发送单元配置为:将所述用户状态和所述权限发送给所述伙伴云的服务器。
36.根据权利要求35所述的装置,其特征在于,所述装置包括:
第九接收单元,所述第九接收单元配置为:接收所述伙伴云的服务器的数据更新订阅请求,所述数据更新订阅请求包括所述用户身份识别码,所述数据更新订阅请求用于请求在所述用户身份识别码对应的用户状态和/或权限发生变更时推送变更后的用户状态和/或权限。
37.根据权利要求36所述的装置,其特征在于,所述装置包括:
第一推送单元,所述第一推送单元配置为:在所述用户身份识别码对应的用户状态和/或权限发生变更时,将变更后的用户状态和/或权限推送给所述伙伴云的服务器。
38.一种计算设备,其特征在于,所述计算设备包括处理器和存储器;
所述存储器,用于存储计算机指令;
所述处理器,用于执行所述存储器存储的计算机指令,使得所述计算设备执行权利要求1至9任一项所述的方法,或者使得所述计算设备执行权利要求10至16任一项所述的方法,或者使得所述计算设备执行权利要求17至21任一项所述的方法。
39.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令指示计算设备执行权利要求1至9任一项所述的方法、或者执行权利要求10至16任一项所述的方法、或者执行权利要求17至21任一项所述的方法。
CN201910565923.4A 2019-06-27 2019-06-27 生成身份识别码的方法和装置、身份认证的方法和装置 Active CN110417863B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910565923.4A CN110417863B (zh) 2019-06-27 2019-06-27 生成身份识别码的方法和装置、身份认证的方法和装置
PCT/CN2020/084351 WO2020258998A1 (zh) 2019-06-27 2020-04-11 生成身份识别码的方法和装置、身份认证的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910565923.4A CN110417863B (zh) 2019-06-27 2019-06-27 生成身份识别码的方法和装置、身份认证的方法和装置

Publications (2)

Publication Number Publication Date
CN110417863A CN110417863A (zh) 2019-11-05
CN110417863B true CN110417863B (zh) 2021-01-29

Family

ID=68359946

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910565923.4A Active CN110417863B (zh) 2019-06-27 2019-06-27 生成身份识别码的方法和装置、身份认证的方法和装置

Country Status (2)

Country Link
CN (1) CN110417863B (zh)
WO (1) WO2020258998A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110417863B (zh) * 2019-06-27 2021-01-29 华为技术有限公司 生成身份识别码的方法和装置、身份认证的方法和装置
CN110990868B (zh) * 2019-11-29 2023-02-10 花瓣云科技有限公司 应用登录及应用访问应用服务器的方法、电子设备
CN111369255B (zh) * 2020-02-28 2023-04-11 上海高仙自动化科技发展有限公司 一种用户管理方法、装置、电子设备及存储介质
CN111382877A (zh) * 2020-02-28 2020-07-07 上海高仙自动化科技发展有限公司 一种生成识别码的方法、装置、电子设备及存储介质
CN111694845A (zh) * 2020-05-29 2020-09-22 中国建设银行股份有限公司 一种基于Redis的标识生成方法和装置
CN112907345B (zh) * 2021-03-30 2023-08-01 携程商旅信息服务(上海)有限公司 基于标识码的票务结算的方法、系统、设备以及介质
CN113746831B (zh) * 2021-09-02 2023-04-07 杭州海康威视数字技术股份有限公司 权限验证方法、装置及存储介质
CN115292314B (zh) * 2022-07-28 2023-11-24 上海数禾信息科技有限公司 序列号生成方法、装置、计算机设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105302814A (zh) * 2014-06-20 2016-02-03 苏州精易会信息技术有限公司 一种存储多个自定义字段的方法和系统
CN106411857A (zh) * 2016-09-07 2017-02-15 河海大学 一种基于虚拟隔离机制的私有云gis服务访问控制方法
CN107169772A (zh) * 2017-04-28 2017-09-15 英泰伟业信息技术股份有限公司 基于云技术的彩票客户关系管理方法及系统
WO2018053122A1 (en) * 2016-09-14 2018-03-22 Oracle International Corporation Single sign-on and single logout functionality for a multi-tenant identity and data security management cloud service

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106302308B (zh) * 2015-05-12 2019-12-24 阿里巴巴集团控股有限公司 一种信任登录方法和装置
CN106529331A (zh) * 2016-10-31 2017-03-22 用友网络科技股份有限公司 一种应用于PaaS平台的多租户数据隔离方案
CN107222487B (zh) * 2017-06-13 2020-09-08 杭州奇亿云计算有限公司 一种混合云环境的账号对接系统
CN110417863B (zh) * 2019-06-27 2021-01-29 华为技术有限公司 生成身份识别码的方法和装置、身份认证的方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105302814A (zh) * 2014-06-20 2016-02-03 苏州精易会信息技术有限公司 一种存储多个自定义字段的方法和系统
CN106411857A (zh) * 2016-09-07 2017-02-15 河海大学 一种基于虚拟隔离机制的私有云gis服务访问控制方法
WO2018053122A1 (en) * 2016-09-14 2018-03-22 Oracle International Corporation Single sign-on and single logout functionality for a multi-tenant identity and data security management cloud service
CN107169772A (zh) * 2017-04-28 2017-09-15 英泰伟业信息技术股份有限公司 基于云技术的彩票客户关系管理方法及系统

Also Published As

Publication number Publication date
WO2020258998A1 (zh) 2020-12-30
CN110417863A (zh) 2019-11-05

Similar Documents

Publication Publication Date Title
CN110417863B (zh) 生成身份识别码的方法和装置、身份认证的方法和装置
US10812490B2 (en) Permissions using blockchain
US10534920B2 (en) Distributed data storage by means of authorisation token
KR101496329B1 (ko) 네트워크의 디바이스 보안 등급 조절 방법 및 장치
US8046826B2 (en) Resource server proxy method and system
US20100077208A1 (en) Certificate based authentication for online services
US9401911B2 (en) One-time password certificate renewal
US10715502B2 (en) Systems and methods for automating client-side synchronization of public keys of external contacts
WO2016128491A1 (en) Validating computer resource usage
US20100077467A1 (en) Authentication service for seamless application operation
US20230370265A1 (en) Method, Apparatus and Device for Constructing Token for Cloud Platform Resource Access Control
US8898318B2 (en) Distributed services authorization management
CN111800426A (zh) 应用程序中原生代码接口的访问方法、装置、设备及介质
US10021107B1 (en) Methods and systems for managing directory information
CN101325493B (zh) 用于认证用户的方法和系统
JP2012033042A (ja) シングルサインオンシステム及びシングルサインオン方法
US8745106B2 (en) Numeric identifier assignment in a networked computer environment
US10554789B2 (en) Key based authorization for programmatic clients
CN110602074B (zh) 一种基于主从关联的业务身份使用方法、装置及系统
KR20190019317A (ko) 사용자 수요 기반의 SaaS 결합 서비스 플랫폼에서의 인증 서버 및 인증 방법
CN115242527A (zh) Kubernetes集群管理面板的登录方法和装置
KR101913012B1 (ko) 웹 ui 기반 안전한 ons 관리 시스템 및 그 방법
CN115242526A (zh) Kubernetes集群管理面板的登录方法和装置
JP2004078622A (ja) ユーザ認証の統合管理
CN115484093A (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
TR01 Transfer of patent right

Effective date of registration: 20220218

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technologies Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right