CN109413053B - 一种服务网格中用户状态验证的方法 - Google Patents

一种服务网格中用户状态验证的方法 Download PDF

Info

Publication number
CN109413053B
CN109413053B CN201811176998.5A CN201811176998A CN109413053B CN 109413053 B CN109413053 B CN 109413053B CN 201811176998 A CN201811176998 A CN 201811176998A CN 109413053 B CN109413053 B CN 109413053B
Authority
CN
China
Prior art keywords
token
service
small
user
service grid
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
CN201811176998.5A
Other languages
English (en)
Other versions
CN109413053A (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.)
Sichuan Changhong Electric Co Ltd
Original Assignee
Sichuan Changhong Electric 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 Sichuan Changhong Electric Co Ltd filed Critical Sichuan Changhong Electric Co Ltd
Priority to CN201811176998.5A priority Critical patent/CN109413053B/zh
Publication of CN109413053A publication Critical patent/CN109413053A/zh
Application granted granted Critical
Publication of CN109413053B publication Critical patent/CN109413053B/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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

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

Abstract

本发明公开了一种服务网格中用户状态验证的方法,可在提升网络服务的安全性的同时,通过实施大小令牌的机制降低了服务网格中的负载压力,且兼顾了性能、安全和吞吐量,该方法适用于采用了集群及分布式设计的服务网格系统。

Description

