[发明专利]一种前后端分离系统的用户安全认证方法、装置及存储介质在审
申请号: | 202011409498.9 | 申请日: | 2020-12-04 |
公开(公告)号: | CN112600674A | 公开(公告)日: | 2021-04-02 |
发明(设计)人: | 朱洪区 | 申请(专利权)人: | 中国农业银行股份有限公司深圳市分行 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L29/06 |
代理公司: | 广东广和律师事务所 44298 | 代理人: | 董红海 |
地址: | 518001 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 后端 分离 系统 用户 安全 认证 方法 装置 存储 介质 | ||
本发明提供了一种关于前后端分离系统的用户安全认证方法、装置及存储介质,其特征在于采用如下步骤实现用户认证:将用户登录信息发送给服务器;服务器验证正确性,如正确,则使用密钥创建该客户端对应的鉴权令牌JWT;服务器将鉴权令牌JWT返回给客户端;客户端接收到JW后,并存储,当用户需要访问一个受保护的资源时,需要在发给服务器的请求头中携带JWT信息,后再发送给服务器;先验证接收的JWT的签名,从JWT中获取客户的用户信息,并判断用户的正确性;服务器验证完用户的正确性后,如果正确则响应客户端的请求,并将响应发送给客户端。解决跨站点请求伪造CRSF的安全问题;提高了互联网应用接口调用的安全性,有效管控互联网项目风险。
技术领域
本发明涉及计算机网络应用领域,更具体的说涉及一种前后端分离系统的用户安全认证方法、装置及存储介质。
背景技术
前后端分离一种架构上的概念。在传统的web架构中,比如经典模型视图控制器MVC(Model-View-Controller),会分数据层、逻辑层、视图层。在前后端分离的架构中,前端和后端是分开的,分别在不同的工程中。前端有专门的前端开发人员来进行开发、测试,后端则有后端开发人员来进行开发、测试,他们之间通过API来交互。由于HTTP协定是不储存状态的,所以为了保证系统安全,我们就需要验证用户否处于登录状态。Session-Cookie方式是我们开发web应用时最常用的认证方式。它一般按如下方式进行认证:图1是常规的认证系统框图:
1.用户浏览器向服务器发起认证请求,将用户名和密码发送给服务器。
2.服务器认证用户名和密码,若通过则创建一个session对话(session是另一种记录服务器和客户端会话状态的机制,是基于cookie实现的,session存储在服务器端,sessionId会被存储到客户端的cookie中。),并将用户信息保存到session中。session的信息可以是保存到服务器文件、共享外部存储、数据库等存储中,等下次请求时查询验证使用。
3.服务器会将该session的唯一标识ID,返回给用户浏览器,并保存在cookie(cookie是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上。)中。
4.用户请求其他页面时,浏览器会自动将用户的cookie携带上,并发起接口请求,服务端收到请求后,从cookie解析出sessionID,根据这个sessionID查询登录后并保存好的session,若有则说明用户已登录,放行。
Session-Cookie方式认证所显露的问题:
可扩展性:Session-Cookie是有状态的服务,在服务端保存了session的信息。当服务端扩容的时候,需要考虑到session的共享问题。用户认证之后,服务端做认证记录,如果认证的记录被保存在内存中的话,这意味着用户下次请求还必须要请求在这台服务器上,这样才能拿到授权的资源,这样在分布式的应用上,相应的限制了负载均衡器的能力。这也意味着限制了应用的扩展能力。Session-Cookie方式基于Cookie,也就是必须是浏览器或支持Cookie的浏览器封装的框架,纯移动端无法使用。
安全性:Web开发中常见的两个安全问题XSS(跨站点脚本攻击)和CRSF(跨站点请求伪造)。前者利用注入脚本到用户认证网站上,执行恶意脚本代码。后者则利用浏览器访问后端自动携带cookie的机制,来跨站伪造请求。XSS只要我们对注入端,进行过滤、转义就能解决,CRSF是我们重点关注的。在Session-Cookie认证方式中,因为把SessionID保存在了Cookie中,很容易引起CRSF攻击。
性能:Session-Cookie方案,因为后端服务存储了Session信息,在认证的时候需要查询,当有大量认证的时候是非常耗费资源的。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国农业银行股份有限公司深圳市分行,未经中国农业银行股份有限公司深圳市分行许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011409498.9/2.html,转载请声明来源钻瓜专利网。