前后端分离之SpringBoot项目Token认证

写在开始

有人说,爱上一座城,是因为城中住着某个喜欢的人。其实不然,爱上一座城,也许是为城里的一道生动风景,为一段青梅往事,为一座熟悉老宅。或许,仅仅为的只是这座城。就像爱上一个人,有时候不需要任何理由,没有前因,无关风月,只是爱了。 —林徽因

前段时间,大体了解了一下前后端分离之Vue项目构建测试打包发布,并简单的记录了一下。

其实,如果单纯的前后端分离项目,大可不必使用Token,原始的session就可以解决问题,当然前提是要在一个域(域名、IP、端口必须保持一致)下,前后端开发人员可使用Nginx代理服务器进行测试。

但是在微服务的大环境下,某些原因服务的细化可能不会在一个域下,这时候就需要客户端自己保存加密凭证,后台只需要做简单的解密认证。

准备环境

既然微服务这么流行,这里我们还是选择SpringBoot作为测试案例,使用JWT(Json Web Token)的授权方式。

jwt.jpg

项目涉及:

  • SpringBoot的使用
  • JWT加密解密
  • Cors跨域访问配置
  • Interceptor拦截器配置

代码什么的就不在这里罗列了,详细见:前后端分离微服务认证之JWT

总结

优点

  • 因为Token是以JSON加密的形式保存在客户端的,所以JWT是跨语言的,原则上任何web形式都支持。
  • 不需要在服务端保存会话信息,特别适用于分布式微服务。

注意事项

  • 切记保护好密钥,这个是最基本的。
  • 如果有条件,尽量使用https安全协议。
  • Token信息尽可能的少,只保存必须的就可以。
  • 退出操作一定要考虑好,如果Token被盗用,一定要做好服务端的校验。
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/280698

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。