CN112543169A - 一种认证方法、装置、终端及计算机可读存储介质 - Google Patents

一种认证方法、装置、终端及计算机可读存储介质 Download PDF

Info

Publication number
CN112543169A
CN112543169A CN201910895259.XA CN201910895259A CN112543169A CN 112543169 A CN112543169 A CN 112543169A CN 201910895259 A CN201910895259 A CN 201910895259A CN 112543169 A CN112543169 A CN 112543169A
Authority
CN
China
Prior art keywords
authentication
service
authorization
token
user
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.)
Granted
Application number
CN201910895259.XA
Other languages
English (en)
Other versions
CN112543169B (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.)
Zte Communications Chengdu Co ltd
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201910895259.XA priority Critical patent/CN112543169B/zh
Publication of CN112543169A publication Critical patent/CN112543169A/zh
Application granted granted Critical
Publication of CN112543169B publication Critical patent/CN112543169B/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
    • 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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供的一种认证方法、装置、终端及计算机可读存储介质,该方法通过获取用户的HTTP请求;若HTTP请求所对应的本地会话不存在,则对用户进行身份认证,颁发认证令牌,颁发授权令牌,根据授权令牌所对应的业务权限,响应HTTP请求。本发明还提供了一种认证装置、终端及计算机可读存储介质,解决了现有相关技术中不能同时支持认证授权,系统集成复杂,用户体验度低的问题,达到了支持同时认证授权、支持负责业务的细粒度授权,解决系统集成的复杂性的问题,提升用户体验。

Description

