2017-12-18 21 views
0

私は、Azureアプリケーションの登録とグループを管理するために、Javaアプリケーションを前提としています。その目的のために私はAzureにアプリとそのサービス原則を登録しました。私は(https://github.com/Azure-Samples/aad-java-manage-users-groups-and-roles/)のサンプルの1つを使用しています。私は、他のアプリを登録したり、グループを作成したり、グループに割り当てたり、クライアントの秘密の操作を行うことができるように、私のアプリに適切な権限を与えることについては問題があります。私は403の不正な応答を受け取りました。これらの操作のAzure ADの権限は、どのようなものがありますか?ポータルでその要件を実装するために、どの手順とオプションを実行する必要がありますか?所有者の権利を与えるアプリケーションの登録とグループの作成の許可 - Azure AD

おかげ

UPDATE 1 は大きな動きです。それは私が探していた答えではありません。だから私は私の質問のための解決策としてそれをマークしていないが、あなたがそれをして喜んでいる場合、それは間違いなく動作するだろう。コードも機能します。 私の質問の一部は、可能性の最も低い権限でした。実験後、私は発見したアプリの権限で:

  1. のWindows Azureのアクティブディレクトリ - >読む書くディレクトリデータ
  2. のWindows Azureのアクティブディレクトリ - >すべてのアプリケーション
  3. マイクロソフトGraph-書く読む>ライト読むディレクトリデータ
  4. マイクロソフトGraph->読むにはすべてのドメイン
  5. マイクロソフトGraph->読むにはすべてのグループ

が解決書く 問題。 Active Directoryのものは私がアプリケーションを作成してグループを作成することを許し、グラフのものはグループにアプリケーションを追加することを許可しました。 Graphの代わりに、User Access Adminとしてアプリを追加すると、アプリをグループ化することもできます。

更新2 私は別のアプリで同じプロセスを繰り返そうとしています。今回はUpdate 1で行ったのと同じ権限を付与しましたが、今度はグループに新しいアプリケーションを追加すると403で失敗します。私は本当に混乱しています...

+0

あなたは[Microsoftグラフドキュメント](https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/api/application_post_applications)から許可要件を確認することができます – juunas

+0

ありがとうございます。このページは私が探していたものです。アプリの権限をプログラムで追加できるかどうかは分かりますか? – user3499779

答えて

0

サービスプリンシパルを作成し、サブスクリプションにOwnerロールを付与する必要があります。あなたはコードを確認することができます、新しい作成されたユーザーはあなたのサブスクリプションにCONTRIBUTOR与えられています。だから、あなたのSPにはOwnerロールが必要です。

// Assign role to AD user, it needs `Owner` role. 

    RoleAssignment roleAssignment1 = authenticated.roleAssignments() 
      .define(raName1) 
      .forUser(user) 
      .withBuiltInRole(BuiltInRole.READER) 
      .withSubscriptionScope("3b4d41fa-e91d-4bc7-bc11-13d221b3b77d") 
      .create(); 
    System.out.println("Created Role Assignment:"); 

Azure Portalで実行できます。

<your subscription>--><Access Control>--><Add>。これについて

enter image description here

詳しい情報は、このofficial documentを参照してください。

更新:

私は私の研究室でのテストは、あなたのsp Graph許可を与える必要はありません、あなただけのあなたのspサブスクリプションOwner役割を与える必要があります。これが私のテスト結果です。

enter image description here

+0

ありがとう@Shengbao Shiu - MSFT。 Grant Permissionsを実際に実行する必要がありますか?それの効果は何ですか?それは管理者の集中ですか? – user3499779

+0

あなたはJavaアプリケーションを使用して作成したアプリケーションにPermissionsを割り当てることができるかどうかを知っていますか? – user3499779

+0

サブスクリプションでSPに所有者の権利が必要な理由を説明してください。サブスクリプションで権利を持つことは、Azure ADでアプリを操作する権利を与えません。実際には、必要以上の権限を与えるのは危険なアドバイスです。その役割がなぜ必要なのかを知ることができれば、私はコメントを修正します。 – juunas

関連する問題