北大青鸟互联网安全下的Spring Security之初体验


背景介绍
作为千禧年一代 , 我们很多人生活在这个互联网的时代 , 享受着互联网给我们带来的惊喜 , 却经常忽略它给我们带来的一些不好的东西 。
人们常说任何事物的发展都是一把“双刃剑” , 给我们带来便利的同时也会带来一些麻烦;互联网技术也是这样 , 它改变了我们的生活方式 , 比如:以微信为代表的社交方式 , 以支付宝、微信为代表的的支付方式、以滴滴为代表的出行方式等 , 但同时它也让我们的信息更加容易获取和不安全 , 如果有一天微信和支付宝不知道哪根神经搭错了 , 觉得钱不够花 , 俩人一合计 , 把你的购物和社交的信息都放到网上卖了 , 估计你也没办法 , 当然这种假设几乎是不太可能发生的 。 但是互联网的发展确实是存在着一些比较容易被人们忽略的安全问题 。
当年的3Q大战 , 曾经坊间“删库跑路”的传说 , 竟然成了现实;我们暂且不去讨论这些事情本身 , 这背后都传达了一个信息 , 就是安全很重要;如果你要是问我什么是互联网公司(所有公司)中最重要的事情 , 那一定是安全!安全!安全!重要的事情说三遍 。

北大青鸟互联网安全下的Spring Security之初体验
本文插图

作为一名程序猿 , 在Web应用开发中 , 安全永远是产品的最基础需求 , 也是最重的技术 , 想象一下 , 你们熬夜通宵吃泡面花了几个月做了一狂转炫酷吊炸天的网站 , 结果被一个刚入行的毛头小伙儿一下高挂了 , 以后还有何颜面在这一行混 。
在Web开发过程中有一些比较常见的黑客攻击方式 , 比如:XSS(跨站脚本攻击)、CSRF(跨站请求伪造攻击)、SQL注入、命令行注入、DDoS攻击、DNS劫持等 , 据史料记载 , 程序猿这个群体都有一种特质是:在Get到一个新技术的时候一定会去骚扰一下别人的网站去证明自己技术有多牛逼(我也这么干过 , 邪恶脸) 。
没有攻击过别人的网站的黑客 , 不是好程序猿!

北大青鸟互联网安全下的Spring Security之初体验
本文插图

对于Java攻城狮来说 , Web应用的安全的重要性自然是不言而喻的 , 那在JavaWeb开发领域也有很多解决安全性的框架 , 常用的有
Spring Security
Shiro
今天先来了解下SpringSecurity这个安全管理框架
什么是SpringSecurity
SpringSecurity是一个基于Spring的企业应用系统安全访问控制解决方案的安全框架 , 从名字我们也可以看出来它和Spring有着千丝万缕的关系 , 所以它可以和Spring进行无缝集成 , 对于Web应用的安全性 , 如用户认证(是否是合法用户)和用户授权(是否具有某种权限)SpringSecurity都提供了很好支持 , 并且支持自定义 , 给开发人员提供了更大的灵活性 。 今天咱们就来学习一下使用SpringBoot 集成SpringSecurity , 我们都知道SpringBoot也是基于Spring的 , 所以SpringBoot对于SpringSecurity也提供很好的支持 , 通常情况下 , Spring生态内的技术在使用的时候都是比较容易上手的 , 接下里就让我们实战为先吧!

北大青鸟互联网安全下的Spring Security之初体验
本文插图

Spring Boot 集成
SpringSecurity
创建SpringBoot项目工程
首先 , 使用SpringInitializr创建SpringBoot 基础工程 , 然后引入web依赖 。 接着我们就需要引入SpringSecurity了 , 引入SpringSecurity依赖有两种方式:
在工程的pom文件中加入Spring Security依赖 。
org.springframework.boot
spring-boot-starter-security
使用Spring Initializr在创建项目的时直接勾选Spring Security , 项目建成后会自动在pom文件加入Spring Security的依赖 。


推荐阅读