Mam 2 aplikacje (jedna .NET i inne Angular SPA (usługi sieciowe w .NET) z tą samą nazwą domeny .Musimy włączyć SSO dla tych 2 aplikacji. config mają ten sam klucz maszynowy i są włączone dla trybu uwierzytelniania FormsC# Uwierzytelnianie formularzy .ASPXAUTH Cookie dla SSO
Po zalogowaniu się do witryny .NET, przedstawiam kanciastą stronę w iFrame. Podczas otwierania iframe wywołanie API obejmuje plik cookie .ASPXAUTH nagłówek żądania, ale HttpContext.User.Identity.Authenticated ma wartość false, więc zwraca 404 i przekierowuje do strony logowania dla kanciastej strony w elemencie iframe. ale si Jeżeli plik cookie jest ustawiony w nagłówku żądania, metoda API (.NET) powinna uznać go za uwierzytelniony, a nie jest. Coś, czego mi brakuje?
Czy używasz tej samej nazwy cookie auth dla obu aplikacji? – AMember
tak, jego .ASPXAUTH – Dave
Zacznę od sprawdzenia czegoś w rodzaju 'FormsAuthentication.Decrypt (HttpContext.Request.Cookies [FormsAuthentication.FormsCookieName] .Value)' na żądanie API, dzięki czemu można upewnić się, że przekazana wartość może zostać odszyfrowana i zawiera poprawny identyfikator użytkownika, który może być użyty przez API – Lanorkin