一种服务网格中用户状态验证的方法
技术领域
本发明涉及计算机软件的分布式系统技术领域,特别涉及一种服务网格中用户状态验证的方法。
背景技术
随着移动互联网的不断深入,越来越多的公司和企业逐渐开始面向互联网,并且把面向客户的服务和业务也迁移到线上。在开发这些线上业务时,随着客户数量的不断增多,业务平台的架构也在不断地变化演进。从早期的单体应用架构逐渐转变为微服务架构,集群和分布式也成为了标配的技术。
服务网格技术是目前最具生产力的前沿技术之一,在构建微服务架构的基础平台的过程中,采用服务网格技术可以进一步提升系统的整体性能,降低研发和运营成本。服务网格是一个用于处理服务到服务相互通信的专用基础设施层,它负责通过包含现代云原生应用的复杂服务拓扑来安全可靠地传递请求。服务网格是一种网络模型,是位于TCP/IP之上的抽象层。它假定底层L3/L4网络存在并且能够从一个点到另一个点传输字节。服务网格还假设该网络与环境的其他方面一样不可靠,因此服务网络也必须能够处理网络故障。在服务网格面向海量用户的背景下,直接维护用户的状态信息就变成了比较棘手的难题,业界的常规解决方法是使用一个令牌Token来表示用户的登录状态,通过对令牌Token的验证来判断用户身份的合法性。而服务网格端如果整体都实施了HTTPS化,那么令牌Token的设计可以非常简单化。但企业业务通常是复杂多样的,部分HTTPS服务、部分HTTP服务是一种常态,这种情况下要达到验证令牌简便,且还要保证高吞吐量、高安全性就成为一个难题。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种服务网格中用户状态验证的方法,以解决背景技术中所述的技术问题,可在提升网络服务的安全性的同时,通过实施大小令牌的机制降低了服务网格中的负载压力,且兼顾了性能、安全和吞吐量,该方法适用于采用了集群和/或分布式设计的服务网格系统。
为了达到上述的技术效果,本发明采取以下技术方案:
一种服务网格中用户状态验证的方法,包括以下步骤:
A.终端通过HTTPS完成用户登录,并请求混淆码微服务;
B.混淆码微服务产生一个随机混淆码,并返回给终端,再将用户ID和混淆码以键值对形式存入高速缓存;其中,服务网格中的混淆码微服务是根据目前公开的算法,产生一个随机混淆码,再将混淆码返回给终端,最后将混淆码和用户ID(即UID)以键值对的形式存入高速缓存;
C.终端使用混淆码进行加密计算,产生大令牌、小令牌;即终端获得步骤B产生的混淆码后,使用终端和服务网格双方约定的、业界公开的对称加密算法进行加密计算,生成两个令牌:即小令牌LToken和大令牌BToken;
D.终端携带大令牌、小令牌访问服务网格中的微服务;在具体实施中,实际的访问情况比较复杂,有可能小令牌不存在,有可能大令牌不存在,有可能大小令牌都不存在;
E.服务网格端验证大令牌、小令牌,若大令牌、小令牌均不存在则直接进入步骤J,则终端需要重新进行注册或登录操作,否则进入步骤F;
F.服务网格判断小令牌是否存在;若存在,则进入步骤G,否则进入步骤J;
G.服务网格解析小令牌,若成功解析小令牌则进入步骤H,否则进入步骤I;
H.服务网格通过解析小令牌获取用户信息并进入步骤L;
I.服务网格解析大令牌,若成功解析大令牌则进入步骤K,否则进入步骤J;
J.服务网格拒绝服务;即终端不是合法用户,或者是合法性已过期。此时需要终端重新进行登录操作;
K.服务网格根据大令牌解析信息生成小令牌并返回给终端;
L.微服务端点处理请求并返回业务数据给终端;进入此步骤时表示小令牌LToken已验证通过,或者是大令牌BToken已验证通过,则此时服务网格将请求数据转发向适合的微服务端点来处理请求,微服务端点完成请求的处理后,再将业务数据返回给终端。
进一步地,所述步骤A中终端通过HTTPS完成用户登录时具体是通过向服务网格中的登录服务发起注册或登录请求、或向单点登录服务器SSO发起注册或登录请求,即终端向服务网格中的登录服务发起注册或登录请求,完成用户的注册登录验证;或者是终端向单点登录服务器SSO发起注册或登录请求,完成用户的注册登录验证,且验证通过后,再向服务网格中的混淆码微服务发起请求。
进一步地,所述步骤B中的高速缓存为大容量内存设备或固态硬盘。
进一步地,所述大令牌和小令牌均具有有效时间,且小令牌的有效时间小于大令牌的有效时间。
进一步地,所述小令牌的有效时间为1小时,大令牌的有效时间为1个星期。
进一步地,所述大令牌和小令牌均是根据对称加密算法至少对用户ID、用户信息、用户访问权限矩阵的信息加密后生成的字符串数据,具体的,大令牌是比较完整的信息加密生成的字符串,而小令牌是部分信息的加密生成的字符串。
进一步地,所述步骤H中的用户信息至少包含用户ID、过期时间或其它项信息。
本发明与现有技术相比,具有以下的有益效果:
本发明提供了一种服务网格中用户状态验证的方法,可有效提升网络服务的安全性,通过实施大小令牌的机制降低了服务网格中的负载压力,兼顾了性能、安全和吞吐量,且本发明的方法在海量用户场景下构建服务网格平台具有重要的意义。
附图说明
图1是本发明的服务网格中用户状态验证的方法的流程示意图。
具体实施方式
下面结合本发明的实施例对本发明作进一步的阐述和说明。
实施例:
如图1所示,一种服务网格中用户状态验证的方法流程示意图,该方法可以应用于微服务架构中,可以应用于服务网格平台等数据中心,所述方法主要包括以下步骤:
步骤101,终端C通过HTTPS完成用户登录,并请求微服务A,获取混淆码。
对于用户登录,比较安全的实施方式是通过HTTPS协议传输用户的敏感信息,从而完成验证。
所述的微服务A是服务网格中一种专用于提供混淆码的微服务。
具体实施中可以是终端C向服务网格中的登录服务发起注册/登录请求,完成用户的注册登录验证;也可以是终端C向单点登录服务器SSO发起注册/登录请求,完成用户的注册登录验证。
验证通过后,再向服务网格中的混淆码微服务发起请求。
步骤102,微服务A产生一个随机混淆码,并返回给终端C,再将UID和混淆码以键值对形式存入高速缓存。
服务网格中的混淆码微服务A是根据目前公开的算法,产生一个随机混淆码,再将混淆码返回给终端C,最后将混淆码和用户ID(即UID)以键值对的形式存入高速缓存。
作为优选,本实施例中的高速缓存是大容量内存、SSD等高速存储设备。
步骤103,终端C使用混淆码进行加密计算,产生大令牌BToken、小令牌LToken。
具体为,终端C获得上一步骤产生的混淆码后,使用终端和服务网格双方约定的、业界公开的对称加密算法进行加密计算,生成两个令牌:小令牌LToken和大令牌BToken。
所述的小令牌LToken和大令牌BToken的有效时间不同,小令牌的有效时间远小于大令牌的有效时间。本实施例中默认为小令牌的有效时间为1小时;而大令牌的有效时间为1个星期。
具体的小令牌LToken和大令牌BToken是根据对称加密算法对用户ID、用户信息、用户访问权限矩阵等信息加密后生成的字符串数据,且大令牌是比较完整的信息加密生成的字符串,而小令牌是部分信息的加密生成的字符串。
步骤104,终端C携带大小令牌访问各种微服务。
终端C携带大小令牌访问服务网格中的各种微服务。在实施例中,实际的访问情况比较复杂,有可能小令牌不存在,有可能大令牌不存在,有可能大小令牌都不存在。
步骤105,服务网格端验证大小令牌。
服务网格验证大小令牌。当大小令牌都不存在的情况下,服务网格拒绝服务,终端C需要重新进行注册或登录操作。
步骤106,判断小令牌LToken是否存在。
服务网格判断小令牌LToken是否存在。如果存在,转向步骤107;如果不存在,转向步骤110。
步骤107,服务网格解析小令牌LToken,以获取用户的部分信息,比如用户ID、过期时间、其它项信息。
步骤108,服务网格解析小令牌是否成功。
服务网格解析小令牌LToken是否成功。如果是,转向步骤112;如果否,转向步骤109。
步骤109,服务网格解析大令牌BToken是否成功。
服务网格解析大令牌BToken是否成功。如果是,转向步骤111;如果否,转向步骤110。
步骤110,服务网格拒绝服务。
服务网格拒绝服务,这意味着终端C不是合法用户,或者是合法性已过期。此时需要终端C重新进行登录操作。
步骤111,生成小令牌LToken。
服务网格可以根据大令牌解析的信息生成小令牌数据,并返回给终端C。
步骤112,微服务端点处理请求,返回业务数据给终端C。
在此步骤,表示要么是小令牌LToken已验证通过,或者是大令牌BToken已验证通过。此时服务网格将请求数据转发向适合的微服务端点来处理请求,微服务端点完成请求的处理后,再将业务数据返回给终端C。
综上所述,为本发明提供的一种服务网格中用户状态验证的方法的实施例,与现有技术相比,本发明的有益效果是,本发明的实施例虽然比现有的直接令牌验证的方法要复杂一些,但是安全性得以比较大的提升,而且通过实施大小令牌的机制降低了服务网格中的负载压力,兼顾了性能、安全和吞吐量。本发明实施例在海量用户场景下构建服务网格平台具有重要的意义。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

