Spring Security 之 表单登录

表单登录

Spring Security提供了支持通过HTML表单提供用户名和密码。本节详细介绍了Spring Security中表单身份验证的工作原理。

本节将介绍Spring Security中的基于表单的登录工作原理。首先,我们将看到用户如何被重定向到登录表单。

Spring Security 之 表单登录_第1张图片

第1步,用户首先对其未经授权的资源(/private)发出未经身份验证的请求。

第2步,Spring Security的AuthorizationFilter通过抛出AccessDeniedException指示拒绝未经身份验证的请求。

第3步,由于用户未经身份验证,ExceptionTranslationFilter启动身份验证并使用配置的AuthenticationEntryPoint向登录页面发送重定向。在大多数情况下,AuthenticationEntryPoint是LoginUrlAuthenticationEntryPoint的实例。

第4步,浏览器请求被重定向到的登录页面。

第5步,应用程序内部的某个部分必须提供登录页面。

当用户名和密码被提交时,UsernamePasswordAuthenticationFilter对用户名和密码进行身份验证。UsernamePasswordAuthenticationFilter扩展了AbstractAuthenticationProcessingFilter,因此以下图应该看起来非常相似:

你可能感兴趣的:(Spring,Security,spring,java,后端)