Ho utilizzato la mia Azure Active Directory per proteggere la mia API Web e ho creato un'applicazione nativa nel portale di gestione di Azure. Questa applicazione nativa è fondamentalmente un'applicazione web MVC e io uso la libreria ADAL per ottenere il token e chiamare l'API con quel token. Il codice che ho usato per ottenere il token è la seguente:Logout di Azure Active Directory con libreria ADAL
AuthenticationContext ac = new AuthenticationContext(authority);
AuthenticationResult ar = ac.AcquireToken(resourceID, clientID, redirectURI);
string accessToken = ar.AccessToken;
ora ho bisogno di logout e passare a un altro utente, ma in qualche modo le credenziali dell'utente vengono ricordati dal sistema. Svuoto la cache dei token nel contesto dell'autenticazione e nella richiesta di logout post logout come segue dove *** è il mio ID tenant.
//Log out after api call
ac.TokenCache.Clear();
string requestUrl = "https://login.windows.net/***/oauth2/logout";
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, requestUrl);
var response = await client.SendAsync(request);
La chiamata api ha esito positivo ma il logout non funziona. Cosa devo fare per disconnettermi e passare a un altro utente?
Questo è esattamente quello che voglio, grazie! –
Ho provato a chiamare questo logout in ADAL iOS, ma non è sufficiente per impedire un'eccezione in caso di modifica di un account. Qualcuno ha avuto successo nel login/logout usando ADALiOS e due account diversi? –