Claims (5)

1.一种服务网格中用户状态验证的方法,其特征在于,包括以下步骤:
A.终端通过HTTPS完成用户登录,并请求混淆码微服务;
B.混淆码微服务产生一个随机混淆码,并返回给终端,再将用户ID和混淆码以键值对形式存入高速缓存;
C.终端使用混淆码进行加密计算,产生大令牌、小令牌;所述大令牌和小令牌均具有有效时间,且小令牌的有效时间小于大令牌的有效时间;所述大令牌和小令牌均是根据对称加密算法至少对用户ID、用户信息、用户访问权限矩阵的信息加密后生成的字符串数据;
D.终端携带大令牌、小令牌访问服务网格中的微服务;
E.服务网格端验证大令牌、小令牌,若大令牌、小令牌均不存在则直接进入步骤J,否则进入步骤F;
F.服务网格判断小令牌是否存在;若存在,则进入步骤G,否则进入步骤J;
G.服务网格解析小令牌,若成功解析小令牌则进入步骤H,否则进入步骤I;
H.服务网格通过解析小令牌获取用户信息并进入步骤L;
I.服务网格解析大令牌,若成功解析大令牌则进入步骤K,否则进入步骤J;
J.服务网格拒绝服务;
K.服务网格根据大令牌解析信息生成小令牌并返回给终端;
L.微服务端点处理请求并返回业务数据给终端。
2.根据权利要求1所述的一种服务网格中用户状态验证的方法,其特征在于,所述步骤A中终端通过HTTPS完成用户登录时具体是通过向服务网格中的登录服务发起注册或登录请求、或向单点登录服务器SSO发起注册或登录请求。
3.根据权利要求1所述的一种服务网格中用户状态验证的方法,其特征在于,所述步骤B中的高速缓存为大容量内存设备或固态硬盘。
4.根据权利要求1所述的一种服务网格中用户状态验证的方法,其特征在于,所述小令牌的有效时间为1小时,大令牌的有效时间为1个星期。
5.根据权利要求1所述的一种服务网格中用户状态验证的方法,其特征在于,所述步骤H中的用户信息至少包含用户ID、过期时间。
CN201811176998.5A 2018-10-09 2018-10-09 一种服务网格中用户状态验证的方法 Active CN109413053B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811176998.5A CN109413053B (zh) 2018-10-09 2018-10-09 一种服务网格中用户状态验证的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811176998.5A CN109413053B (zh) 2018-10-09 2018-10-09 一种服务网格中用户状态验证的方法

