Ich habe WIF verwendet, um unsere neue Website zu authentifizieren, der STS basiert auf der Implementierung von starter-st.
Damit dies in out-load-balanced-Umgebungen korrekt funktioniert, habe ich Folgendes in der Datei global.asax verwendet, um das standardmäßige Zertifikatverhalten zu überschreiben.
%Vor%Das funktioniert alles nur, und die Leute haben das System erfolgreich benutzt, aber hin und wieder bekommen wir eine Menge:
ID1014: Die Signatur ist nicht gültig. Die Daten wurden möglicherweise manipuliert.
in den Ereignisprotokollen, so habe ich WIF-Ablaufverfolgung eingeschaltet und sah die folgenden im Protokoll erwähnt.
ID1074: Beim Versuch, das Cookie mithilfe der ProtectedData-API zu verschlüsseln, ist eine CryptographicException aufgetreten (Details siehe innere Ausnahme). Wenn Sie IIS 7.5 verwenden, kann dies daran liegen, dass die Einstellung loadUserProfile im Anwendungspool auf false gesetzt ist.
Ich habe das Gefühl, dass dies mich in eine dunkle Gasse führt, wie ich dachte, weil ich die Implementierung geändert hatte, um RSA zu verwenden, was mich nicht beeinflussen sollte.
Irgendwelche Ideen, um mir zu helfen?
Ich habe die Implementierung geändert, um das Timeout in der ontkencreated-Methode zu ändern. Dies verhindert die Neuausgabe.
%Vor%Die Browser-Cookies sind mit "alten" Mechanismen verschlüsselt - DPAPI. Wenn der Server versucht, die Cookies zu entschlüsseln, schlägt das daher fehl - Ihr Code verwendet jetzt RSA, nicht DPAPI.
Um dieses Problem zu umgehen, löschen Sie den Browser-Cache und die Anwendung wird wie erwartet ausgeführt.
Das zeitweilige Auftreten Ihres Fehlers in Kombination mit der DPAPI-Ausnahme, die in Ihren Traces angezeigt wird, deutet darauf hin, dass Sie die Cookie-Transformation nicht überschreiben und Ihr Dienst DPAPI weiterhin verwendet.
Das könnte eine lange Geschichte sein, aber in Ihrem Code-Ausschnitt habe ich festgestellt, dass Ihr Methoden-Override "onServiceConfigurationCreated" mit einem Kleinbuchstaben o beginnt. Ein solcher Tippfehler würde in der Tat verhindern, dass Sie das Standard-WIF-Verhalten ordnungsgemäß überschreiben.
Tags und Links wif windows-identity federated-identity ws-federation