如果您使用.Net Framework進行開發,則AcquireTokenAsync
確實使用UserPasswordCredential
提供了計算方法。
這是給你參考的代碼示例:
AuthenticationContext authenticationContext = new AuthenticationContext(UserModeConstants.AuthString, false);
string resrouce = "";
string clientId = "";
string userName = "";
string password = "";
UserPasswordCredential userPasswordCredential = new UserPasswordCredential(userName, password);
var token= authenticationContext.AcquireTokenAsync(resrouce, clientId, userPasswordCredential).Result.AccessToken;
我使用的版本3.13.5.907
Microsoft.IdentityModel.Clients.ActiveDirectory。此方法僅適用於您在Azure AD上註冊的本地客戶端應用程序,因爲它不提供憑據。如果您希望它適用於Web應用程序/ Web API,則可以直接發出HTTP請求,如下所示:
POST: https://login.microsoftonline.com/xxxxx.onmicrosoft.com/oauth2/token
Content-Type: application/x-www-form-urlencoded
resource={resource}&client_id={clientId}&grant_type=password&username={userName}&password={password}&scope=openid&client_secret={clientSecret}
爲什麼要查詢該用戶?爲什麼你不能查詢getMemberGroups? https://msdn.microsoft.com/en-us/library/azure/ad/graph/api/functions-and-actions#getMemberGroups – 4c74356b41
@ 4c74356b41我想查詢作爲我的服務帳戶,以檢查該用戶是否屬於組。我不想以該用戶身份進行查詢。 – ohmusama