0 0

spring security中,如何把登陆页面的参数传递到UserDetailsService中3

由于一个需求的问题,需要根据不同的登陆页面来调用不同的数据库来校验会员身份。不同的登陆页面使用EntryPoint就可以解决了,但是对用户校验的时候,我想根据登录表单的一个隐藏域的值,来区分不同的用户身份,进而在UserDetailsService中来调用不同额数据库进行校验,我看了可以在AuthenticationProcessingFilter 中的attemptAuthentication中可以获取到这个值,但是不知道怎么传递给UserDetailsService,想请教一下这个问题?

2012年8月07日 13:21

1个答案 按时间排序 按投票排序

0 0

采纳的答案

这个需求应该扩展spring security。主要扩展以下类:
UsernamePasswordAuthenticationFilter类的attemptAuthentication方法,主要获取request传递的参数;
UsernamePasswordAuthenticationToken类,主要用于增加认证所用到的额外参数;
DaoAuthenticationProvider类的retrieveUser方法,主要把UsernamePasswordAuthenticationToken扩展类的额外参数传递给UserDetailsService;
UserDetailsService实现类的loadUserByUsername方法。主用使用额外参数及账号、密码等多个参数进行验证。

当然,扩展完成后,需要对spring security的配置文件进行修改。修改的主要目标就是替换掉原来的bean。如果我说的还不够明确,可参考本人博客专栏:
http://dead-knight.iteye.com/category/220917

2012年8月07日 19:36

