Tôi đã sử dụng Azure Active Directory để bảo vệ API web của mình và tôi tạo một ứng dụng gốc trong cổng quản lý Azure. Ứng dụng gốc này về cơ bản là một ứng dụng web MVC và tôi sử dụng thư viện ADAL để nhận mã thông báo và gọi api bằng mã thông báo đó. Mã tôi đã sử dụng để nhận mã thông báo được hiển thị bên dưới:Đăng nhập Active Directory Azure với thư viện ADAL
AuthenticationContext ac = new AuthenticationContext(authority);
AuthenticationResult ar = ac.AcquireToken(resourceID, clientID, redirectURI);
string accessToken = ar.AccessToken;
Bây giờ tôi cần phải đăng xuất và chuyển sang người dùng khác nhưng bằng cách nào đó thông tin xác thực người dùng được hệ thống nhớ. Tôi xóa bộ nhớ cache mã thông báo trong bối cảnh xác thực và yêu cầu đăng xuất api đăng như sau, trong đó *** là ID đối tượng thuê của tôi.
//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);
Cuộc gọi api thành công nhưng đăng xuất không hoạt động. Tôi nên làm gì để đăng xuất và chuyển sang người dùng khác?
Đây chính là điều tôi muốn, cảm ơn! –
Tôi đã thử gọi tính năng đăng xuất này trong ADAL iOS, nhưng không đủ để ngăn ngoại lệ khi thay đổi tài khoản. Bất kỳ ai thành công trong việc đăng nhập/đăng xuất bằng ADALiOS và hai tài khoản khác nhau? –