Spring Security 3-如何自定义用户名/密码参数?

2023-11-27

使用时如何自定义 UsernamePasswordAuthenticationFilter usernameParameter (j_username) 和 passwordParameter (j_password) 属性<http ... />Spring Security 3 命名空间?这是我的理解<http ... />创建过滤器,但我不知道如何自定义它。


这是我根据 axtavt 的建议创建的解决方案:

弹簧配置:

<beans:bean id="userPassAuthFilterBeanPostProcessor"
    class="com.my.package.UserPassAuthFilterBeanPostProcessor">
    <beans:property name="usernameParameter" value="username" />
    <beans:property name="passwordParameter" value="password" />
</beans:bean>

Java类:

package com.my.package;

import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.security.web.authentication.
    UsernamePasswordAuthenticationFilter;

public class UserPassAuthFilterBeanPostProcessor implements BeanPostProcessor {

    private String usernameParameter;
    private String passwordParameter;

    @Override
    public final Object postProcessAfterInitialization(final Object bean,
        final String beanName) {
        return bean;
    }

    @Override
    public final Object postProcessBeforeInitialization(final Object bean,
        final String beanName) {
        if (bean instanceof UsernamePasswordAuthenticationFilter) {
            final UsernamePasswordAuthenticationFilter filter =
                (UsernamePasswordAuthenticationFilter) bean;
            filter.setUsernameParameter(getUsernameParameter());
            filter.setPasswordParameter(getPasswordParameter());
        }

        return bean;
    }

    public final void setUsernameParameter(final String usernameParameter) {
        this.usernameParameter = usernameParameter;
    }

    public final String getUsernameParameter() {
        return usernameParameter;
    }

    public final void setPasswordParameter(final String passwordParameter) {
        this.passwordParameter = passwordParameter;
    }

    public final String getPasswordParameter() {
        return passwordParameter;
    }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring Security 3-如何自定义用户名/密码参数? 的相关文章

  • CompletableFuture 强制重用线程

    我正在批判性地利用 CompletableFuture delayedExecutor 1 TimeUnit MILLISECONDS execute gt 根据我在网上阅读的内容 每次调用都使用一个新线程是很常见的 我想知道是否有办法重用
  • Java 1.6 和 Desktop.open() 的问题

    我一直在使用 Destop open 在 Windows 计算机 Vista 和 XP 上启动 pdf 查看器 并且大多数都工作得很好 但是 在一台 XP 计算机上 该调用不起作用 只是返回而不抛出任何异常 并且查看器不会启动 据我所知 在
  • 正则表达式忽略引号之间的文本

    我有一个正则表达式 它是 s 这用于分割字符串 但我不想让它分开 如果它在引号中 我不会使用 split 而是使用 Pattern 和 Matcher A demo import java util regex Matcher import
  • Spring Boot:将系统属性传递给 Maven

    I tried mvn Dspring profiles active dev spring boot run 但这并不影响我的默认配置 我用谷歌搜索了一下 发现 mvn DargLine Dspring profiles active d
  • JOOQ初始化DAO最佳方法

    我想知道初始化 JOOQ 生成 DAO 的最佳实践 现在 我使用以下方法来初始化 JOOQ 生成的 DAO 在以下情况下 Student Dao 是 JOOQ 生成的 public class ExtendedStudentDAO exte
  • IntelliJ,无法启动简单的 Web 应用程序:无法 ping 本地主机上的服务器:1099

    我正在尝试按照本教程在 IntelliJ 中制作一个简单的 Web 应用程序 http wiki jetbrains net intellij Creating a simple Web application for Tomcat in
  • Spring 在使用 JUnit 的单元测试中不自动装配

    我使用 JUnit 测试以下 DAO Repository public class MyDao Autowired private SessionFactory sessionFactory Other stuff here 正如您所看到
  • 请求的操作:声明您的广告 ID 权限

    今天我收到这封电子邮件 去年 7 月 我们宣布了广告政策变更 以帮助加强 安全和隐私 我们对使用的标识符添加了新的限制 针对儿童的应用程序 当用户选择删除他们的 广告 ID 以选择退出个性化广告 如果满足以下条件 开发人员将收到一串零而不是
  • MyBatis 遵循 JPA 吗?

    作为我的第一个 ORM 我已经使用 myBatis 几个月了 现在我正在尝试学习其他东西 例如 Hibernate JPA 起初很难理解 Hibernate 和 JPA 之间的区别 经过几分钟的研究 我明白 JPA 只是一个规范 Hiber
  • 我在这个正则表达式中做错了什么?

