【思考Spring Security框架的相关问题】

Spring Security框架主要解决了什么问题?

 答:Spring Security框架主要解决了认证与授权相关的问题。

BCrypt算法的主要特点是什么?
答:1.BCrypt算法是用于对密码进行加密处理的,在spring-boot-starter-security中包含了BCryptPasswordEncoder,可以实现编码、验证:
   2.BCrypt算法默认使用了随机盐值,所以,即使使用相同的原文,每次编码产生的密文都是不同的!
   3.BCrypt算法被刻意设计为慢速的,所以,可以非常有限的避免穷举式的暴力破解!

UUID的主要特点是什么?

UUID是全球唯一,从设置上处于时空唯一
答:继承自WebSecurityConfigurerAdapter类,并重写其中的void configure(HttpSecurity http)方法进行配置


http.formLogin()方法的作用是什么?
  答;打开表单验证

配置请求认证的过程中,调用的mvcMatchers()方法的作用是什么?
      答:    匹配某些路径

配置请求认证的过程中,调用的permitAll()方法的作用是什么?
 答:直接许可,即可不需要通过认证即可访问

配置请求认证的过程中,如果某个路径被多次匹配,最终此路径的规则是什么?
 答:以第1次配置的为准

http.csrs().disable()的作用是什么?

答:将防止伪造跨域攻击的机制禁用

UserDetailsService的作用是什么?
 答;   加载用户详情
如果得到AuthenticationManager对象?
答:使用Service处理登录认证
调用AuthenticationManager的authenticate()方法处理认证
可以通过重写配置类中的authenticationManagerBean()方法,并添加@Bean注解来得到
当调用AuthenticationManager对象的authenticate()方法后,会发生什么?此方法的返回结果是什么?
答:,会返回Authentication接口类型的对象,本质上是UsernamePasswordAuthenticationToken类型,此类型中的pricipal属性就是通过认证的用户信息
Spring Security如何判定某个请求是否已经通过认证?
答:基于Spring Security框架的特征“依据SecurityContext中的认证信息来判定当前是否已经通过认证”,
所以,客户端应该在得到JWT之后,携带JWT向服务器端提交请求,而服务器端应该尝试解析此JWT,
并且从中获取用户信息,用于创建认证对象,最后,将认证对象存入到SecurityContext中,剩下的就可以交由框架进行处理了,例如判断是否已经通过认证等。

相关推荐

  1. 思考Spring Security框架相关问题

    2024-07-11 20:50:06       25 阅读
  2. springsecurity框架笔记

    2024-07-11 20:50:06       37 阅读
  3. SpringSecurity解决路径中含有%2F问题

    2024-07-11 20:50:06       36 阅读
  4. 前端学习——关于前端框架思考

    2024-07-11 20:50:06       56 阅读
  5. SpringSecurity安全管理框架-(一)初识SpringSecurity

    2024-07-11 20:50:06       24 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-11 20:50:06       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-11 20:50:06       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-11 20:50:06       58 阅读
  4. Python语言-面向对象

    2024-07-11 20:50:06       69 阅读

热门阅读

  1. 在SpringBoot使用AOP防止接口重复提交

    2024-07-11 20:50:06       22 阅读
  2. Spring AOP的几种实现方式

    2024-07-11 20:50:06       19 阅读
  3. pytorch 模型保存到本地之后,如何继续训练

    2024-07-11 20:50:06       23 阅读
  4. 【Spring】springSecurity使用

    2024-07-11 20:50:06       17 阅读
  5. 力扣682.棒球比赛

    2024-07-11 20:50:06       18 阅读
  6. STM32学习历程(day4)

    2024-07-11 20:50:06       21 阅读
  7. C# 装饰器模式(Decorator Pattern)

    2024-07-11 20:50:06       21 阅读
  8. 代码随想录-DAY⑦-字符串——leetcode 344 | 541 | 151

    2024-07-11 20:50:06       21 阅读
  9. FastAPI+SQLAlchemy数据库连接

    2024-07-11 20:50:06       19 阅读
  10. 关于vue监听数组

    2024-07-11 20:50:06       18 阅读
  11. SQL 自定义函数

    2024-07-11 20:50:06       22 阅读
  12. linux内核访问读写用户层文件方法

    2024-07-11 20:50:06       21 阅读
  13. RK3568平台开发系列讲解(网络篇)netfilter框架

    2024-07-11 20:50:06       19 阅读
  14. Netty服务端接收TCP链接数据

    2024-07-11 20:50:06       16 阅读