Ich habe ein Problem mit Abmelde im Frühjahr Sicherheit und oauth2Entfernen nach der Abmeldung in Spring Security access_token OAuth2
Wir sichern aus REST-Service Feder Sicherheit OAuth2.The Token und Ruhe api Endpunkte sind staatenlos und nicht brauchen eine Sitzung.Ich brauche meine Authentifizierung nur einmal Anmeldebestätigung, wenn ich den Abmeldeservice im Rest-Client anrufe, zeigt es 200 Antwort, aber nicht die Autorisierung.Wenn ich den Benutzernamen und das Passwort eingeben, sollte derselbe Benutzer logging.but nicht sein logouting.i löschte auch den Kontext.
hier ist mein Controller
`@Path("oauth2/logout")
public class LogoutImpl implements LogoutSuccessHandler{
private TokenStore tokenStore;
@Autowired
public LogoutImpl(TokenStore tokenStore) {
this.tokenStore = tokenStore;
}
public void setTokenStore(TokenStore tokenStore) {
this.tokenStore = tokenStore;
}
@Override
public void onLogoutSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication)
throws IOException, ServletException {
removeaccess(request);
SecurityContextHolder.clearContext();
response.getOutputStream().write("\n\tYou Have Logged Out successfully.".getBytes());}
public void removeaccess(HttpServletRequest req) {
String tokens = req.getHeader("Authorization");
String value = tokens.substring(tokens.indexOf(" ")).trim();
OAuth2AccessToken token = tokenStore.readAccessToken(value.split(" ")[0]);
tokenStore.removeAccessToken(token);
System.out.println("\n\tAccess Token Removed Successfully!!!!!!!!");
}}
`