一种认证方法、装置、终端及计算机可读存储介质
技术领域
本发明实施例涉及但不限于电子设备技术领域,具体而言,涉及但不限于一种认证方法、装置、终端及计算机可读存储介质。
背景技术
5G云化网络,会包含EMS(Element Management System,网元管理系统),VNFM(Virtualization Network Functions Manager,虚拟化网络功能管理),NFVO(NetworkFunctions Virtualization Orchestrator,网络功能虚拟化编排),VIM(VirtualizedInfrastructure Manager,虚拟化基础设施管理)等多种系统,在5G网络中各种系统一般都会以服务/微服务化方式为用户提供服务,图1为3GPP核心网5G系统服务架构。为了适应微服务架构方式,身份认证和授权方案也在不断的变革。目前的认证授权主要思路为在网关处校验用户身份,一旦经过网关的身份认证,就认为该用户合法,并为其分配身份令牌,用户持有该身份令牌就可以进入各应用。在网关中可以粗粒度确定用户是否有访问某个应用的权限,但无法确定用户的业务权限。如果要做到配置应用权限,都是预置好的。目前的认证授权方案中只处理认证问题,不处理授权;如CAS(Central Authentication Service,集中认证服务),SSO(Single Sign On,单点登录)单点登录的实现框架。目前的认证授权方案授权简单,无法满足复杂业务需要;5G网络框架面对的大都是复杂业务,其权限模型一般都比较复杂。目前的实现技术存在1)授权信息简单,如oAuth2.0(Open Authority2.0,开放授权2.0),只对用户的基本信息做授权,不处理用户关联业务;2)授权粒度粗,只对应用粒度授权或者只对应用中的服务;3)权限分配方式不灵活且使用不便,用户对于精细的权限配置需要经常需要修改配置文件,还需要重启服务。目前的认证授权方案不同服务基于的架构不一样,业务之间的授权复杂,系统间耦合紧,集成不便,没有对应的服务实现,各服务需要自己实现集成。
发明内容
本发明实施例提供的一种认证方法、装置、终端及计算机可读存储介质,主要解决的技术问题是目前的认证授权方案不能同时支持认证授权,系统集成复杂,用户体验度低。
为解决上述技术问题,本发明实施例提供一种认证方法,应用于5G云化网络,包括:
获取用户的HTTP请求;
若所述HTTP请求所对应的本地会话不存在,则对所述用户进行身份认证;
若身份认证成功,则为所述用户颁发认证令牌,所述认证令牌包含所述用户的身份信息和所述微服务的身份凭证;
若所述认证令牌有效,则为所述用户颁发授权令牌,所述授权令牌包括所述用户的身份信息;
根据所述授权令牌所对应的业务权限,响应所述HTTP请求。
本发明实施例还提供了一种认证装置,应用于5G云化网络,所述认证装置包括:微服务模块,认证服务模块,授权服务模块,所述微服务模块包括安全边车代理模块和业务处理模块,其中:
所述安全边车代理模块,用于获取用户的HTTP请求;
所述认证服务模块,用于若所述HTTP请求所对应的本地会话不存在,则对所述用户进行身份认证;若身份认证成功,则为所述用户颁发认证令牌,所述认证令牌包含所述用户的身份信息和所述微服务的身份凭证;
所述授权服务模块,用于若所述认证令牌有效,则为所述用户颁发授权令牌,所述授权令牌包括所述用户的身份信息;
所述业务处理模块,用于根据所述授权令牌所对应的业务权限,响应所述HTTP请求。
本发明实施例还提供一种终端,包括处理器、存储器及通信总线;
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行存储器中存储的一个或者多个计算机程序,以实现上述任一项所述的认证方法的步骤。
本发明实施例还提供一种计算机可读存储介质,所述可读存储介质存储有一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现上述任一项所述的认证方法的步骤。
本发明的有益效果是:
本发明提供的一种认证方法、装置、终端及计算机可读存储介质,该方法通过获取用户的HTTP请求;若HTTP请求所对应的本地会话不存在,则对用户进行身份认证,颁发认证令牌,颁发授权令牌,根据授权令牌所对应的业务权限,响应HTTP请求。解决了现有相关技术中不能同时支持认证授权,系统集成复杂,用户体验度低的问题,达到了支持同时认证授权、支持负责业务的细粒度授权,解决系统集成的复杂性的问题,提升用户体验。
本发明其他特征和相应的有益效果在说明书的后面部分进行阐述说明,且应当理解,至少部分有益效果从本发明说明书中的记载变的显而易见。
附图说明
图1为本发明背景技术中现有3GPP核心网5G系统服务架构;
图2为本发明实施例一的一种认证方法的流程示意图;
图3为本发明实施例一的一种认证方法的具体实施例的流程示意图;
图4为本发明实施例二的一种认证装置的结构示意图;
图5为本发明实施例二的另一种认证装置的结构示意图;
图6为本发明实施例二的另一种认证装置的结构示意图;
图7为本发明实施例二的另一种认证装置的结构示意图;
图8-1为本发明实施例三的一种认证方法中业务权限分配的流程示意图;
图8-2为本发明实施例三的一种认证方法中认证过程的流程示意图;
图9为本发明实施例四提供的终端的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面通过具体实施方式结合附图对本发明实施例作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一:
请参见图2,本实施例提供的一种认证方法包括:
S201:获取用户的HTTP请求;
S202:若HTTP请求所对应的本地会话不存在,则对用户进行身份认证;
S203:若身份认证成功,则为用户颁发认证令牌;
S204:若认证令牌有效,则为用户颁发授权令牌;
S205:根据授权令牌所对应的业务权限,响应HTTP请求。
在一些实施例中,本发明实施例的认证方法应用于5G云化网络,该方法结合Service Mesh((服务网格))思想,采用边车模式,通过提出一种5G微服务开发框架下,可以为各服务/微服务提供的统一认证,同时支持不同业务不同系统的细粒度的安全授权方案,使用边车代理来实现认证授权控制面功能,把安全边车代理集成到微服务开发框架方式,让不同服务的开发者只通过简单的资源模型配置就可以实现其复杂的权限管理,聚焦于自身业务的开发,简化服务化平台安全开发方式,为5G网络提供统一的服务化认证授权方案。
边车模式。分布式架构下云设计模式的一种,因为类似于生活中的边三轮摩托车而得名。该设计模式通过给应用程序加上一个边车的方式来拓展应用程序现有功能,比如监控,流量控制、服务发现、服务限流、服务熔断等在业务服务中不需要实现的控制面功能,可以交给”边车”,业务服务只需要关注实现业务逻辑即可。这与分布式和微服务架构完美契合,真正实现了控制和逻辑的分离和解耦。每个服务都将具有配套代理边车,服务都通过边车通信,就形成了网状服务部署结构,也就是Service Mesh(服务网格)。
在一些实施例中,认证方法还包括在环境中部署认证服务和授权服务。安全边车代理作为独立的进程部署于各微服务内且安全边车代理不影响业务微服务集成的部署,通过拦截用户的HTTP请求,解析HTTP请求中的认证授权信息,进而实现业务安全权限的控制。需要说明的是,安全边车代理作为各业务微服务底层支撑的组成部分,作为认证代理的为各业务提供透明的认证和鉴权服务。同时作为授权代理还可以为各服务提供统一的权限模型的收集服务。安全边车代理是无侵入式的,和微服务的业务处理完全解耦,适用于多语言的微服务框架,为微服务业务开发提供极大便利。
需要说明的是,安全边车代理是用户HTTP请求所对应的微服务的安全边车代理。例如,用户向微服务A请求业务资源,发出HTTP请求,微服务A的安全边车代理获取到该HTTP请求后,进行判定该HTTP请求所对应的本地会话是否存在。进行进行后续流程。
需要说明的是,步骤S202-S203中的对用户进行身份认证并颁发认证令牌可以基于认证服务来进行,认证服务主要负责用户身份合法性的校验,用户令牌的管理,颁发和检验以及用户会话生命周期的管理,用户的访问控制。
需要说明的是,步骤S204中为用户颁发授权令牌可以是由授权服务来进行,授权服务主要负责系统权限管理,可以接收各微服务的注册的权限模型,为各微服务提供精细的权限配置,同时为安全边车代理提供实际的鉴权服务。
需要说明的是,认证令牌包括用户的身份信息和微服务的身份凭证。
需要说明的是,授权令牌包括用户的身份信息。
在一些实施例中,授权令牌由JWT(JSON Web Token)构成,其中携带用户的身份信息。如果认证令牌校验无效,则不会生成授权令牌,由边车代理直接返回用户身份不合法。
在一些实施例中,若HTTP请求所对应的本地会话不存在,则对用户进行身份认证包括:
获取用户的全局身份令牌;
若所述全局身份令牌有效,则颁发所述认证令牌。
需要说明的是,当安全边车代理判定用户的HTTP请求没有本地会话存在时,也即可以理解为用户在本地没有授权令牌,不能直接响应用户的HTTP请求,需要用户经身份认证,对其颁发授权令牌后,再行判定是否响应该HTTP请求。而身份认证可以在认证服务中实现,安全边车代理判定本地会话不存在,请求跳转到认证服务进行认证身份认证。认证服务接收到用户身份认证请求后,首先会基于该用户身份认证请求获取该用户的全局身份令牌,需要说明的是,全局身份令牌是用户在微服务框架中的全局身份令牌,全局身份令牌置于cookie中作为多个服务全局的会话标记,标志着用户的身份。若全局身份令牌有效,则颁发认证令牌。
在一些实施例中,该认证令牌可以添加到跳转到认证服务的用户发送的HTTP请求URL参数中,传递给微服务。
在一些实施例中,若HTTP请求所对应的本地会话不存在,则对用户进行身份认证包括:
获取用户的全局身份令牌;
若所述全局身份令牌无效或获取不到所述全局身份令牌,则获取用户的身份凭证信息,根据身份凭证信息进行身份凭证校验;
若校验通过,则颁发全局身份令牌和认证令牌。
在一些实施例中,用户的身份凭证信息的获取方法可以是通过提供给用户一个身份认证的页面,其中包括一些需要用户提供的身份凭证信息的填写提示,其中用户身份凭证信息包括但不限于用户名、密码、身份证号、预留验证信息等,用户填写完成后,将上述用户身份信息提交给认证服务,认证服务进行身份凭证校验,若校验通过,则会生成两个令牌,一个是全局身份令牌,全局身份令牌是用户在微服务框架中的全局身份令牌,全局身份令牌置于cookie中作为多个服务全局的会话标记,标志着用户的身份;另一个是发放给微服务本身的认证令牌,认证令牌既是业务微服务的身份凭证,同时也包含用户的身份信息。在一些实施例中,认证令牌可以添加到跳转到认证服务的用户发送的HTTP请求URL参数中,传递给微服务。
在一些实施例中,若HTTP请求所对应的本地会话存在,则响应HTTP请求。
需要说明的是,当本地会话存在时,则代表授权令牌有效,可以通过本地会话直接获取到授权令牌,进而响应HTTP请求。
在一些实施例中,若身份认证成功,则获取用户的认证令牌,认证令牌包含用户的身份信息和微服务的身份凭证之后,还包括:
若认证令牌无效,则用户的身份不合法。
在一些实施例中,若认证令牌无效,也可以对该用户重新进行身份认证,重新颁发认证令牌后再次请求授权令牌。需要说明的是,为了保证系统的资源占用合理,该步骤重复次数可以设置一个重复次数上限阈值。
在一些实施例中,若认证令牌有效,则为用户颁发授权令牌的过程可以是,安全边车代理将获取到的认证令牌传输给认证服务,认证服务对该认证令牌进行认证,若该认证令牌是有效的,则认证服务向授权服务发起授权令牌的请求,授权服务根据认证服务中所包括的身份信息等颁发对应的授权令牌,认证服务将该授权令牌传回安全边车代理。
在一些实施例中,根据授权令牌所对应的业务权限,响应HTTP请求包括:
获取HTTP请求所对应的请求权限;
若授权令牌有效,则获取授权令牌所对应的授权权限;
若授权权限包括全部请求权限,则响应HTTP请求。
需要说明的是,授权权限包括全部请求权限在一些实施例中可以认为,授权权限大于或等于请求权限,例如,请求权限是读取数据A,而授权权限是读取数据A,此时,请求权限等于授权权限。又例如,请求权限是读取数据A,而授权权限是读取并删除数据A,此时,请求权限小于授权权限。又例如,请求权限是读取数据A,而授权权限是读取A、更改B、删除C,此时,请求权限小于授权权限。不论怎样,只要授权权限中包括请求权限所需要的全部权限,则响应HTTP请求。
在一些实施例中,根据授权令牌所对应的业务权限,响应HTTP请求包括:
获取HTTP请求所对应的请求权限;
若授权令牌有效,则获取授权令牌所对应的授权权限;
若授权权限包括部分请求权限,则响应请求权限与授权权限一致的部分内容。
需要说明的是,授权权限包括部分请求权限在一些实施例中可以理解为授权权限与请求权限存在一步分交叉关系,但请求权限并不是授权权限的子集,也即,授权权限并没有完全包括请求权限。例如,请求权限是读取数据A,删除数据B,而授权权限是读取并删除数据A,此时,请求权限与授权权限之间存在读取数据A的交集,则,仅响应HTTP请求中关于读取数据A的部分,其余部分不响应。
在一些实施例中,请求权限与授权权限完全不一致,此时一方面可以采取终止响应的措置,另一方面也可以提示用户重新进行身份认证,进而重新进行授权确认。
在一些实施例中,若认证令牌有效,则为用户颁发授权令牌,授权令牌包括用户的身份信息之后,还包括:
若获取不到授权令牌所对应的业务权限,则重新进行身份认证。
需要说明的是,获取不到授权令牌所对应的业务权限,可以理解为在此验证授权令牌时,授权令牌无效,由于此时用户已经具备全局令牌,因此,只需要重新请求获取认证令牌即可。
在一些实施例中,对用户进行身份认证包括:
本地服务器对用户进行身份认证;
或,
第三方认证服务器对用户进行身份认证。
需要说明的是,对用户进行身份认证既可以在本地进行,也可以借助第三方认证服务器来进行,还可以是本地服务器与第三方认证服务器之间相互协作,完成用户身份认证。
在一些实施例中,在获取用户的HTTP请求之前,认证方法还包括:
在环境中部署授权服务;
在微服务中部署权限模型,权限模型文件为业务微服务根据权限模型格式定义,权限模型格式由授权服务定义;
微服务启动时,安全边车代理解析并加载权限模型并向授权服务发送权限模型的注册请求,安全边车代理作为独立的进程部署于微服务内;
授权服务将注册请求转换为可识别的权限定义,并将权项定义发送给安全管理员;
安全管理员配置并为用户分配权限。
需要说明的是,在一些实施例中,可以由业务微服务按照授权服务定义的权限模型格式定义业务服务的权限模型,并将定义好的权限模型部署于微服务中。权限模型就是业务请求的资源和其实际业务权限的映射关系,权限模型可以理解为业务请求的资源与其实际业务权限的映射关系,权限模型可以定义为用户单个操作和资源实例的粒度,操作和资源分别以预定义的树状结构组织。权限粒度由业务微服务自己控制,理论上粒度无限细分。与现有的框架的权限粒度只会控制是否有权可以访问某个微服务,或者最多支持到某个服务接口是否可以访问,无法对服务接口中的资源实例和执行的操作进行权限的判定相比,本发明实施例所提供的这种业务权限分配的方式能够支持复杂业务的细粒度授权。
在一些实施例中,微服务启动时,安全边车代理解析并加载权限模型,然后通过REST接口发送注册请求,请求注册到授权服务,以便权限分配时候使用。当安全边车代理在解析权限模型,然后把权限模型注册到授权服务,授权服务立即就可以加载并更新当前的权限模型。权限模型注册接口是开放标准的REST(Representational State Transfer)接口,各业务服务如果在运行期增加业务,同样可以直接调用权限模型注册接口,授权服务会动态更新权限模型,达到权限模型即插即用的目的。保证老业务不间断的同时,增加新的业务。
在一些实施例中,授权服务将注册请求转换为可识别的权限定义包括:
授权服务将注册请求通过树状结构组织起来,转换为安全管理员可识别的权限定义。
可以理解,授权服务收到各安全边车代理的权限模型的注册请求后,通过树状结构组织起来,最终呈现给安全管理员可识别的权限定义。
需要说明的是,本发明实施例中的一个认证服务可以对应多个微服务,每一个微服务中都包括一个安全边车代理。本发明实施例中的一个授权服务可以对应多个微服务,每一个微服务中都包括一个安全边车代理。
在一些实施例中,安全管理员为指定用户授予不同应用的不同的业务权限,如网元001的告警查看权限。其中,当用户被授予某个业务权限时,意味着他有权访问这个请求,安全边车代理作为认证服务底层框架的组成,在服务启动时自动加载权限模型。在一些实施例中,安全管理员可以通过获取客户端授权页面,就可以展示应用服务权限模型。
在一些实施例中,若微服务没有注册权限模型,则当用户身份认证成功后,则可以直接响应HTTP请求。
在一些实施例中,响应HTTP请求包括:
安全边车代理判定授权令牌有效,且完成了授权权限与请求权限的确权,确定了需要响应内容后,将该需要响应内容请求发送给微服务中的业务处理模块,业务处理依需要响应内容请求完成资源整合后,将该需要响应内容请求所对应的响应内容经由安全边车代理返回给用户。
下面通过一个具体的实施例,进一步说明本发明实施例所提供的认证方法。
如图3所示:
S301:在环境中部署授权服务、认证服务;
S302:在微服务中部署权限模型;
S303:微服务启动时,安全边车代理解析并加载权限模型;
S304:安全边车代理向授权服务发送权限模型的注册请求;
S305:授权服务将注册请求转换为可识别的权限定义,并将权项定义发送给安全管理员;
S306:安全管理员配置并为用户分配权限;
S307:向微服务A请求业务资源,发出HTTP请求;
S308:判断HTTP请求所对应的本地会话是否存在,若存在执行S309,若不存在执行S318;
S309:请求进行用户身份认证;
S310:获取用户的全局身份令牌,全局身份令牌是否有效,若有效则执行S311,若无效或不存在则执行S312;
S311:若全局身份令牌有效,颁发认证令牌,执行S314;
S312:若全局身份令牌不存在或者无效,进行身份校验;
S313:若身份校验成功,颁发全局身份令牌和认证令牌;
S314:安全边车代理根据该用户的认证令牌向认证服务请求授权令牌;
S315:认证服务确定该认证令牌有效,向授权服务请求授权令牌;
S316:授权服务颁发授权令牌;
S317:认证服务将该授权令牌返回给安全边车代理;
S318:根据授权令牌所对应的业务权限,响应HTTP请求。
需要说明的是,在环境中部署认证服务和授权服务,安全边车代理作为独立的进程部署于在各微服务内,不影响业务微服务集成的部署,拦截HTTP请求,解析其中的认证授权信息,来完成业务安全权限的控制。同一个授权服务可能对应多个微服务。
需要说明的是,业务服务按照授权服务定义的权限模型格式定义业务服务的权限模型文件,部署于微服务中。
需要说明的是,微服务启动时,将权限模型通过REST接口注册到授权服务,以便权限分配时候使用。
在一些实施例中,用户在浏览器输入业务微服务A的某个请求URL,也即发出HTTP请求,发送请求到微服务A,被安全边车代理拦截后,会先缓存本地会话和授权令牌,进而会判定该HTTP请求是否已经有本地会话存在,本地会话代表着用户暂时持有授权令牌,如果本地会话存在,则授权令牌合法,则根据本地会话取到授权令牌,直接走步骤S318,否则如果本地会话不存在,会发送跳转到认证服务器请求身份认证的请求到浏览器也即步骤S309。
在一些实施例中,上述步骤S312-S313中对用户进行身份校验的一种具体的实现方式:获取用户的身份凭证信息,根据身份凭证信息进行身份凭证校验;若校验通过,则颁发全局身份令牌和认证令牌。
需要说明的是,若微服务A在接收用户的业务资源请求前没有进行步骤S301-S306的业务权限分配步骤,则获取到用户对应的认证令牌后,不再进行授权令牌的获取,以及授权令牌所对应权限的比对,直接对用户所发出的HTTP所请求的业务资源进行响应。
需要说明的是,用户的全局身份令牌是否存在可以通过跳转的过程中cookie中是否存在全局身份令牌来获得。
在一些实施例中,认证令牌是认证服务在传递URL叠加认证令牌。
在一些实施例中,S318,根据授权令牌所对应的业务权限,响应HTTP请求的具体事项方式可以是:
安全边车代理持有该授权令牌,同时解析业务资源请求所需要的权限,得到希望授权的操作或者资源,然后到授权服务申请用户在微服务的操作或者资源的权限。
授权服务校验授权令牌的合法性,如果合法则返回边车代理的所申请的操作和资源权限。如果授权令牌不合法,则返回用户授权失败,需要重新申请认证令牌,再拿认证令牌获取新的合法授权令牌。
安全边车代理根据返回的权限判定用户请求是否有权限访问。如果有权访问,则把请求和当前用户信息传递到微服务A的业务处理,处理完毕。
返回对用户的响应。
本发明实施例提供了一种认证方法,该方法通过获取用户的HTTP请求;若HTTP请求所对应的本地会话不存在,则对用户进行身份认证,颁发认证令牌,颁发授权令牌,根据授权令牌所对应的业务权限,响应HTTP请求,解决了现有相关技术中不能同时支持认证授权,系统集成复杂,用户体验度低的问题,达到了支持同时认证授权、支持负责业务的细粒度授权,解决系统集成的复杂性的问题,提升用户体验。
进一步地,通过本发明的认证方法的实现,可以实现支持用户自定义的细粒度权限授权控制方式,通用为资源实例和操作级别授权。
进一步地,现有的服务化认证授权没有一套标准的方式,认证授权流程的安全性也是一个比较大的门槛,同时细粒度的授权大多数框架都不足以支撑,导致大多数的授权都是各自为阵,实现复杂。而本发明提供的认证方法对使用者来说实现较为简单,基本不需要开发。
实施例二:
本实施例还提供了一种认证装置400,如图4所示,该认证装置400包括微服务模块401,认证服务模块402,授权服务模块403,微服务模块401包括安全边车代理模块4011和业务处理模块4012,其中:
安全边车代理模块4011,用于获取用户的HTTP请求;
认证服务模块402,用于若HTTP请求所对应的本地会话不存在,则对用户进行身份认证;若身份认证成功,则为用户颁发认证令牌,认证令牌包含用户的身份信息和微服务的身份凭证;
授权服务模块403,用于若认证令牌有效,则为用户颁发授权令牌,授权令牌包括用户的身份信息;
业务处理模块4012,用于根据授权令牌所对应的业务权限,响应HTTP请求。
在一些实施例中,本发明实施例的认证装置应用于5G云化网络,该装置结合Service Mesh((服务网格))思想,采用边车模式,通过提出一种5G微服务开发框架下,可以为各服务/微服务提供的统一认证,同时支持不同业务不同系统的细粒度的安全授权方案,使用边车代理来实现认证授权控制面功能,把安全边车代理集成到微服务开发框架方式,让不同服务的开发者只通过简单的资源模型配置就可以实现其复杂的权限管理,聚焦于自身业务的开发,简化服务化平台安全开发方式,为5G网络提供统一的服务化认证授权方案。
边车模式。分布式架构下云设计模式的一种,因为类似于生活中的边三轮摩托车而得名。该设计模式通过给应用程序加上一个边车的方式来拓展应用程序现有功能,比如监控,流量控制、服务发现、服务限流、服务熔断等在业务服务中不需要实现的控制面功能,可以交给”边车”,业务服务只需要关注实现业务逻辑即可。这与分布式和微服务架构完美契合,真正实现了控制和逻辑的分离和解耦。每个服务都将具有配套代理边车,服务都通过边车通信,就形成了网状服务部署结构,也就是Service Mesh(服务网格)。
在一些实施例中,认证装置还包括在环境中部署认证服务模块和授权服务模块。安全边车代理模块作为独立的进程部署于各微服务模块内且安全边车代理模块不影响业务微服务模块集成的部署,通过拦截用户的HTTP请求,解析HTTP请求中的认证授权信息,进而实现业务安全权限的控制。需要说明的是,安全边车代理模块作为各业务微服务模块底层支撑的组成部分,作为认证代理的为各业务提供透明的认证和鉴权服务。同时作为授权代理还可以为各服务提供统一的权限模型的收集服务。安全边车代理是无侵入式的,和微服务的业务处理完全解耦,适用于多语言的微服务框架,为微服务业务开发提供极大便利。
需要说明的是,本发明实施例提供的认证装置可以包括一个微服务模块,也可以包括多个微服务模块,在一些实施例中,其中每一个微服务模块内都包括一个业务处理模块和安全边车代理模块。
需要说明的是,安全边车代理是用户HTTP请求所对应的微服务的安全边车代理。例如,用户向微服务A请求业务资源,发出HTTP请求,微服务A的安全边车代理获取到该HTTP请求后,进行判定该HTTP请求所对应的本地会话是否存在。进行进行后续流程。
需要说明的是,认证服务模块对用户进行身份认证并颁发认证令牌可以基于认证服务来进行,认证服务模块主要负责用户身份合法性的校验,用户令牌的管理,颁发和检验以及用户会话生命周期的管理,用户的访问控制。
需要说明的是,为用户颁发授权令牌可以是由授权服务模块来进行,授权服务模块主要负责系统权限管理,可以接收各微服务模块的注册的权限模型,为各微服务模块提供精细的权限配置,同时为安全边车代理模块提供实际的鉴权服务。
需要说明的是,认证令牌包括用户的身份信息和微服务的身份凭证。
需要说明的是,授权令牌包括用户的身份信息。
在一些实施例中,授权令牌由JWT(JSON Web Token)构成,其中携带用户的身份信息。如果认证令牌校验无效,则不会生成授权令牌,由边车代理直接返回用户身份不合法。
在一些实施例中,认证服务模块用于,获取用户的全局身份令牌,全局身份令牌是用户在微服务框架中的全局身份令牌;若全局身份令牌有效,则颁发认证令牌。
需要说明的是,当安全边车代理模块判定用户的HTTP请求没有本地会话存在时,也即可以理解为用户在本地没有授权令牌,不能直接响应用户的HTTP请求,需要用户经身份认证,对其颁发授权令牌后,再行判定是否响应该HTTP请求。而身份认证可以在认证服务模块中实现,安全边车代理模块判定本地会话不存在,请求跳转到认证服务模块进行用户身份认证。认证服务模块接收到用户身份认证请求后,首先会基于该用户身份认证请求获取该用户的全局身份令牌,需要说明的是,全局身份令牌是用户在微服务框架中的全局身份令牌,全局身份令牌置于cookie中作为多个服务全局的会话标记,标志着用户的身份。若全局身份令牌有效,则颁发认证令牌。
在一些实施例中,该认证令牌可以添加到跳转到认证服务模块的用户发送的HTTP请求URL参数中,传递给微服务模块。
在一些实施例中,认证服务模块用于,获取用户的全局身份令牌,全局身份令牌是用户在微服务框架中的全局身份令牌;若全局身份令牌无效或获取不到全局身份令牌,则获取用户的身份凭证信息,根据身份凭证信息进行身份凭证校验;若校验通过,则颁发全局身份令牌和认证令牌。
在一些实施例中,用户的身份凭证信息的获取方法可以是通过提供给用户一个身份认证的页面,其中包括一些需要用户提供的身份凭证信息的填写提示,其中用户身份凭证信息包括但不限于用户名、密码、身份证号、预留验证信息等,用户填写完成后,将上述用户身份信息提交给认证服务模块,认证服务模块进行身份凭证校验,若校验通过,则会生成两个令牌,一个是全局身份令牌,全局身份令牌是用户在微服务框架中的全局身份令牌,全局身份令牌置于cookie中作为多个服务全局的会话标记,标志着用户的身份;另一个是发放给微服务模块本身的认证令牌,认证令牌既是业务微服务模块的身份凭证,同时也包含用户的身份信息。在一些实施例中,认证令牌可以添加到跳转到认证服务模块的用户发送的HTTP请求URL参数中,传递给微服务模块。
在一些实施例中,业务处理模块还用于,若HTTP请求所对应的本地会话存在,则响应所述HTTP请求。
需要说明的是,当本地会话存在时,则代表授权令牌有效,可以通过本地会话直接获取到授权令牌,进而响应HTTP请求。
在一些实施例中,若身份认证成功,则获取用户的认证令牌,认证令牌包含用户的身份信息和微服务的身份凭证之后,还包括:
若认证令牌无效,则用户的身份不合法。
在一些实施例中,若认证令牌无效,也可以对该用户重新进行身份认证,重新颁发认证令牌后再次请求授权令牌。需要说明的是,为了保证系统的资源占用合理,该步骤重复次数可以设置一个重复次数上限阈值。
在一些实施例中,若认证令牌有效,则为用户颁发授权令牌的过程可以是,安全边车代理模块将获取到的认证令牌传输给认证服务模块,认证服务模块对该认证令牌进行认证,若该认证令牌是有效的,则认证服务模块向授权服务模块发起授权令牌的请求,授权服务模块根据认证服务模块中所包括的身份信息等颁发对应的授权令牌,认证服务模块将该授权令牌传回安全边车代理模块。
在一些实施例中,业务处理模块用于,
获取HTTP请求所对应的请求权限;
若授权令牌有效,则获取授权令牌所对应的授权权限;
若授权权限包括全部请求权限,则响应HTTP请求。
需要说明的是,授权权限包括全部请求权限在一些实施例中可以认为,授权权限大于或等于请求权限,例如,请求权限是读取数据A,而授权权限是读取数据A,此时,请求权限等于授权权限。又例如,请求权限是读取数据A,而授权权限是读取并删除数据A,此时,请求权限小于授权权限。又例如,请求权限是读取数据A,而授权权限是读取A、更改B、删除C,此时,请求权限小于授权权限。不论怎样,只要授权权限中包括请求权限所需要的全部权限,则响应HTTP请求。
在一些实施例中,业务处理模块用于,获取HTTP请求所对应的请求权限;若授权令牌有效,则获取授权令牌所对应的授权权限;若授权权限包括部分请求权限,则响应请求权限与授权权限一致的部分内容。
需要说明的是,授权权限包括部分请求权限在一些实施例中可以理解为授权权限与请求权限存在一步分交叉关系,但请求权限并不是授权权限的子集,也即,授权权限并没有完全包括请求权限。例如,请求权限是读取数据A,删除数据B,而授权权限是读取并删除数据A,此时,请求权限与授权权限之间存在读取数据A的交集,则,仅响应HTTP请求中关于读取数据A的部分,其余部分不响应。
在一些实施例中,请求权限与授权权限完全不一致,此时一方面可以采取终止响应的措置,另一方面也可以提示用户重新进行身份认证,进而重新进行授权确认。
在一些实施例中,认证服务模块还用于:授权服务模块为用户颁发授权令牌之后,若授权令牌无效,则重新进行身份认证。
需要说明的是,由于此时用户已经具备全局令牌,因此,只需要重新请求获取认证令牌即可。
在一些实施例中,认证服务模块位于本地服务器,或,第三方认证服务器。
需要说明的是,对用户进行身份认证既可以在本地进行,也可以借助第三方认证服务器来进行,还可以是本地服务器与第三方认证服务器之间相互协作,完成用户身份认证。
在一些实施例中,如图5所示,认证装置400还包括:
部署模块404,用于在环境中部署授权服务;在微服务中部署权限模型,权限模型文件为业务微服务根据权限模型格式定义,权限模型格式由授权服务定义;
安全边车代理模块4011还用于,微服务启动时,解析并加载权限模型并向授权服务发送权限模型的注册请求,安全边车代理作为独立的进程部署于微服务内;
授权服务模块403还用于,将注册请求转换为可识别的权限定义,并将权项定义发送给安全管理员;
安全管理员405,用于配置并为用户分配权限。
需要说明的是,在一些实施例中,可以由业务微服务按照授权服务定义的权限模型格式定义业务服务的权限模型,并将定义好的权限模型部署于微服务中。权限模型就是业务请求的资源和其实际业务权限的映射关系,权限模型可以理解为业务请求的资源与其实际业务权限的映射关系,权限模型可以定义为用户单个操作和资源实例的粒度,操作和资源分别以预定义的树状结构组织。权限粒度由业务微服务自己控制,理论上粒度无限细分。与现有的框架的权限粒度只会控制是否有权可以访问某个微服务,或者最多支持到某个服务接口是否可以访问,无法对服务接口中的资源实例和执行的操作进行权限的判定相比,本发明实施例所提供的这种业务权限分配的方式能够支持复杂业务的细粒度授权。
在一些实施例中,微服务模块启动时,安全边车代理模块解析并加载权限模型,然后通过REST接口发送注册请求,请求注册到授权服务模块,以便权限分配时候使用。当安全边车代理模块在解析权限模型,然后把权限模型注册到授权服务模块,授权服务模块立即就可以加载并更新当前的权限模型。权限模型注册接口是开放标准的REST(Representational State Transfer)接口,各业务服务如果在运行期增加业务,同样可以直接调用权限模型注册接口,授权服务模块会动态更新权限模型,达到权限模型即插即用的目的。保证老业务不间断的同时,增加新的业务。
在一些实施例中,授权服务模块还用于将注册请求转换为可识别的权限定义,并将权项定义发送给安全管理员包括:
授权服务模块将注册请求通过树状结构组织起来,转换为安全管理员可识别的权限定义。
可以理解,授权服务模块收到各安全边车代理模块的权限模型的注册请求后,通过树状结构组织起来,最终呈现给安全管理员可识别的权限定义。
需要说明的是,本发明实施例中的一个认证服务模块可以对应多个微服务模块,每一个微服务模块中都包括一个安全边车代理模块。本发明实施例中的一个授权服务模块可以对应多个微服务模块,每一个微服务模块中都包括一个安全边车代理模块。
在一些实施例中,安全管理员为指定用户授予不同应用的不同的业务权限,如网元001的告警查看权限。其中,当用户被授予某个业务权限时,意味着他有权访问这个请求,安全边车代理作为认证服务底层框架的组成,在服务启动时自动加载权限模型。在一些实施例中,安全管理员可以通过获取客户端授权页面,就可以展示应用服务权限模型。
在一些实施例中,业务处理模块还用于,若微服务没有注册权限模型,则当用户身份认证成功后,则可以直接响应HTTP请求。
在一些实施例中,响应HTTP请求包括:
安全边车代理模块判定授权令牌有效,且完成了授权权限与请求权限的确权,确定了需要响应内容后,将该需要响应内容请求发送给微服务模块中的业务处理模块,业务处理模块依需要响应内容请求完成资源整合后,将该需要响应内容请求所对应的响应内容经由安全边车代理模块返回给用户。
在一些实施例中,本发明实施例提供的一种认证装置600如图6所示,该认证装置600包含由认证服务模块6011和授权服务模块6012组成的安全管控平面601,若干个由安全边车代理模块和业务处理模块组成的微服务模块,安全管理员603。其中:
认证服务模块6011,主要负责用户身份合法性的校验,用户令牌的管理,颁发和校验,用户会话生命周期的管理,用户的访问控制。
授权服务模块6012,负责系统权限管理,可以接收各服务的注册的权限模型,为各服务提供精细的权限配置。同时为代理提供实际的鉴权服务。
安全边车代理模块,作为各业务微服务底层支撑的组成部分,作为认证代理为各业务提供透明的认证和鉴权服务。同时作为授权代理还可以为各服务提供统一的权限模型的收集服务。安全边车代理是无侵入式的,和微服务的业务处理完全解耦,适用于多语言的微服务框架,为微服务业务开发提供极大便利。
安全管理员603,为用户提供精细的权限分配和安全策略配置。
在一些实施例中,认证装置600还包括第三方认证服务器604,通过认证服务模块6011与第三方认证服务器604的交互,完成用户身份等信息认证工作。
本发明实施例提供了一种认证装置,该装置通过安全边车代理模块来获取用户的HTTP请求;若HTTP请求所对应的本地会话不存在,则认证服务模块对用户进行身份认证,颁发认证令牌,授权服务模块颁发授权令牌,微服务模块根据授权令牌所对应的业务权限,响应HTTP请求,解决了现有相关技术中不能同时支持认证授权,系统集成复杂,用户体验度低的问题,达到了支持同时认证授权、支持负责业务的细粒度授权,解决系统集成的复杂性的问题,提升用户体验。
进一步地,通过本发明的认证方法的实现,可以实现支持用户自定义的细粒度权限授权控制方式,通用为资源实例和操作级别授权。
进一步地,现有的服务化认证授权没有一套标准的方式,认证授权流程的安全性也是一个比较大的门槛,同时细粒度的授权大多数框架都不足以支撑,导致大多数的授权都是各自为阵,实现复杂。而本发明提供的认证方法对使用者来说实现较为简单,基本不需要开发。
实施例三:
下面通过一个具体的实施例将本发明所提供的认证方法作进一步说明,参见图8-1和图8-2,图8-1为本发明实施例三所提供的认证方法中权限分配步骤的一种具体实施例,图8-2为本发明实施例三所提供的认证方法中经权限分配后进行认证的一种具体实施例,如图8-1和图8-2所示:
S801:权限模型加载;
在一些实施例中,在环境中部署认证服务模块806和授权服务模块802,安全边车代理A8012作为独立的进程部署于在EMS微服务模块A801内,安全边车代理B8042作为独立的进程部署于在EMS微服务模块B804内,其中安全边车代理不影响其所在业务微服务集成的部署,通过拦截HTTP请求,解析其中的认证授权信息,来完成业务安全权限的控制。
业务服务按照授权服务模块A802定义的权限模型格式定义业务服务的权限模型文件,部署于业务服务中。权限模型就是业务请求的资源和其实际业务权限的映射关系,权限模型可以定义为用户的单个操作和资源实例的粒度,操作和资源分别以预定义的树状结构组织。权限粒度由业务微服务自己控制,理论上粒度无限细分。而现状中框架的权限粒度只会控制是否有权可以访问某个微服务,或者最多支持到某个服务接口是否可以访问,无法对服务接口中的资源实例和执行的操作进行权限的判定。业务服务把权限模型文件部署在指定的服务目录,权限模型就是业务请求的资源和其实际业务权限的映射关系,用户被授予某个业务权限,意味着他有权访问这个请求。
需要说明的是,同一个授权服务模块可以对应多个微服务模块。
S802:权限模型注册;
在一些实施例中,权限模型文件部署,EMS微服务模块A801启动时,安全边车代理模块A8012作为认证服务底层框架的组成,在EMS微服务模块A801启动时候,自动加载模型文件。安全边车代理模块A解析并加载权限模型,然后通过REST接口注册到授权服务模块802,以便权限分配时候使用。
安全边车代理模块A在解析权限模型文件,然后把模型注册到授权服务模块,授权服务模块立即就可以加载并更新当前的权限模型。权限模型注册接口是开放标准的REST(Representational State Transfer,表述性状态传递)接口,各业务服务如果在运行期增加业务,同样可以直接调用权限模型注册接口,授权服务模块会动态更新权限模型,达到权限模型即插即用的目的。保证老业务不间断的同时,增加新的业务。
S803:将权限模型转化为权限定义;
在一些实施例中,授权服务模块收到各安全边车代理模块A的权限模型注册请求,通过树状结构组织起来,呈现给安全管理员803可识别的权限定义
S804:配置并为用户分配权限。
在一些实施例中,安全管理员获取客户端授权页面,就可以展示应用服务权限模型。安全管理员可以为合适的用户分配合适的业务操作权限。如网元001的告警查看权限。
S805:请求资源;
在一些实施例中,用户在浏览器805输入EMS微服务A801的某个请求URL,发送请求到EMS微服务A801,被安全边车代理模块A8012拦截后,认证代理会缓存本地会话和授权令牌,代理会判定该请求是否已经有本地会话存在,本地会话代表着用户暂时持有授权令牌,如果本地会话存在,则授权令牌合法,则根据本地会话取到授权令牌,直接走步骤S815,否则如果本地会话不存在,则执行步骤S806。发送跳转到认证服务器请求身份认证的请求到浏览器。
S806:请求跳转;
发送跳转到认证服务器请求身份认证的请求到浏览器805。
S807:跳转到认证服务;
在一些实施例中,浏览器805收到跳转请求,浏览器把请求跳转到认证服务模块A806,认证服务模块A判定该请求的cookie中是否有具备认证请求发放的全局身份令牌。全局身份令牌是用户在微服务框架中的全局身份令牌,如果全局身份令牌存在,并判定其合法性,如果合法,则执行步骤S809。如果全局身份令牌不存在或者不合法,则执行步骤S808。
S808:用户身份认证;
在一些实施例中,认证服务模块A806会返回用户一个身份认证的页面,用户提供身份凭证信息,如用户名和密码等,提交到认证服务。认证服务模块A805进行身份凭证校验,校验通过后,生成两个令牌,一个全局身份令牌,一个是发放给EMS微服务A本身的认证令牌。全局身份令牌置于cookie中作为多个服务全局的会话标记,标志着用户的身份。认证令牌是既是EMS微服务A的身份凭证,同时也包含用户的身份信息,附加在步骤S809的跳转URL参数中,以便传递到EMS微服务A。
S809:认证成功,请求跳转;
在一些实施例中,该步骤是步骤S807的响应请求,该请求同样只是个请求浏览器跳转的响应,跳转URL为EMS微服务A在步骤S807中传递url叠加认证令牌。
S810:跳转回原请求;
在一些实施例中,浏览器把执行第S809的跳转URL到EMS微服务模块A。EMS微服务模块A的安全边车代理模块A解析到令牌中的用户信息,可以传递到业务,确定当前访问用户。由于EMS微服务模块A定义了注册了业务权限模型(上述步骤S801-S804),需要执行步骤S811。
S811:请求授权令牌;
安全边车代理模块A传入EMS微服务模块A的认证令牌,到认证服务模块A获取用户的授权令牌
S812:请求授权令牌;
认证服务模块A接收安全边车代理模块A的认证令牌,验证有效后,到授权服务模块为用户申请授权令牌,授权令牌由JWT(JSON Web Token,JSON web令牌)构成,其中携带用户的身份信息。
S813:返回授权令牌;
授权服务模块返回授权令牌给认证服务模块。
S814:返回授权令牌;
认证服务模块把授权令牌返回给安全边车代理模块A。
S815:获取业务权限;
在一些实施例中,安全边车代理模块A持有该授权令牌,同时解析权限模型,得到希望授权的操作或者资源,此时的业务权限也即为请求权限。然后到授权服务模块申请用户在EMS微服务模块A的操作或者资源的权限。此时,授权服务模块返回的可以理解为授权权限。
S816:返回业务权限;
授权服务模块校验授权令牌的合法性,如果合法则返回安全边车代理模块A所申请的操作和资源权限,也即授权权限。如果授权令牌不合法,则返回用户授权失败,需要重新申请认证令牌,再拿认证令牌获取新的合法授权令牌。
S817:获取业务资源;
安全边车代理模块A根据返回的业务权限(授权权限)判定用户请求是否有权限访问。如果有权访问,则把请求和当前用户信息传递到EMS微服务模块A的业务处理模块A8011,处理完毕。
具体的,当用户的请求权限全部包括在授权权限内时,则完全响应用户的业务请求(HTTP请求);当用户的请求权限中存在至少一部分与授权权限无交叉时,则仅响应两者存在交叉的请求,对于超出授权权限的请求权限不予响应;当请求权限与授权权限完全没有交集时,则对该业务请求不予响应。
S818:响应业务请求。
返回对用户的响应。在一些实施例中可以理解为,根据安全边车代理模块A所确定的最终的响应权限来对应获取相应的资源或者进行相应的操作。其中响应权限为授权权限与请求权限所交集的部分权限。
实施例四:
本实施例还提供了一种终端,参见图9所示,其包括处理器901、存储器903及通信总线902,其中:
通信总线902用于实现处理器901和存储器903之间的连接通信;
处理器901用于执行存储器903中存储的一个或者多个计算机程序,以实现上述各实施例中的包络跟踪方法中的至少一个步骤。
实施例五:
本实施例还提供了一种计算机可读存储介质,该计算机可读存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、计算机程序模块或其他数据)的任何方法或技术中实施的易失性或非易失性、可移除或不可移除的介质。计算机可读存储介质包括但不限于RAM(Random Access Memory,随机存取存储器),ROM(Read-Only Memory,只读存储器),EEPROM(Electrically Erasable Programmable read only memory,带电可擦可编程只读存储器)、闪存或其他存储器技术、CD-ROM(Compact Disc Read-Only Memory,光盘只读存储器),数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。
本实施例中的计算机可读存储介质可用于存储一个或者多个计算机程序,其存储的一个或者多个计算机程序可被处理器执行,以实现上述各实施例中的认证方法的至少一个步骤。
本实施例还提供了一种计算机程序(或称计算机软件),该计算机程序可以分布在计算机可读介质上,由可计算装置来执行,以实现上述各实施例中的异常行为判定方法的至少一个步骤;并且在某些情况下,可以采用不同于上述实施例所描述的顺序执行所示出或描述的至少一个步骤。
应当理解的是,在某些情况下,可以采用不同于上述实施例所描述的顺序执行所示出或描述的至少一个步骤。
本实施例还提供了一种计算机程序产品,包括计算机可读装置,该计算机可读装置上存储有如上所示的计算机程序。本实施例中该计算机可读装置可包括如上所示的计算机可读存储介质。
可见,本领域的技术人员应该明白,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件(可以用计算装置可执行的计算机程序代码来实现)、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。
此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、计算机程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。所以,本发明不限制于任何特定的硬件和软件结合。
以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (23)

