Spring Security 4.2中的身份验证失败

时间:2017-11-05 22:34:09

标签: spring spring-mvc spring-security

我正试图在Spring MVC模型中通过Spring Security实现一个简单的用户身份验证,但我经常得到" Bad credentials"即使我提供正确的证书。

以下是我的文件。有人可以建议我缺少什么吗?

security.xml文件:

<beans:beans xmlns="http://www.springframework.org/schema/security"
             xmlns:beans="http://www.springframework.org/schema/beans"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://www.springframework.org/schema/beans
             http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
             http://www.springframework.org/schema/security
             https://www.springframework.org/security/spring-security-4.2.xsd">

<http>
    <csrf disabled="true"/>
    <intercept-url pattern="/login*" access="ROLE_USER"/>
    <form-login login-page="/" default-target-url="/login" authentication-failure-url="/"/>
</http>

<authentication-manager>
    <authentication-provider>
        <user-service>
            <user name="rishavraj@gmail.com" password="123456" authorities="ROLE_USER" />
        </user-service>
    </authentication-provider>
</authentication-manager>

</beans:beans>

Controller.java:

@RequestMapping(value = "/login", method = RequestMethod.POST)
public ModelAndView Login(@RequestParam Map<String, String> reqvar) {
    System.out.println("login");
    ModelAndView form = new ModelAndView("Index");
    return form;
}

@RequestMapping(value = "/", method = RequestMethod.GET)
public ModelAndView Index() {
    System.out.println("Index");
    ModelAndView form = new ModelAndView("Index");
    return form;
}

的index.jsp:

<c:if test="${SPRING_SECURITY_LAST_EXCEPTION !=null}">   
    <div class="alert alert-danger fade in">
        <a href="#" class="close" data-dismiss="alert">&times;</a>       
        <strong> Wrong Email or Password </strong>

        <h4> Caused by : 
            ${sessionScope["SPRING_SECURITY_LAST_EXCEPTION"].message}
        </h4> 
    </div>
</c:if>    

<form action="/Mail/login" method="post">   
    <div class="form-group">   
        <label for="inputUserName">Email</label>   
        <input class="form-control" placeholder="Email ID" type="text" id="inputUserName" name="Email"/>  
    </div>
    <div class="form-group">
        <label for="inputPassword">Password</label>
        <input class="form-control" placeholder="Login Password" type="password" id="inputPassword" name="password"/>
    </div>        
    </div>
    <div class="modal-footer">  
        <button type="submit" class="btn btn-primary">Login</button>
        <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>`
    </div>
</form>

0 个答案:

没有答案