Microsoft Entra ID におけるユーザーと管理者の同意

この記事では、Microsoft Entra ID におけるユーザーと管理者の同意に関する基本的な概念とシナリオについて説明します。

同意とは、アプリケーションが保護されたリソースにアクセスすることを、ユーザーが許可するプロセスです。 必要なアクセス レベルを示すために、アプリケーションは必要な API アクセス許可を要求します。 たとえば、アプリケーションは、サインインしているユーザーのプロファイルを表示し、ユーザーのメールボックスの内容を読み取るアクセス許可を要求できます。

同意はさまざまな方法で開始できます。 たとえば、ユーザーが初めてアプリケーションにサインインしようとするときに、同意を求めるメッセージを表示できます。 必要なアクセス許可によっては、一部のアプリケーションでは、管理者が同意を付与することが必要になる場合があります。

ユーザーは、そのユーザーとして機能しながら、保護されたリソースにある一部のデータにアクセスすることをアプリケーションに対して承認できます。 この種類のアクセスを許可するアクセス許可は、"委任されたアクセス許可" と呼ばれます。

通常、ユーザーの同意は、ユーザーがアプリケーションにサインインするときに開始されます。 ユーザーがサインイン資格情報を指定すると、同意が既に付与されているかどうかが確認されます。 必要なアクセス許可に対するユーザーまたは管理者の同意の以前のレコードが存在しない場合、ユーザーは同意プロンプト ウィンドウに移動して、要求されたアクセス許可をアプリケーションに付与します。

管理者以外のユーザーによる同意は、アプリケーションに対してユーザーの同意が許可されている組織と、アプリケーションが必要とする一連のアクセス許可に対する場合にのみ可能です。 ユーザーの同意が無効になっている場合、またはユーザーが要求されたアクセス許可に同意できない場合は、同意を求めるメッセージは表示されません。 ユーザーが同意を許可され、要求されたアクセス許可を受け入れる場合、同意は記録され、通常は同じアプリケーションへの将来のサインイン時にもう一度同意する必要はありません。

ユーザーが自分のデータを制御しています。 特権管理者は、管理者以外のユーザーがアプリケーションにユーザーの同意を付与できるかどうかを構成できます。 この設定では、アプリケーションとアプリケーションの発行元の側面、要求されるアクセス許可を考慮できます。

管理者は、ユーザーの同意を許可するかどうかを選択できます。 ユーザーの同意を許可する場合は、ユーザーがアプリケーションに同意する前に満たす必要がある条件を選択することもできます。

すべてのユーザーに適用するアプリケーションの同意ポリシーを選択することにより、ユーザーがアプリケーションに同意することを許可する場合と、管理者の確認と承認を要求する必要がある場合について制限を設けることができます。 Microsoft Entra 管理センターには、次の組み込みオプションが用意されています。

  • ユーザーの同意を無効にします。 ユーザーはアプリケーションにアクセス許可を付与することはできません。 ユーザーは、以前に同意したアプリケーション、または管理者が自分に代わって同意を与えたアプリケーションに引き続きサインインしますが、アプリケーションに対する新しいアクセス許可に自分で同意することは許可されません。 同意するアクセス許可を含むディレクトリ ロールが付与されているユーザーのみが、新しいアプリケーションに同意できます。

  • ユーザーは、検証済みの発行元または組織のアプリケーションに同意できますが、ユーザーが選択したアクセス許可に対してのみ同意できます。 すべてのユーザーは、検証済みの発行元によって発行されたアプリケーションと、テナントに登録されているアプリケーションにのみ同意できます。 ユーザーは、低影響として分類されたアクセス許可に対してのみ同意できます。 ユーザーが同意を許可されるアクセス許可を選択するには、アクセス許可を分類する必要があります。

  • ユーザーは、すべてのアプリケーションに同意できます。 すべてのユーザーが、すべてのアプリケーションに対し、管理者の同意を必要としないすべてのアクセス許可に同意することができます。

ほとんどの組織では、組み込みオプションの 1 つが適切です。 一部の高度な顧客は、ユーザーが同意を許可される条件をより詳細に制御する必要がある場合があります。 これらの顧客は、カスタム アプリの同意ポリシーを作成し、それらのポリシーがユーザーの同意に適用されるように構成することができます。