1.一种认证方法,应用于5G云化网络,其特征在于,包括:
获取用户的HTTP请求;
若所述HTTP请求所对应的本地会话不存在,则对所述用户进行身份认证;
若身份认证成功,则为所述用户颁发认证令牌,所述认证令牌包含所述用户的身份信息和所述微服务的身份凭证;
若所述认证令牌有效,则为所述用户颁发授权令牌,所述授权令牌包括所述用户的身份信息;
根据所述授权令牌所对应的业务权限,响应所述HTTP请求。
2.如权利要求1所述的认证方法,其特征在于,所述若所述HTTP请求所对应的本地会话不存在,则对所述用户进行身份认证包括:
获取所述用户的全局身份令牌,所述全局身份令牌是所述用户在微服务框架中的全局身份令牌;
若所述全局身份令牌有效,则颁发所述认证令牌。
3.如权利要求1所述的认证方法,其特征在于,所述若所述HTTP请求所对应的本地会话不存在,则对所述用户进行身份认证包括:
获取所述用户的全局身份令牌,所述全局身份令牌是所述用户在微服务框架中的全局身份令牌;
若所述全局身份令牌无效或获取不到所述全局身份令牌,则获取所述用户的身份凭证信息,根据所述身份凭证信息进行身份凭证校验;
若校验通过,则颁发所述全局身份令牌和所述认证令牌。
4.如权利要求1所述的认证方法,其特征在于,所述若身份认证成功,则获取所述用户的认证令牌,所述认证令牌包含所述用户的身份信息和所述微服务的身份凭证之后还包括:
若所述认证令牌无效,则所述用户的身份不合法。
5.如权利要求1所述的认证方法,其特征在于,所述根据所述授权令牌所对应的业务权限,响应所述HTTP请求包括:
获取所述HTTP请求所对应的请求权限;
若所述授权令牌有效,则获取所述授权令牌所对应的授权权限;
若所述授权权限包括全部所述请求权限,则响应所述HTTP请求。
6.如权利要求1所述的认证方法,其特征在于,所述根据所述授权令牌所对应的业务权限,响应所述HTTP请求包括:
获取所述HTTP请求所对应的请求权限;
若所述授权令牌有效,则获取所述授权令牌所对应的授权权限;
若所述授权权限包括部分所述请求权限,则响应所述请求权限与所述授权权限一致的部分内容。
7.如权利要求1所述的认证方法,其特征在于,所述若所述认证令牌有效,则为所述用户颁发授权令牌,所述授权令牌包括所述用户的身份信息之后,还包括:
若所述授权令牌无效,则重新进行身份认证。
8.如权利要求1-7任一项所述的认证方法,其特征在于,所述对所述用户进行身份认证包括:
本地服务器对所述用户进行身份认证;
或,
第三方认证服务器对所述用户进行身份认证。
9.如权利要求1-7任一项所述的认证方法,其特征在于,所述获取用户的HTTP请求之前还包括:
在环境中部署授权服务;
在微服务中部署权限模型,所述权限模型文件为业务微服务根据权限模型格式定义,所述权限模型格式由所述授权服务定义;
微服务启动时,安全边车代理解析并加载所述权限模型并向所述授权服务发送所述权限模型的注册请求,所述安全边车代理作为独立的进程部署于所述微服务内;
所述授权服务将所述注册请求转换为可识别的权限定义,并将所述权项定义发送给安全管理员;
所述安全管理员配置并为所述用户分配权限。
10.如权利要求1-7所述的认证方法,其特征在于,所述所述授权服务将所述注册请求转换为可识别的权限定义包括:
所述授权服务将所述注册请求通过树状结构组织起来,转换为安全管理员可识别的权限定义。
11.如权利要求1-7所述的认证方法,其特征在于,若所述HTTP请求所对应的本地会话存在,则响应所述HTTP请求。
12.一种认证装置,应用于5G云化网络,其特征在于,所述认证装置包括:微服务模块,认证服务模块,授权服务模块,所述微服务模块包括安全边车代理模块和业务处理模块,其中:
所述安全边车代理模块,用于获取用户的HTTP请求;
所述认证服务模块,用于若所述HTTP请求所对应的本地会话不存在,则对所述用户进行身份认证;若身份认证成功,则为所述用户颁发认证令牌,所述认证令牌包含所述用户的身份信息和所述微服务的身份凭证;
所述授权服务模块,用于若所述认证令牌有效,则为所述用户颁发授权令牌,所述授权令牌包括所述用户的身份信息;
所述业务处理模块,用于根据所述授权令牌所对应的业务权限,响应所述HTTP请求。
13.如权利要求12所述的认证装置,其特征在于,所述认证服务模块用于,获取所述用户的全局身份令牌,所述全局身份令牌是所述用户在微服务框架中的全局身份令牌;若所述全局身份令牌有效,则颁发所述认证令牌。
14.如权利要求12所述的认证装置,其特征在于,所述认证服务模块用于,获取所述用户的全局身份令牌,所述全局身份令牌是所述用户在微服务框架中的全局身份令牌;若所述全局身份令牌无效或获取不到所述全局身份令牌,则获取所述用户的身份凭证信息,根据所述身份凭证信息进行身份凭证校验;若校验通过,则颁发所述全局身份令牌和所述认证令牌。
15.如权利要求12所述的认证装置,其特征在于,所述业务处理模块用于,
获取所述HTTP请求所对应的请求权限;
若所述授权令牌有效,则获取所述授权令牌所对应的授权权限;
若所述授权权限包括全部所述请求权限,则响应所述HTTP请求。
16.如权利要求12所述的认证装置,其特征在于,所述业务处理模块用于,
获取所述HTTP请求所对应的请求权限;
若所述授权令牌有效,则获取所述授权令牌所对应的授权权限;
若所述授权权限包括部分所述请求权限,则响应所述请求权限与所述授权权限一致的部分内容。
17.如权利要求12所述的认证装置,其特征在于,所述认证服务模块还用于:所述授权服务模块为所述用户颁发授权令牌之后,若所述授权令牌无效,则重新进行身份认证。
18.如权利要求12-17任一项所述的认证装置,其特征在于,所述认证服务模块位于本地服务器,或,第三方认证服务器。
19.如权利要求12-17任一项所述的认证装置,其特征在于,所述认证装置还包括:
部署模块,用于在环境中部署授权服务;在微服务中部署权限模型,所述权限模型文件为业务微服务根据权限模型格式定义,所述权限模型格式由所述授权服务定义;
所述安全边车代理模块还用于,微服务启动时,解析并加载所述权限模型并向所述授权服务发送所述权限模型的注册请求,所述安全边车代理作为独立的进程部署于所述微服务内;
所述授权服务模块还用于,将所述注册请求转换为可识别的权限定义,并将所述权项定义发送给安全管理员;
安全管理员,用于配置并为所述用户分配权限。
20.如权利要求12-17任一项所述的认证装置,其特征在于,所述授权服务模块还用于将所述注册请求转换为可识别的权限定义,并将所述权项定义发送给安全管理员包括:
所述授权服务模块将所述注册请求通过树状结构组织起来,转换为安全管理员可识别的权限定义。
21.如权利要求12-17任一项所述的认证装置,其特征在于,所述业务处理模块还用于,若所述HTTP请求所对应的本地会话存在,则响应所述HTTP请求。
22.一种终端,其特征在于,包括处理器、存储器及通信总线;
所述通信总线用于实现所述处理器和所述存储器之间的连接通信;
所述处理器用于执行所述存储器中存储的一个或者多个程序,以实现如权利要求1-11任一项所述的认证方法的步骤。
23.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1-11任一项所述的认证方法的步骤。
CN201910895259.XA 2019-09-20 2019-09-20 一种认证方法、装置、终端及计算机可读存储介质 Active CN112543169B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910895259.XA CN112543169B (zh) 2019-09-20 2019-09-20 一种认证方法、装置、终端及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910895259.XA CN112543169B (zh) 2019-09-20 2019-09-20 一种认证方法、装置、终端及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112543169A true CN112543169A (zh) 2021-03-23
CN112543169B CN112543169B (zh) 2023-08-08