Publications (2)

Publication Number Publication Date
CN109413053A CN109413053A (zh) 2019-03-01
CN109413053B true CN109413053B (zh) 2021-10-29

Family

ID=65467409

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811176998.5A Active CN109413053B (zh) 2018-10-09 2018-10-09 一种服务网格中用户状态验证的方法

Country Status (1)

Country Link
CN (1) CN109413053B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112416616B (zh) * 2020-11-12 2023-12-12 北京字跳网络技术有限公司 一种微服务调用方法、装置、电子设备及存储介质
CN112787814A (zh) * 2021-01-20 2021-05-11 四川湖山电器股份有限公司 一种上位机通信加密方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9038138B2 (en) * 2012-09-10 2015-05-19 Adobe Systems Incorporated Device token protocol for authorization and persistent authentication shared across applications
CN105516134A (zh) * 2015-12-08 2016-04-20 浪潮(北京)电子信息产业有限公司 一种系统集成的认证方法及系统
CN105959267A (zh) * 2016-04-25 2016-09-21 北京九州云腾科技有限公司 单点登录技术中的主令牌获取方法、单点登录方法及系统
CN106453396A (zh) * 2016-11-18 2017-02-22 传线网络科技(上海)有限公司 双令牌账户登录方法及登录验证装置
CN107517103A (zh) * 2017-08-23 2017-12-26 西安万像电子科技有限公司 权限的验证方法、装置和系统
CN108390878A (zh) * 2018-02-26 2018-08-10 腾讯科技(深圳)有限公司 用于验证网络请求安全性的方法、装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9038138B2 (en) * 2012-09-10 2015-05-19 Adobe Systems Incorporated Device token protocol for authorization and persistent authentication shared across applications
CN105516134A (zh) * 2015-12-08 2016-04-20 浪潮(北京)电子信息产业有限公司 一种系统集成的认证方法及系统
CN105959267A (zh) * 2016-04-25 2016-09-21 北京九州云腾科技有限公司 单点登录技术中的主令牌获取方法、单点登录方法及系统
CN106453396A (zh) * 2016-11-18 2017-02-22 传线网络科技(上海)有限公司 双令牌账户登录方法及登录验证装置
CN107517103A (zh) * 2017-08-23 2017-12-26 西安万像电子科技有限公司 权限的验证方法、装置和系统
CN108390878A (zh) * 2018-02-26 2018-08-10 腾讯科技(深圳)有限公司 用于验证网络请求安全性的方法、装置

Also Published As

Publication number Publication date
CN109413053A (zh) 2019-03-01

Similar Documents

Publication Publication Date Title
US10764752B1 (en) Secure mobile initiated authentication
US11659392B2 (en) Secure mobile initiated authentications to web-services
CN110086822B (zh) 面向微服务架构的统一身份认证策略的实现方法及系统
US11121873B2 (en) System and method for hardening security between web services using protected forwarded access tokens
US10880292B2 (en) Seamless transition between WEB and API resource access
US20190370479A1 (en) Method for providing simplified account registration service and user authentication service, and authentication server using same
US10454918B1 (en) Method for SSO service using PKI based on blockchain networks, and device and server using the same
US10382426B2 (en) Authentication context transfer for accessing computing resources via single sign-on with single use access tokens
CN106452772B (zh) 终端认证方法和装置
CN108964925B (zh) 一种文件认证设备方法、装置、设备及可读介质
US10686600B1 (en) Asynchronous step-up authentication for client applications
US11356458B2 (en) Systems, methods, and computer program products for dual layer federated identity based access control
CN113783695A (zh) 一种微服务架构的客户端信息认证方法及系统
CN103259663A (zh) 一种云计算环境下的用户统一认证方法
CN103139200A (zh) 一种web service单点登录的方法
CN109495486B (zh) 一种基于JWT的单页Web应用集成CAS的方法
CN109587126A (zh) 用户鉴权方法和系统
WO2021127575A1 (en) Secure mobile initiated authentication
CN109726531A (zh) 一种基于区块链智能合约的营销终端安全管控方法
CN109413053B (zh) 一种服务网格中用户状态验证的方法
CN111147525A (zh) 基于api网关的认证方法、系统、服务器和存储介质
CN114257430A (zh) 一种单点登录系统
CN109981680A (zh) 一种访问控制实现方法、装置、计算机设备及存储介质
US8176533B1 (en) Complementary client and user authentication scheme
CN112055008B (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