    我正在做一个关于正则表达式的学校作业 我先解释一下 我必须编写一个正则表达式来检查 URL 我必须检查的条件是 URL 是 http s 还是 ftp s 域名是 nl 还是 edu 至少有一个第三级域名 但如果该域名以 万维网 必须有一个
  • Java 8 元空间垃圾收集

    我正在运行的 java 进程在运行的第一个小时左右始终表现良好 然而 性能会迅速下降 在分析时 我发现元空间垃圾收集相当频繁地发生 直到小时标记 然后失去控制 我相当确定我能够使用 XX MaxMetaspaceSize 选项来解决此问题
  • 如何安装“Android 支持库”以将 Gluon Mobile 应用程序部署到 Android?

    我想使用 Gluon Mobile 框架开发一个 Android 应用程序 我在 Netbeans IDE 中安装了 Gluon 插件 创建了一个示例项目并成功构建了它 现在我想将该应用程序部署到 Android 设备 我指的是在线文档 1
  • Python Blowfish 加密

    由于我对 Java 的了解不完整 我正在努力将此加密代码转换为 Python 代码 两者应该得到完全相同的结果 帮助将不胜感激 Java函数 import javax crypto Cipher import javax crypto sp
  • 使用Java 8开发的程序可以在Java 7上运行吗?

    我有点困惑 Oracle 表示 Java 8 与 Java 7 向后 高度兼容 但是 Java 8 程序有什么可能性可以在 Java 7 上成功运行 SE EE 呢 如果第一点为真 Java 8 应用程序将在 Java 7 服务器支持上部署
  • hibernate中映射到数据库表的bean的默认继承策略是什么?

    这是我在 stackoverflow 中的第一个查询 我想我正在提供所有必要的输入 我已经提供了我的 Java bean 和数据库表详细信息如下 Java Bean 类 import java sql Timestamp import ja
  • 在 OpenCV 中将 `BufferedImage` 转换为 `Mat`

    我怎样才能转换BufferedImage to a Mat in OpenCV 我正在使用 JAVA 包装器OpenCV not JavaCV 由于我是新手OpenCV我在理解如何做时遇到一些问题Mat works 我想做这样的事情 基于
  • JavaFX ComboBox - 显示文本但在选择时返回 ID

    我有一个包含机场的数据库表 每个机场都有一个名称和一个 ID 在 JavaFX 中我有一个表单 其中包含ComboBox 组合框需要显示所有机场名称 并且在提交表单时需要将机场的 ID 插入数据库 而不是其名称 但我并没有真正弄清楚解决方案
  • Spring:了解 @SessionAttributes 与 @Scope('session') 之间的区别

    Case 1 Scope Session public class Employee Controller public class EmployeeController Autowired private Employee employe
  • 在基于 Spring 的 Tomcat 应用程序中使用 c3p0 连接池

    我有一个基于 Spring 的 Web 应用程序在 tomcat 6 下运行 现在 我想使用 c3p0 连接池而不是 tomcat 的默认 DBCP 所以 从c3p0帮助 http www mchange com projects c3p0
  • 如何更改 Java 中不同类的变量?

    如何更改 Java 中不同类的变量 我正在尝试更改另一个类中的变量 然后在第一个类中使用它 我在 First 类中创建了一个变量 并将其值设置为 1 然后我尝试在 Second 类中将同一变量的值更改为 2 但是当我在 First 类中使用

随机推荐

  • 删除 Chrome/IE9 中的图像边框

    我试图摆脱 Chrome 和 IE9 中每个图像出现的细边框 我有这个CSS outline none border none 使用 jQuery 我还添加了border 0每个图像标签上的属性 但如图所示的边框仍然出现 有什么解决办法吗
  • 实现具有独立行高的多列ListView

    我想创建一个包含大约 200 个 ImageView 随机高度 的列表 并以 拼贴 方式使用以下布局 通常我会在 ListView 中执行此操作 以获得通过使用适配器获得的性能 但因为我希望图像按列显示 并且具有不同的高度 参见图片Exam
  • 如何使用 FPDF/FPDI 获得精确修改后的 PDF?

    我有一个修改 PDF 并向其中添加图像的任务 为此我使用了 FPDF 和 FPDI 库 其操作代码如下
  • 访问 jenkins 共享库代码中的环境变量

    当我使用新的共享库时 我无法访问任何直接由 Jenkinsfile 或通过 var groovy 脚本执行的 src 类的环境变量 即使我添加了这个问题仍然存在withEnv到 var groovy 脚本 让环境变量传播到 jenkins
  • 在 10 分钟内触发活动的简单 AlarmManager 示例