管理者の同意時に、特権管理者は、(通常は組織全体に代わって) 他のユーザーに代わってアプリケーションへのアクセス権を付与できます。 管理者の同意時にも、アプリケーションまたはサービスは API への直接アクセスを提供します。これは、サインインしているユーザーがいない場合にアプリケーションで使用できます。 管理者の同意を付与するために必要な具体的なロールは、要求されたアクセス許可によって異なります。これについては、管理者の同意の付与に関する記事で概説されています。

組織が新しいアプリケーションのライセンスまたはサブスクリプションを購入する場合は、組織内のすべてのユーザーがアプリケーションを使用できるよう、事前にアプリケーションを設定することができます。 ユーザーの同意が必要になるのを回避するために、管理者は組織内のすべてのユーザーに代わってアプリケーションの同意を付与できます。

管理者が組織に代わって管理者の同意を与えた後、ユーザーは通常、そのアプリケーションに対する同意を求められません。 場合によっては、管理者から同意が付与された後でも、ユーザーに同意を求めるメッセージが表示される場合があります。 たとえば、アプリケーションが管理者にまだ許可していない別のアクセス許可を要求した場合です。

組織に代わって管理者の同意を付与することは機密性の高い操作であり、組織のデータの大部分、または高度な特権付きの操作を行うアクセス許可にアプリケーションの発行者がアクセスできる可能性があります。 そのような操作の例は、ロール管理、すべてのメールボックスまたはすべてのサイトへのフルアクセス、完全なユーザー偽装などです。

テナント全体の管理者の同意を許可する前に、許可するアクセス レベルに対して、アプリケーションとアプリケーションの発行元を信頼していることを確認します。 アプリケーションを制御しているユーザーと、アプリケーションがなぜアクセス許可を要求しているのか確信を持てない場合は、同意を許可しないでください

アプリケーション管理者の同意を付与するかどうかのステップバイステップのガイダンスについては、「テナント全体の管理者の同意に対する要求の評価」を参照してください。

テナント全体の管理者の同意を Microsoft Entra 管理センターから許可する手順については、「アプリケーションに対してテナント全体の管理者の同意を付与する」を参照してください。

管理者は、組織全体に同意を許可するのではなく、Microsoft Graph API を使用して、1 人のユーザーに代わって委任されたアクセス許可に同意を許可することもできます。 Microsoft Graph PowerShell を使用した詳細な例については、「PowerShell を使用して 1 人のユーザーに代わって同意を許可する」を参照してください。

アプリケーションへのユーザー アクセスの制限

テナント全体の管理者の同意が許可されている場合でも、ユーザーのアプリケーションへのアクセスは制限される可能性があります。 アプリケーションのプロパティを構成してユーザー割り当てによって、アプリケーションへのユーザーのアクセスが制限されるように要求します。 詳細については、ユーザーとグループの割り当て方法に関するページを参照してください。

その他の複雑なシナリオの処理方法など、より詳しい概要については、Microsoft Entra ID を使用したアプリケーション アクセス管理に関する記事を参照してください。

管理者の同意ワークフローでは、ユーザーが自分で同意できない場合に、アプリケーションに対して管理者の同意を要求する方法が提供されます。 管理者の同意ワークフローが有効になっている場合、ユーザーには、アプリケーションへのアクセスに対する管理者の承認を要求する [承認が必要] ウィンドウが表示されます。

ユーザーが管理者の同意要求を送信すると、レビュー担当者として指定された管理者は通知を受け取ります。 レビュー担当者が要求に応じて行動した後、ユーザーに通知されます。 Microsoft Entra 管理センターを使用して管理者の同意ワークフローを構成する手順については、「管理者の同意ワークフローの構成」を参照してください。

管理者の同意ワークフローを有効にすると、ユーザーはユーザーの同意が許可されていないアプリケーションについて管理者の承認を要求できます。 プロセスの手順を次に示します。

  1. ユーザーがアプリケーションにサインインしようとします。
  2. "承認が必要です" というメッセージが表示されます。 ユーザーは、アプリケーションへのアクセスが必要である理由を入力し、[承認要求] を選択します。
  3. [リクエストが送信されました] というメッセージで、要求が管理者に送信されたことを確認します。ユーザーが複数の要求を送信した場合は、最初の要求のみが管理者に送信されます。
  4. 要求が承認、拒否、またはブロックされると、ユーザーにメール通知が届きます。

次の手順