Family

ID=75012593

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910895259.XA Active CN112543169B (zh) 2019-09-20 2019-09-20 一种认证方法、装置、终端及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112543169B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190609A (zh) * 2021-05-28 2021-07-30 腾讯科技(深圳)有限公司 数据仓库管理方法及系统、装置、存储介质、电子设备
CN113452677A (zh) * 2021-05-28 2021-09-28 济南浪潮数据技术有限公司 一种请求处理方法、系统、设备以及介质
CN114003214A (zh) * 2021-09-15 2022-02-01 北京思特奇信息技术股份有限公司 一种业务流程编排方法以及制备方法、系统、电子设备及存储介质
CN114650142A (zh) * 2022-02-25 2022-06-21 深圳市梦网科技发展有限公司 5g消息身份认证方法、系统及计算机可读存储介质
CN114745431A (zh) * 2022-03-18 2022-07-12 上海道客网络科技有限公司 基于边车技术的无侵入式权限认证方法、系统、介质和设备
CN115941338A (zh) * 2022-12-13 2023-04-07 支付宝(杭州)信息技术有限公司 微服务场景下的会话加密方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150149766A1 (en) * 2013-11-27 2015-05-28 Tata Consultancy Services Limited System and methods for facilitating authentication of an electronic device accessing plurality of mobile applications
US20160259936A1 (en) * 2015-03-05 2016-09-08 Ricoh Co., Ltd. Broker-Based Authentication System Architecture and Design
US20190097802A1 (en) * 2017-09-25 2019-03-28 Citrix Systems, Inc. Generating and Managing a Composite Identity Token for Multi-Service Use
CN109639687A (zh) * 2016-09-14 2019-04-16 甲骨文国际公司 用于提供基于云的身份和访问管理的系统、方法和介质
CN109981561A (zh) * 2019-01-17 2019-07-05 华南理工大学 单体架构系统迁移到微服务架构的用户认证方法
CN110086822A (zh) * 2019-05-07 2019-08-02 北京智芯微电子科技有限公司 面向微服务架构的统一身份认证策略的实现方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150149766A1 (en) * 2013-11-27 2015-05-28 Tata Consultancy Services Limited System and methods for facilitating authentication of an electronic device accessing plurality of mobile applications
US20160259936A1 (en) * 2015-03-05 2016-09-08 Ricoh Co., Ltd. Broker-Based Authentication System Architecture and Design
CN109639687A (zh) * 2016-09-14 2019-04-16 甲骨文国际公司 用于提供基于云的身份和访问管理的系统、方法和介质
US20190097802A1 (en) * 2017-09-25 2019-03-28 Citrix Systems, Inc. Generating and Managing a Composite Identity Token for Multi-Service Use
CN109981561A (zh) * 2019-01-17 2019-07-05 华南理工大学 单体架构系统迁移到微服务架构的用户认证方法
CN110086822A (zh) * 2019-05-07 2019-08-02 北京智芯微电子科技有限公司 面向微服务架构的统一身份认证策略的实现方法及系统

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190609A (zh) * 2021-05-28 2021-07-30 腾讯科技(深圳)有限公司 数据仓库管理方法及系统、装置、存储介质、电子设备
CN113452677A (zh) * 2021-05-28 2021-09-28 济南浪潮数据技术有限公司 一种请求处理方法、系统、设备以及介质
CN113190609B (zh) * 2021-05-28 2023-11-03 腾讯科技(深圳)有限公司 数据仓库管理方法及系统、装置、存储介质、电子设备
CN114003214A (zh) * 2021-09-15 2022-02-01 北京思特奇信息技术股份有限公司 一种业务流程编排方法以及制备方法、系统、电子设备及存储介质
CN114650142A (zh) * 2022-02-25 2022-06-21 深圳市梦网科技发展有限公司 5g消息身份认证方法、系统及计算机可读存储介质
CN114650142B (zh) * 2022-02-25 2024-01-30 深圳市梦网科技发展有限公司 5g消息身份认证方法、系统及计算机可读存储介质
CN114745431A (zh) * 2022-03-18 2022-07-12 上海道客网络科技有限公司 基于边车技术的无侵入式权限认证方法、系统、介质和设备
CN114745431B (zh) * 2022-03-18 2023-09-29 上海道客网络科技有限公司 基于边车技术的无侵入式权限认证方法、系统、介质和设备
CN115941338A (zh) * 2022-12-13 2023-04-07 支付宝(杭州)信息技术有限公司 微服务场景下的会话加密方法和装置

