2016-04-01 11 views
0

Wie kann ich SSO-Token nach Crowd-Login (über Rest-Service) für den Fall generieren, wenn ich dieses Token für die Anmeldung bei Crowd verwenden kann? Ich meine ichGenerieren Menge SSO Token von benutzerdefinierten App

crowdClient.authenticateUser(...) 

und danach

crowdClient.authenticateSSOUser 

mit gleichen Anmeldeinformationen (und ich in umgekehrter Reihenfolge versucht)

Ich speichere diese Token in crowd.token_key Session-Variablen, aber Crowd authentifiziert mich nicht mit diesem Token.

Aber wenn ich zuerst in Crowd eingeloggt meine App diese Token zu erkennen.

Ich denke, es sollte von ValidationFactor abhängt, aber ich weiß nicht, welche ich verwenden soll.

Antwort

0

Ich fand Lösung in CROWD-Quellcode. Sie müssen Token mit den folgenden Validierungsfaktoren generieren:

List<ValidationFactor> validationFactors = new ArrayList<>(); 
validationFactors.add(new ValidationFactor(ValidationFactor.REMOTE_ADDRESS, request.getRemoteAddr())); 
String remoteAddressXForwardFor = request.getHeader(ValidationFactor.X_FORWARDED_FOR); 
if (remoteAddressXForwardFor != null && !remoteAddressXForwardFor.equals(request.getRemoteAddr())) { 
    validationFactors.add(new ValidationFactor(ValidationFactor.X_FORWARDED_FOR, remoteAddressXForwardFor)); 
} 
Verwandte Themen