Spring Security Login:密码可以在View Source中看到

时间:2015-05-22 06:40:34

标签: spring-mvc spring-security spring-security-ldap

我正在使用Spring安全性并且能够通过我的客户页面仅使用method =“post”登录,但不能通过method =“get”登录,我需要通过method =“get”登录,这样任何人都无法看到我的视图源中的密码。

enter image description here

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

要使用POST,您需要手动配置UsernamePasswordAuthenticationFilter,才能使用http.formLogin()

protected void configure(HttpSecurity http) throws Exception {
    UsernamePasswordAuthenticationFilter authFilter = new UsernamePasswordAuthenticationFilter();
    authFilter.setPostOnly(false);
    http
    //       other configuration...
            .addFilterAfter(authFilter, LogoutFilter.class);
}

但是你必须要知道GET方法是完全不安全的 - 你的密码将通过像www.yoursite.com/j_spring_security_check?j_password=some_password这样的URL的查询参数传输。许多和许多HTTP服务器都会在其日志文件中记录传入的URL。因此,您的密码最终会显示在日志中,而这些日志并不好。