相关推荐

    springSecurity 实现传参

    在这个场景中,我们关注的是如何使用Spring Security实现登录验证以及在登录过程中传递参数,特别是记录并返回用户登录前的页面。我们将深入探讨这个过程,并结合MySQL数据库的使用。 首先,让我们了解Spring ...

    spring-security实现自定义登录认证.rar

    如果没有,它会将用户重定向到登录页面。一旦用户成功登录,Spring Security会创建一个SecurityContext,其中包含Authentication对象,该对象存储了用户的身份信息。 在Spring Security中,自定义登录认证通常涉及...

    Springboot整合Spring security+Oauth2+JWT搭建认证服务器,网关,微服务之间权限认证及授权

    4. **整合Spring Security与OAuth2**:在Spring Boot中,我们可以使用`spring-security-oauth2-autoconfigure`库来简化OAuth2的配置。通过设置`@EnableAuthorizationServer`和`@EnableResourceServer`注解,分别启动...

    SpringSecurity.pdf

    在Spring Security中,`Authentication`对象承载认证信息,而`UserDetailsService`接口用于获取用户信息,返回一个`UserDetails`对象,该对象表示用户信息的实体。密码的加密和验证则通过`PasswordEncoder`接口及其...

    java+spring-boot-jwt + spring security集成实战项目.zip

    在本项目中,我们主要探讨的是如何将Java与Spring Boot框架相结合,利用JWT(JSON Web Token)和Spring Security来构建一个安全的Web应用程序。这个实战项目涵盖了从基础概念到实际应用的完整流程,旨在帮助开发者...

    SpringBoot集成Spring Security登录管理 添加 session 共享【完整源码+数据库】

    我们将基于给定的标签——SpringBoot、SpringSecurity、mysql、session共享和idea来构建一个完整的示例。 首先,SpringBoot是一个轻量级的Java框架,它简化了创建独立的、生产级别的基于Spring的应用程序。通过内置...

    Spring Security在标准登录表单中添加一个额外的字段

    Spring Security在标准登录表单中添加一个额外的字段 在本文中,我们将探讨如何在Spring Security的标准登录表单中添加一个额外的字段。我们将重点关注两种不同的方法,以展示框架的多功能性以及我们可以使用它的...

    spring security 3.0x remember-me 免登陆

    其中,"key"是安全密钥,用于防止中间人攻击,userDetailsService是Spring Security的UserDetailsService接口的实现,用于查找用户信息。 3. **配置RememberMeAuthenticationProvider**:在Spring Security的配置...

    Spring Security开发文档.docx

    2. 如果用户未登录,Spring Security 将重定向到预先配置的登录页面。 3. 用户提交登录信息,这些信息被传递给 `AuthenticationManager` 进行验证。 4. 验证成功后,Spring Security 创建一个 `Authentication` 对象...

    ssh项目添加spring Security

    在这个项目中,我们将探讨如何将Spring Security集成到SSH项目中,实现基于数据库验证的用户授权登录功能。 首先,Spring Security是Spring生态体系中的一个核心组件,主要用于提供认证和授权服务,确保Web应用的...

    spring security 源文件

    Spring Security 是一个强大的安全框架,用于为Java应用提供身份验证和授权服务。它是一个高度可配置的库,适用于各种类型的Web应用程序,从简单的REST服务到复杂的单页应用。本篇文章将深入探讨Spring Security的...

    spring security 实现动态权限和短信验证码登录

    在这个场景中,我们探讨的是如何利用Spring Security实现动态权限管理和短信验证码登录,并结合JWT(JSON Web Tokens)和Redis来提升系统的效率和安全性。 首先,让我们深入了解Spring Security的基础。Spring ...

    spring security3.1.4

    Spring Security 是一个强大的Java安全框架,用于保护基于Spring的应用程序。...通过`spring-security-3.1.4.RELEASE-dist`压缩包,你可以获取到完整的文档、源代码和相关的示例项目,以便学习和开发。

    SpringSecurity - 随笔

    SpringSecurity是Java开发领域中一个强大的安全框架,用于构建安全的Web应用。它提供了一整套的认证和授权机制,确保只有经过验证的用户才能访问特定的资源。本随笔将深入探讨SpringSecurity的核心概念、配置以及...

    SpringSecurity之JWT实现token认证和授权.zip

    在这个主题中,我们将深入探讨如何使用Spring Security结合JSON Web Token (JWT) 实现token认证和授权。 JWT 是一种轻量级的、安全的、无状态的身份验证机制,常用于API的鉴权。它通过在客户端和服务器之间传递令牌...

    基于springboot+springSecurity+jwt实现的基于token的权限管理

    这个基于"springboot+springSecurity+jwt实现的基于token的权限管理"的示例项目,旨在帮助开发者理解和实践这些技术。 首先,Spring Boot是Spring框架的简化版,它提供了快速构建和部署应用程序的能力。通过自动...

    SpringBoot整合Spring Security.docx

    Spring Security 是一个强大的身份验证和访问控制框架,适用于构建安全的 Java 应用程序,尤其在Spring Boot中,集成Spring Security能简化安全配置,提供一套完整的安全解决方案。它包括认证和授权两个主要方面,...

    基于springboot+springSecurity+jwt实现的基于token的权限管理的一个demo,适合新手

    本示例项目"基于springboot+springSecurity+jwt实现的基于token的权限管理的一个demo"为初学者提供了一个很好的学习平台,让我们深入探讨其中涉及的关键技术点。 首先,Spring Boot是一个流行的Java框架,用于简化...

    spring-security-3.1.0.RELEASE.zip

    它是Spring生态系统的一部分,旨在无缝集成到Spring应用程序中,提供一套全面的安全解决方案。Spring Security 3.1.0.RELEASE是该框架的一个版本,发布于2011年,尽管现在已经有了更新的版本,但理解其核心概念对于...

    学成在线 - Spring Security Oauth2 JWT 资料.zip

    在Spring Security中,用户信息通常存储在数据库中,并通过UserDetailsService接口进行访问。 2. `publickey.txt`:这个文件可能包含了OAuth2 JWT的公钥。在JWT验证过程中,服务器使用公钥来解密签名,验证令牌的...

Global site tag (gtag.js) - Google Analytics