    我发现了很多与此类似的问题 但至少我认为它们太复杂 代码太多 这件事能用几行代码完成吗 我想在 10 比方说 分钟内启动一项活动 仅此而已 谢谢 将闹钟设置为 10 分钟 比方说 使用此代码 AlarmManager alarmMgr Al
  • 如何改变 dplyr 中的 for 循环

    我想为数据框中的列创建多个值范围的滞后变量 我的代码可以成功执行我想要的操作 但无法根据我的需要进行扩展 数百次迭代 我的下面的代码成功地完成了我想要的操作 但无法根据我的需要进行扩展 数百次迭代 Lake Lag lt Lake Cham
  • SparkSQL注册表时MissingRequirementError

    我是 Scala 和 Apache Spark 的新手 我正在尝试使用 Spark SQL 克隆后repo我通过输入启动了 Spark shellbin spark shell并运行以下命令 val sqlContext new org a
  • C free() 例程和递增数组指针

    会不会free 如果我动态分配一个数组 然后传递一个指向数组中间的指针 而不是初始指针 那么常规工作会怎样 例子 int array malloc 10 sizeof array if array array 5 adjusting the
  • 使用 Spring Boot 应用程序启用 HTTP 严格传输安全 (HSTS)

    我已经关注了这篇文章https docs spring io spring security site docs 4 0 2 RELEASE reference html headers html headers hsts在我的 Sprin
  • JavaScript location.reload() 正在丢失发布数据

    我正在尝试使用java脚本重新加载页面 页面重新加载 但页面中的帖子数据未加载 帖子数据被删除 而页面重新加载任何人都可以帮助我 function currencychange xxx setTimeout delay 2000 funct
  • 在 Paul Graham 的 ANSI Common Lisp 中编写示例

    谁能解释一下 Paul Graham 的 ANSI Common Lisp 第 110 页中的示例吗 该示例尝试解释使用 rest 和 lambda 来创建函数式编程工具 其中之一是组成函数参数的函数 我找不到任何解释它是如何工作的 代码如
  • 确定操作栏是否拆分

    我有一个MapView带有由 ActionBarSherlock 提供支持的操作栏 操作栏既可以分割 在 窄 屏幕上 也可以覆盖 半透明 android windowActionBarOverlay 为 true 或多或少类似于谷歌地图应用
  • 执行 gem 时...(ArgumentError)未知编码名称 - CP720 [重复]

    这个问题在这里已经有答案了 我现在遇到了这个奇怪的错误 while executing gem ArgumentError unknown encoding name CP720 当我想运行任何 gem 命令时 例如 gem install
  • Location.getTime() 始终返回不带毫秒的时间戳

    我正在跟踪 GPS 位置LocationManager requestLocationUpdates using LocationManager GPS PROVIDER并注册一个LocationListener 我的问题 所有测试的设备
  • Qt 找出 QSpinBox 是否被用户更改

    假设我有一个QSpinBox 我如何查明该值是否是由用户或其他函数手动更改的 编辑 我只想在用户更改值时执行一些操作 但如果您的程序执行此操作 setValue 我不想执行此操作 可能的解决方案 ui gt spinBox gt block
  • AngularJS ui-router:测试 ui-sref

    我正在尝试测试一些正在使用的视图 a link a 链接到我的应用程序中的其他州 在我的测试中 我触发了对此元素的点击 如下所示 element find a click 如果状态切换到 我该如何测试someState 使用时会很容易 st
  • 如何轻松地从 lambda 函数创建比较器?

    我想知道 Net 框架中是否提供了一个实现 IComparer 的类 并且可以从 lambda 函数构造该类 能够做到这一点将会很有用 void SortByLength List
  • 使用 NavigationController 在当前 tabBarController 上呈现视图控制器

    当呈现或关闭 VC 时 我不想继续隐藏和显示 tabBar 因为它会造成糟糕的用户体验 相反 我想直接在选项卡栏上呈现下一个 VC 这样当我通过从左向右缓慢拖动来关闭下一个 VC 时 我可以看到隐藏在视图后面的选项卡栏 如下图所示 请注意
  • 实现循环 UITableView

    实现循环 UITableView 的最佳方法是什么 当用户向上滚动到表格边界时 它不是显示空白 而是简单地循环环绕 这里的示例可能是选择星期几 一天 24 小时中的某个小时 或者全球范围内按顺序排序的时区 有一些如何解决这个问题的想法 可以
  • Spring Security 3-如何自定义用户名/密码参数?

    使用时如何自定义 UsernamePasswordAuthenticationFilter usernameParameter j username 和 passwordParameter j password 属性