2016-10-13 14 views
1

現在、古い社内サイトをAzure ADに展開しています。最終的なハードルは、ActiveDirectoryClientクラスを使用してLDAP統合をAADに置き換えています。AADにアクセス許可がありません

次のコードは、古いものを交換する新しいサイトで動作しますが、古いサイトで失敗します。

ActiveDirectoryClient adClient = General.GetADClient(); 
User currentUser = adClient.Users.Where(u => u.UserPrincipalName == Page.User.Identity.Name).ExecuteSingleAsync().Result as User; 

...次のエラーを生成します。

{"odata.error":{"code":"Authorization_RequestDenied","message":{"lang":"en","value":"Insufficient privileges to complete the operation."}}} 

私が知る限り、両方のWebアプリケーションはほぼ同じ設定をしています。 AADアプリ登録のアプリマニフェストも同様です。

私の質問は具体的には:誰かが私がここで何か不足しているかもしれないという考えを持っていますか?

答えて

0

この記事のコードは、Azure AD Graphs RESTを使用してAzure ADユーザーコレクションをフィルタリングしています。用途コレクションを照会するために、委任された権限を使用している場合は、Users.ReadBasic.Allの権限をアプリに付与できます。

また、この問題を絞り込むために、Fiddlerを使用して要求を追跡し、十分な特権があるかどうかを確認するためにトークンhereを解析することもできます。 Azure ADグラフのアクセス許可とスコープの詳細については、hereを参照してください。

問題が解決しない場合は、トークンにペイロードデータを投稿してください。

関連する問題