2017-04-10 2 views
1

現在のv2.0エンドポイントがデーモンとサーバーサイドのアプリケーションフローをサポートしているかどうかを明確にしようとしています。フローに関するAzure Active Directory v2.0デーモンとサーバーサイドアプリケーションのサポート

この記事会談:https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-v2-flows

それは述べている:

この記事は、あなたの好みの言語に関係なく、AzureのAD v2.0のを使って、あなたが構築できるアプリケーションの種類について説明したりプラットフォーム。この記事の情報は、コードの操作を開始する前に、高度なシナリオを理解するのに役立つように設計されています。

は現在、このセクションでのアプリケーションの種類は、バージョン2.0のエンドポイントでサポートされていないが、彼らは将来の発展のためのロードマップ上にある:

さらに、それは述べています。 v2.0エンドポイントの追加の制限と制限について

最後に、スケジュールでAPIに接続する「資格情報」を持つグラフAPIに接続するアプリケーションを構築しようとしていますそれを許可したユーザーに代わってAPIにアクセスします。私のテストハーネスで

私が使用してトークンを取得することができます

同じハーネスに
var pca = new PublicClientApplication(connector.AzureClientId) 
      { 
      RedirectUri = redirectUrl 
      }; 
var result = await pca.AcquireTokenAsync(new[] {"Directory.Read.All"}, 
       (Microsoft.Identity.Client.User) null, UiOptions.ForceLogin, string.Empty); 

私が使用してトークンを取得することはできません。

var cca = new ConfidentialClientApplication(
       connector.AzureClientId, 
       redirectUrl, 
       new ClientCredential(connector.AzureClientSecretKey), 
       null) {PlatformParameters = new PlatformParameters()}; 

var result = await cca.AcquireTokenForClient(new[] { "Directory.Read.All" }, string.Empty); 

これはになります:

例外がスローされました:mscorlib.dllの 'Microsoft.Identity.Client.MsalServiceException'

追加情報:AADSTS70011:入力「 」に指定された値 'scope'は無効です。有効範囲Directory.Read.Allは ではありません。 トレースID:dcba6878-5908-44a0-95f3-c51b0b4f1a00 相関ID:1612e41a-a283-4557-b462-09653d7e4c21 タイムスタンプ:2017年4月10日20:53:05Z

MSALパッケージ、マイクロソフト.Identity.Client(1.0.304142221-alpha)は、2016年4月16日以降に更新されていません。

答えて

3

Azure AD V2.0でクライアントクレデンシャルフローを使用する場合、この要求のscopeパラメータに渡される値は、.defaultという接尾辞が付いたリソースのリソース識別子(アプリケーションID URI)になります。 Microsoft Graphの例では、値はhttps://graph.microsoft.com/.defaultです。

詳細については、hereをクリックしてください。 hereは、Azure AD V2.0エンドポイントでクライアントの資格情報フローを使用するためのチュートリアルです。

+0

私はそれが必要でした!それは働いた。いくつかのシナリオをさらにテストしたい。管理者の同意をどのように取り消すことができますか? –

+0

適切なAzureADテナントのエンタープライズアプリケーションのAzureポータルにリストされているアプリケーションが見つかりました。 –

関連する問題