`
earthsky
  • 浏览: 7203 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

怎样从HttpSession中得到acegi登录的用户名称和密码?

阅读更多
用户信息

     默认的Acegi登录成功后会在Session中放下面两个内容:

     ACEGI_SECURITY_CONTEXT--------org.acegisecurity.context.SecurityContextImpl@fdd91091: Authentication: org.acegisecurity.providers.UsernamePasswordAuthenticationToken@fdd91091: Username: org.acegisecurity.userdetails.User@fdcb3700: Username: acegi; Password: [PROTECTED]; Enabled: true; AccountNonExpired: true; credentialsNonExpired: true; AccountNonLocked: true; Granted Authorities: USER; Password: [PROTECTED]; Authenticated: true; Details: org.acegisecurity.ui.WebAuthenticationDetails@fffc7f0c: RemoteIpAddress: 127.0.0.1; SessionId: BBBC69F664334F9E4CD0797BC1209DDB; Granted Authorities: USER

 

ACEGI_SECURITY_LAST_USERNAME--------acegi


通过HttpSesssion可以得到acegi登录的用户的名字和密码
HttpSession session=request.getSession();
// 得到用户名称
String userName=session.getAttribute("ACEGI_SECURITY_LAST_USERNAME");
// 得到用户的密码
SecurityContextImpl securityContext=(SecurityContextImpl)session.getAttribute("ACEGI_SECURITY_CONTEXT");
Authentication authentication=securityContext.getAuthentication();
String password=authentication.getCredentials();
分享到:
评论
2 楼 liang.zeng 2008-07-08  
   用户信息不是一个实体类吗?
(UserInfo)org.acegisecurity.context.SecurityContextHolder
.getContext().getAuthentication().getPrincipal();
1 楼 fch0402 2008-05-21  
可以通过配置一个安全信息传播的Filter,然后使用request.getRemoteUser()得到用户信息——类似于标准的JAAS的做法。

相关推荐

    session存用户名密码实现用户登录和退出

    特别是在用户登录和退出的过程中,Session扮演了关键角色。本篇文章将详细介绍如何利用Session存储用户名和密码,以实现用户登录和退出功能。 首先,我们需要理解Session的基本概念。Session是在服务器端存储的一种...

    WebSocket区分不同客户端两种方法(HttpSession和@PathParam)

    首先,需要实现用户登录功能,并在登录成功后将用户信息存储到`HttpSession`中。例如: ```java if (Objects.equals(userDetail.getUserDetailPassword(), userPassword)) { // 如果当前用户登录成功,则将user...

    httpsession实现验证码登录小实例

    在本文中,我们将深入探讨如何使用Java编程语言和HttpSession接口来实现一个简单的验证码登录系统。验证码(CAPTCHA)是一种防止恶意机器人或自动化程序非法访问网站的安全机制,它要求用户输入图片上显示的一组随机...

    httpSession

    在Web应用程序中,当用户打开浏览器访问网站并登录后,服务器会为该用户创建一个session对象,并将用户的一些信息(如用户名、购物车等)存储在这个对象中。通过在HTTP请求头中添加一个名为JSESSIONID的Cookie,...

    HttpSession的使用

    当你需要在用户的不同请求之间保持某些数据时,例如购物车内容或用户登录状态,`HttpSession` 就派上用场了。 ### 1. HttpSession的创建与获取 每当用户访问网站并进行登录或其他需要保存状态的操作时,服务器会...

    acegi权限控制学习笔记

    总结来说,Acegi权限控制提供了丰富的功能,包括事件监听机制来处理用户登录等关键操作,以及通过`httpSessionContextIntegrationFilter`保持用户会话的安全上下文。这些机制帮助开发者构建出安全且用户体验良好的...

    JSP登陆验证 实现JSP用户名 密码 验证码验证登陆

    在StudentLoginServlet中,你需要从请求参数中获取用户名和密码,然后与数据库中存储的用户信息进行比较。这通常涉及SQL查询,例如,从用户表中查找匹配的用户名和密码。验证成功后,可以设置会话属性以标识用户已...

    spring websocket获取httpsession

    3. 获取HttpSession:在WebSocket消息处理方法中,我们可以利用`@Principal`注解获取当前登录用户的信息,然后通过`RequestContextHolder`获取`ServletRequestAttributes`,进一步获取HttpSession。 4. 客户端配置...

    判断用户登录和注册验证

    首先,创建一个Servlet接收用户的登录请求,然后通过HttpServletRequest对象获取POST请求中传递的用户名和密码。接着,使用JDBC连接到数据库,执行SQL查询来检查这些凭证是否有效。 例如,以下是一个简单的Servlet...

    jsp简单用户登录和注册

    5. **用户验证**:在登录过程中,服务器需要验证用户名和密码。这可能涉及到数据库查询,例如使用SQL语句检查用户凭据是否匹配。 6. **会话管理**:成功登录后,为了保持用户状态,可以使用JSP的内置对象`...

    JSP+JavaBean+Servlet技术实现某网站用户注册和登录功能( 源码打包)

    4. **会话管理**:使用JavaBean管理用户的会话状态,例如在用户登录后,将用户信息存储在HttpSession对象中,以便在用户浏览网站时保持登录状态。 5. **错误处理**:通过异常处理和自定义错误页面,确保在出现错误...

    Jsp+Servlet+Cookie实现记住密码,自动登录,防止表单提交,记录登录次数

    在用户登录时,如果用户勾选了“记住我”的选项,系统会将用户的用户名或加密后的密码存储在客户端的Cookie中。Cookie是一种小型文本文件,由服务器发送到用户的浏览器并存储在那里。在用户下次访问网站时,浏览器会...

    使用servlet实现简单用户登录

    - 使用HttpSession对象,Servlet可以在用户登录后设置session属性,例如`session.setAttribute("username", username)`,这样在用户浏览其他受保护的页面时,可以检查session中的用户信息,以保持登录状态。...

    会话中用户登录记录

    在这个场景中,"会话中用户登录记录"涉及了几个关键知识点: 1. **HTTP无状态性**:HTTP协议本身是无状态的,这意味着服务器不会记住之前与客户端交互的信息。因此,为了在用户多次请求之间保持状态,我们需要使用...

    servlet实现用户,注册,登录功能

    三、用户登录 1. 验证流程:Servlet接收到登录请求时,会检查提交的用户名和密码是否匹配数据库中的记录。这通常涉及到查询操作,比较输入的密码与数据库中对应用户记录的密码(在存储时已加密)。 2. 会话管理:...

    jsp用户登录

    JSP用户登录系统是一个基础且重要的功能,它允许用户通过输入凭证(如用户名和密码)来验证身份,从而访问特定的受保护资源。在此,我们将深入探讨如何构建一个基于JSP的用户登录系统,并结合Excel存储用户信息。 *...

    java session判断用户登录时间和点击页面次数

    在Java Web开发中,Session是服务器用来跟踪用户状态的一种机制,尤其在用户登录验证和页面交互统计方面。本文将深入探讨如何使用Servlet和Session来实现用户登录时间和点击页面次数的记录。 首先,让我们理解...

    用户重复登录问题

    在现代网络应用中,用户登录安全性和用户体验是非常重要的。一个常见的问题是:如何防止用户在一个客户端登录后,在另一个客户端进行重复登录?通常情况下,为了保障账号安全,我们需要在用户第一次登录后阻止其在...

    Servlet简单实现用户登录等功能.zip

    本项目"Servlet简单实现用户登录等功能.zip"旨在展示如何使用Servlet来实现基本的用户登录、修改密码和注销功能。我们将探讨以下关键知识点: 1. **Servlet生命周期**: Servlet的生命周期包括加载、初始化、服务...

    利用Session完成用户登录功能

    本实验主要针对Web开发技术中的用户登录功能进行实践,特别是如何使用Session管理用户状态。Session是Web应用中一种常用的技术手段,用于跟踪用户在一个会话期间的行为。在Java Web开发中,Session由服务器端维护,...

Global site tag (gtag.js) - Google Analytics