Microsoftライブアカウントからユーザーデータを読み取ろうとしています。私は以下のようにコードを書かれている:私は私のAADの資格情報を使用する場合私のAADアカウント以外のmsライブアカウントを使用している場合、Azure AD認証に失敗する
public void GetUserData(){
var authContext = new AuthenticationContext("https://login.microsoftonline.com/common/");
var result = _authenticationContext
.AcquireTokenAsync("https://graph.microsoft.com", "<my client/app ID>", "<redirect URI>", new PlatformParameters(PromptBehavior.RefreshSession))
.Result;
var accessToken = result.AccessToken;
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer",accessToken);
var userResponse = httpClient.GetStringAsync("https://graph.microsoft.com/beta/me/").Result;
//DO SOMTHING WITH DATA
}
私のコードは正常に動作しているが、私は私の個人的なアカウントを使用する場合、それは次のようなエラーを与えています。
AADSTS50020:ユーザーアカウント「[email protected]」をアイデンティティプロバイダ から「live.com」テナント「既定のディレクトリ」に存在しないとすることはできません アクセスアプリケーションのXXXXXXXXXXXXXXXXX 'は テナントに。最初にテナント に外部ユーザーとしてアカウントを追加する必要があります。サインアウトし、別のAzure Active ディレクトリユーザーアカウントで再度サインインします。ここで
スクリーンショットです:
それはthis questionに似ています。誰かが私を助けることができますか?
あなたが個人を追加しました:
おそらく、このためにv2.0のエンドポイントを使用する必要がありますようhttps://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-appmodel-v2-overview
あなたがログインするだけで、消費者MSアカウントを期待する場合は、AUTHORIZEのURLを指定することができますあなたの空白のアクティブディレクトリにライブアカウント? –
このリンクをチェックしてください - https://stackoverflow.com/questions/37255819/azure-native-application-common-authentication – MethodMan
@Wayne Yang、紺碧の広告にアカウントを追加していません。私は自分のアプリがライブアカウントで働きたい。 –