问题标签 [spring-security]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xml - 你怎么知道 Spring 配置标签有哪些 XML 参数?
我刚刚阅读了一篇文章,其中显示了以下 Spring Security XML 配置:
我想知道密码编码器是否可以采用一些参数组合,使其使用 SHA-256。我很容易找到ShaPasswordEncoder的 Java 构造函数,但是如何判断 password-encoder 标记是否采用 Java 对象的参数?
一般来说,如何知道 Spring 配置的标签和参数是什么?
例如,我怎么知道 ShaPasswordEncoder 与“password-encoder”搭配使用(如果确实如此)?
passwords - Acegi 密码加密
我正在使用 acegi groovy 插件进行用户注册和身份验证。插件自带的 User 域类有如下定义(和注释)。
}
等等。因此,我假设密码加密方法是 MD5。
我必须注册数千个用户,为每个用户生成一个随机密码。(用户名已经给出)。
我编写了一个脚本,它生成随机纯密码和 MD5 加密密码,并将相应的插入到数据库中。不幸的是,这些用户都无法登录。
acegi 安全插件是否使用 MD5 加密?
似乎是它正在使用其他东西。不幸的是,我在文档中没有找到任何东西。
有人知道这种加密是如何完成的吗?
谢谢!
路易斯
java - acegi ntlm如何?
我有一个使用 ldap acegi-security-1.0.2.jar 的应用程序。我能够使用活动目录对用户进行身份验证。我想为我的应用程序添加 NTLM 自动登录功能。我可以知道我需要什么额外的 acegi 库来执行此操作吗?有没有关于acegi+nltm的例子?
grails - 带有 PersistentTokenBasedRememberMeServices 的 CookieTheftException
我将Grails App 中的 PersistentTokenBasedRememberMeServices (Spring Security 2.04) 与 OpenIDAuthenticationProcessingFilter 结合使用。配置如下(这是Grails 的DSL 等价于 Spring resource.xml 但应该很容易适应):
在用户通过身份验证后,一切都很好,直到第一次使用发给他的 cookie,例如在容器重启后(参见此处)。
使用 cookie 的第一个请求似乎总是很好,但是在 cookie 更新为新日期和最重要的是新令牌之后,后续请求将在此处崩溃。好像浏览器仍然会使用包含旧令牌的旧版本 cookie 来请求资源。我完全困惑为什么会发生这种情况。有什么建议么?
spring - 如何将过滤器类添加到应用程序上下文中?
我有一个通常会放在 web.xml 中的过滤器类。我可以知道如何在 spring applicationcontext 中指定它,以便我能够在我的 fitlerclass 中使用 spring 功能吗?
spring-security - 重新启动服务器后不提示用户进行身份验证
我们的应用程序使用了 Spring Security。Spring 安全性已经以 bean 声明的方式进行了配置。
问题是:我登录了应用程序,浏览了几个页面,然后重新启动了服务器(但没有关闭浏览器)。重新启动服务器后,我可以成功移动到其他页面。我确定这不是浏览器缓存,因为我在开始浏览其他页面之前删除了所有 cookie。
为什么会这样?这是默认行为吗?重新启动服务器后如何强制执行身份验证?
java - @Secured 服务方法和spring ws
我有以下项目结构:
基础项目(服务层、模型) web 项目 webservice 项目
其中 web 项目和 web 服务项目都依赖于基础项目并使用它提供的服务。
我大量使用 Spring 框架,这意味着服务是 Spring Bean,其方法由@Secured Annotation 和Spring Security 保护。我创建了一个Voter,扩展了检查客户端权限的 AbstractAclVoter。
Web 项目使用Spring MVC和带有 @Endpoint Annotations 和XwsSecurityInterceptor的 Web 服务项目Spring WS。
这是我的问题:
如果调用来自 Web 项目控制器或基础项目的 JUnit 测试,则检查权限,但未检查来自 Web 服务项目的请求是否具有正确的权限 - 我的Voter没有被调用!
- 这与XwsSecurityInterceptor 有关吗?
- 我是否也需要Web 服务项目中的DelegatingFilterProxy ?(我没有 ContextLoaderListener 因为一切都是由 MessageDispatcherServlet 配置配置的)
security - Spring security - 在 taglib 和 jsp 中的 SecurityContext.authentication null 但在控制器中可以
我一直在努力解决这个问题一段时间。找到了几篇关于它的帖子,但没有一个能解决我的问题。这可能与 SecurityContext 与特定线程有关,但即便如此我也不知道如何解决它:
考虑以下代码来检索已登录的用户:
在控制器中运行此代码将(正确)返回用户登录。从 taglib 或 jsp 运行此代码会引发 NPE(身份验证 = null)。还有弹簧标签不起作用(可能出于相同的原因)。
从 web.xml 中提取:
从 spring 安全配置文件中提取:
gwt - gwt & gwt-incubator-security
谁能给我一个关于如何使用 gwt-incubator-security 和 AOP 实现 Spring Security 的提示?我尝试按照他们的维基页面上的描述做所有事情,但仍然没有效果。我对如何使 PRC 通话安全感兴趣。
java - 重启后Spring没有将tomcat持久会话恢复到会话注册表?
我正在使用 Tomcat 6.2 和 Spring MVC 2.5。我注意到,当用户登录时,我可以重新启动 Tomcat,并且用户无需重新验证即可继续浏览。这似乎来自于 Tomcat 在重新启动时保持会话的能力。
然而,这些持久化的会话似乎并没有回到 Spring 会话注册表中。在重新启动之前从会话注册表中检索用户的会话信息时,我会返回信息。尽管会话注册表没有关于用户的信息,但发布重新启动。
我是否错过了一些允许 Spring 在重新启动后恢复这些持久的 Tomcat 会话的配置?如果做不到这一点,有没有办法在不调用 sessionInformation.expireNow() 的情况下将用户踢出 Web 应用程序?