Spring security
2011年05月01日
version: 2.0.1
[b]Http Cookie & Remember me [/b]
客户端: login.jsp 记住用户名,是因为在客户端load login.jsp的过程使用相关的js,读取cookie关于用户名的信息,然后赋值给用户名的field.
服务器端
如果在上一次启动过程中已经使用了rememberme功能 第一次登陆:需要使用SPRING_SECURITY_REMEMBER_ME_COOKIE ="cookie_value",把这个"cookie_value”分解成三部分,第一部分是用户名,第二部分是过期时间,第三部分是密码,当然这些都是使用spring-security自己的加密方法. reference:
org.springframework.security.ui.rememberme. RememberMeProcessingFilter 有人使用过相关用户名登录,那就直接从session根据“cookie_value”得到用户的信息。
[b]Http Basic Authentication: [/b]
客户端: 没有登录
服务器端: 输出类似下面的代码,所有弹出的form对话框,是各个browse提供的
httpResponse.addHeader("WWW-Authenticate", "Basic realm=\"" + realmName + "\""); httpResponse.sendError(HttpServletResponse.SC_UNAU THORIZED, authException.getMessage());
2011年05月01日
version: 2.0.1
[b]Http Cookie & Remember me [/b]
客户端: login.jsp 记住用户名,是因为在客户端load login.jsp的过程使用相关的js,读取cookie关于用户名的信息,然后赋值给用户名的field.
服务器端
如果在上一次启动过程中已经使用了rememberme功能 第一次登陆:需要使用SPRING_SECURITY_REMEMBER_ME_COOKIE ="cookie_value",把这个"cookie_value”分解成三部分,第一部分是用户名,第二部分是过期时间,第三部分是密码,当然这些都是使用spring-security自己的加密方法. reference:
org.springframework.security.ui.rememberme. RememberMeProcessingFilter 有人使用过相关用户名登录,那就直接从session根据“cookie_value”得到用户的信息。
[b]Http Basic Authentication: [/b]
客户端: 没有登录
服务器端: 输出类似下面的代码,所有弹出的form对话框,是各个browse提供的
httpResponse.addHeader("WWW-Authenticate", "Basic realm=\"" + realmName + "\""); httpResponse.sendError(HttpServletResponse.SC_UNAU THORIZED, authException.getMessage());
本文深入探讨了Spring Security的实现机制,包括利用HttpCookie和RememberMe功能进行持久化登录,以及通过HTTP Basic Authentication进行身份验证的过程。详细介绍了如何在客户端加载页面时通过JavaScript读取Cookie中的用户名信息,并在服务器端解析Cookie来获取用户信息,实现持久化登录功能。同时,阐述了HTTP Basic Authentication的工作原理,包括如何在未登录的情况下触发认证对话框,以及服务器端如何响应认证请求。
5万+

被折叠的 条评论
为什么被折叠?



