In meinem Memo, dem Spring Security-bezogenen Tutorial, heißt es, dass die zur Authentifizierung verwendete Benutzer-ID und das Kennwort aus der Sitzung bezogen werden können, aber ich habe mich nur über andere Parameter gewundert. Es passierte nichts, ich musste der Klasse, die UserDetails implementierte, nur einen Getter hinzufügen. ..
public class User {
private String userId;
private String password;
private String hoge;
//getter,Setter weggelassen
}
public class UserDetailsImpl implements UserDetails {
private final User user;
public UserDetailsImpl(User user) {
this.user = user;
}
public String getHoge() {
return user.getHoge();
}
//Auslassen von Methoden, die überschrieben werden sollten
}
Informationen zur Authentifizierungsmethode finden Sie in dem Artikel, den ich zuvor geschrieben habe Ich habe die Verarbeitung der DB-Anmeldeauthentifizierung mit Spring Security (mithilfe von MyBatis) implementiert. Ich habe die Verarbeitung der DB-Anmeldeauthentifizierung in Spring Security (unter Verwendung von MyBatis) Teil 2 implementiert
@Controller
public class Controller {
@RequestMapping("/")
public index(@AuthenticationPrincipal UserDetailsImpl userDetails) {
System.out.println(userDetails.getUserId) // userId
System.out.println(userDetails.getPassword) //password
System.out.println(userDetails.getHoge) //hoge
}
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org"
xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity4"> <!--Fügen Sie dies hinzu und verwenden Sie Spring Security von Thymeleaf-->
<!--Kürzung-->
<body>
<h>Hallo,<span sec:authentication="principal.userId"></span>Herr.</h> <!-- principal.Kann durch den Namen der Mitgliedsvariablen referenziert werden-->
</body>
Recommended Posts