如何使用spring security使用空密码进行基本身份验证?
Posted
技术标签:
【中文标题】如何使用spring security使用空密码进行基本身份验证?【英文标题】:How to do basic authentication with empty password using spring security? 【发布时间】:2011-05-26 04:48:51 【问题描述】:我正在使用 spring security (2.0.6) 来执行 HTTP BASIC 身份验证。我编写了一个自定义身份验证提供程序类,用于针对我的数据库验证用户名和密码。我遇到的问题是某些用户没有密码。这些用户会收到“拒绝访问”消息。我调试了代码,发现当用户密码为空时,我的自定义身份验证提供程序没有被调用。有谁知道如何解决这个问题?我需要允许一些用户使用空白密码。
【问题讨论】:
所以如果有人没有密码,你的安全性就会被破坏,如果你纠正这个。 这是我必须实施的业务需求。是的,这听起来很疯狂,但在某些商业案例中,您有时需要一些帐户才能在没有密码的情况下登录。 如何使用空白密码提交请求,例如curl -u 用户:网址? 【参考方案1】:然后没有密码您是否尝试将 AuthenticationProvider 之前的过滤器中的密码设置为“NOPASSWORD”之类的默认值?我认为其中一个预身份验证过滤器执行了一个简单的“if (password == null)”并且失败了,这就是您的问题。
【讨论】:
以上是关于如何使用spring security使用空密码进行基本身份验证?的主要内容,如果未能解决你的问题,请参考以下文章
BCrypt:使用 Spring Security 的空编码密码
具有会话获取在线用户的 Spring Security 返回空
如何使用spring-security通过用户名和密码登录?
作为管理员,如何使用 Grails Spring Security 以编程方式更改用户密码?