[发明专利]一种令牌认证方法和装置有效
申请号: | 201911175840.0 | 申请日: | 2019-11-26 |
公开(公告)号: | CN112953719B | 公开(公告)日: | 2023-03-07 |
发明(设计)人: | 高鹏 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/40 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 李阳;赵迪 |
地址: | 100086 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 令牌 认证 方法 装置 | ||
本发明公开了一种令牌认证方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:获取发送至服务接口的令牌值、服务使用方的应用标识和服务提供方的服务接口标识;将服务使用方的应用标识和服务提供方的服务接口标识作为键,从本地存储的键值对中获取对应的键值;其中,键值对的键包括服务使用方的应用标识和服务提供方的服务接口标识,键值是为服务使用方生成的令牌值;判断拦截到的令牌值与从本地存储中获取的键值是否相同,若拦截到的令牌值与从本地存储中获取的键值相同,则令牌认证成功。该方法通过基于服务使用方的应用标识、服务提供方的服务接口标识和令牌值的认证机制,实现了更细粒度的令牌认证。
技术领域
本发明涉及计算机领域,尤其涉及一种令牌认证方法和装置。
背景技术
微服务架构是一种将单应用程序作为一套小型服务开发的方法,每种应用程序都在其自己的进程中运行,并与轻量级机制(通常是应用程序接口)进行通信。在微服务模式下,可以通过Dubbo框架下的远程过程调用(RPC,Remote Procedure Call)实现不同服务器之间通讯。RPC涉及服务提供方和服务使用方,服务提供方为了限制哪些服务使用方可以调用自身函数或方法,通常会采用令牌(Token)认证机制。即服务提供方为服务使用方创建Token并发送至服务使用方;服务使用方在每次调用服务提供方的函数或方法时,将Token传递给服务提供方;服务提供方验证Token,验证合法后会为服务使用方提供服务。其中,Dubbo为一种开源的分布式RPC,目前被广泛地应用为分布式微服务框架。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
(1)服务提供方为不同服务使用方提供同一个Token,容易造成Token泄露,且Token认证粒度粗糙;另外,当该Token被公开后,Token认证也会失效,导致任何服务使用方都可以在未经授权的情况下调用服务使用方提供的服务;
(2)服务提供方和服务使用方都通过配置文件保存Token,容易造成Token泄露;另外,在修改Token后,由于其保存在配置文件中,需要重启服务器,导致服务中断。
发明内容
有鉴于此,本发明实施例提供一种令牌认证方法和装置,通过基于服务使用方的应用标识、服务提供方的服务接口标识和令牌值的认证机制,限制了可以调用服务接口的服务使用方,以及服务使用方具体可以调用的服务接口,进而实现了更细粒度的令牌认证。
为实现上述目的,根据本发明实施例的一个方面,提供了一种令牌认证方法。
本发明实施例的一种令牌认证方法,包括:获取发送至服务接口的令牌值、服务使用方的应用标识和服务提供方的服务接口标识;将所述服务使用方的应用标识和所述服务提供方的服务接口标识作为键,从本地存储的键值对中获取对应的键值;其中,所述键值对的键包括所述服务使用方的应用标识和所述服务提供方的服务接口标识,所述键值是为所述服务使用方生成的令牌值;判断拦截到的所述令牌值与从本地存储中获取的所述键值是否相同,若拦截到的所述令牌值与从本地存储中获取的所述键值相同,则令牌认证成功。
可选地,为所述服务使用方生成令牌值,包括:接收来自所述服务使用方的令牌生成请求信息,验证所述令牌生成请求信息是否有效;在验证所述令牌生成请求信息有效后,为所述服务使用方生成包括所述服务提供方的应用标识的令牌值,将所述令牌值返回至所述服务使用方。
可选地,所述获取发送至服务接口的令牌值、服务使用方的应用标识和服务提供方的服务接口标识的步骤之前,还包括:将所述令牌值保存到存储服务器的令牌信息中;其中,所述令牌信息包括为所述服务使用方生成的令牌值、所述服务使用方的应用标识和所述服务提供方的服务接口标识;启动调用令牌导出接口的调度线程,以从所述存储服务器中获取与所述服务提供方相对应的令牌信息,之后将所述令牌信息以所述键值对的形式更新到本地存储。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911175840.0/2.html,转载请声明来源钻瓜专利网。