2017-09-06 15 views
0

クライアントアプリケーションから認証済みAPIを呼び出そうとしています。authority_not_in_valid_list: 'authority'が有効なアドレスのリストにありません

resourceUrl = "https://myApiEndPoint.com"; 

var clientCredential = 
    new ClientCredential(myClientAppId, myClientSecretKey); 

//:ここ

は私のコードスニペットです:AcquireTokenAsyncを行う場合しかし、私は " '権威' は、有効なアドレスのリストにないauthority_not_in_valid_listを" エラーを以下の取得しますmyClientAppIdとmyClientSecretKeyは私のための私の紺碧のポータルでAzureのポータルからの値

var authContext = 
    new AuthenticationContext("https://my_authority/myApiEndPoint"); 

return await authContext.AcquireTokenAsync(resourceUrl, clientCredential); 

ですアプリのクライアントID、https://myApiEndPOint.com apiにアクセスする権限を委任しました。

この問題を引き起こしている可能性のあることや、有効なリストにないことはどういう意味ですか?

答えて

0

私がいることを理解:

  • あなたはAzureのポータルでアプリケーションを作成し、そのための権限がアズールADエンドポイントです。したがって、権限はおそらくhttps://login.microsoftonline.com/commonですか?または、 "https://my_authority"を使用する正当な理由はありますか?

  • あなたはにアクセス許可を委任しましたはAPIにアクセスしました。これは、アプリケーションがユーザーの名前でAPIにアクセスすることを意味します。しかし、あなたが使用AcquireTokenAsync方法は、おそらくかなりresourceUri、のclientIdを渡す別のオーバーライドを使用したい (アプリケーションの秘密を意味する)「ClientCredential」の流れを使用している...

これがあればあなたのユースケース、active-directory-dotnet-webapi-onbehalfofサンプル(hereを参照)をご覧になることをお勧めします。

関連する問題