Also Published As

Publication number Publication date
CN112543169B (zh) 2023-08-08

Similar Documents

Publication Publication Date Title
CN112543169B (zh) 一种认证方法、装置、终端及计算机可读存储介质
EP3342125B1 (en) Service layer dynamic authorization
CN107925668B (zh) 资源驱动的动态授权框架
US9787659B2 (en) Techniques for secure access management in virtual environments
US9154504B2 (en) Device apparatus, control method, and relating storage medium
US9065828B2 (en) System for delegation of authority, access management service system, medium, and method for controlling the system for delegation of authority
KR20190097269A (ko) 디지털 인증서 관리 방법 및 장치, 및 전자 디바이스
CN108111473B (zh) 混合云统一管理方法、装置和系统
CN110602088A (zh) 基于区块链的权限管理方法及装置、设备和介质
CN110365684B (zh) 应用集群的访问控制方法、装置和电子设备
US11729472B2 (en) Content access based on location token
CN111526111B (zh) 登录轻应用的控制方法、装置和设备及计算机存储介质
CN112350978A (zh) 一种业务处理方法、系统、设备及存储介质
CN110036387A (zh) 集成同意系统
JP2020035079A (ja) システム、及びデータ処理方法
US20170353451A1 (en) Method and apparatus for issuing a credential for an incident area network
CN108471395A (zh) 实现认证/授权的方法、装置、云计算系统及计算机系统
KR20160018554A (ko) 신뢰 및 비신뢰 플랫폼에 걸쳐 인터넷 액세스가능 애플리케이션 상태를 로밍하는 기법
CN110489957B (zh) 访问请求的管理方法和计算机存储介质
CN114579951A (zh) 业务访问方法、电子设备及存储介质
CN109088890A (zh) 一种身份认证方法、相关装置及系统
CN115378737A (zh) 跨域设备通信信任方法、装置、设备和介质
US8543810B1 (en) Deployment tool and method for managing security lifecycle of a federated web service
KR101803535B1 (ko) 일회용 토큰을 이용한 싱글 사인온 서비스 인증방법
KR102058283B1 (ko) 이종 사물 인터넷 서비스 플랫폼 간의 보안 상호운용성 프레임워크 및 그 장치

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
TR01 Transfer of patent right

Effective date of registration: 20240620

Address after: 611230, No. 99-1, West Section of Hupan Road, Xinglong Street, Tianfu New Area, Chengdu Free Trade Zone, Sichuan Province, China. Attached OL-10-202305003

Patentee after: ZTE Communications (Chengdu) Co.,Ltd.

Country or region after: China

Address before: 518057 Zhongxing building, science and technology south road, Nanshan District hi tech Industrial Park, Guangdong, Shenzhen

Patentee before: ZTE Corp.

Country or region before: China