この記事では、Azure portal を使用して Microsoft Entra ID から発行されたイベントをサブスクライブする手順について説明します。
パートナー トピックを作成する
Azure Portalに移動します。
検索ボックスに「Event Grid」と入力し、結果から Event Grid を選択します。
左側のメニューで、[パートナー イベント] を展開し、[Available partners]\(使用可能なパートナー\) を選択します。
Microsoft Entra ID タイルで、[作成] を選択します。
ウィザードの [Microsoft Graph API subscription]\(Microsoft Graph API サブスクリプション\) タブで、次の手順に従います。
[サブスクリプション] で、パートナー トピックを作成する Azure サブスクリプションを選びます。
[リソース グループ] で、パートナー トピック リソースのリソース グループを選択します。
[場所] で、パートナー トピックを作成するリージョンを選びます。
[パートナー トピック名] に、パートナー トピックの名前を入力します。
[リソース] で、通知を受信するリソースを指定します。 (例:
users
)。[種類の変更] で、通知を受け取るイベントの種類を選択します。
[有効期限] で、パートナー トピックの有効期限が切れる日時を選択します。
Microsoft.Graph.ReauthorizationRequired
イベントをサポートする場合は、[Enable lifecycle events]\(ライフサイクル イベントの有効化\) オプションを選択します。 ライフサイクル イベントの詳細については、サブスクリプションのライフサイクル通知を参照してください。ページの下部にある [Next: Partner Configuration]\(次へ: パートナーの構成\) を選択します。
[Partner Configuration]\(パートナーの構成\) ページで、次の手順に従います。
[+ Partner Authorization]\(+ パートナー承認\) を選択します。
[Add partner authorization to create resources]\(リソースを作成するためのパートナー承認を追加する\) ページで、Microsoft Graph API を選択し、[Authorization expiration time]\(承認の有効期限\) を指定して、[追加] を選択します。
次に、[Partner Configuration]\(パートナーの構成\) ページで、ページの下部にある [次へ: 確認 + 作成] を選択します。
[確認 + 作成] ページで、設定をすべて確認し、[作成] を選択します。
Graph API サブスクリプションが作成され、パートナー トピックがアクティブになると、ポータルでパートナー トピックに移動するためのリンクが表示されます。
パートナー イベントをサブスクライブする
この時点で、Microsoft Graph API サブスクリプションの作成時に指定されたリソースが変更されるたびに、アクティブ化されたパートナー トピックに Microsoft Graph API イベントが到着します。 イベントを処理するには、Webhook やサポートされている Azure サービスなどのイベント ハンドラーにイベントを転送するイベント サブスクリプションを作成する必要があります。
重要
このセクションでは、サンプル アプリケーションである Event Grid Viewer を使用してイベントを受信する方法について説明します。 このアプリケーションは、ビジネス要件に従ってイベントを処理する独自のアプリケーションを作成する前に、イベントを受信するデータ パイプラインをテストするのに役立ちます。 アプリケーションをビルドする準備ができたら、完全なアプリケーション サンプルを参照してください。
イベント ビューアー アプリケーションをデプロイする
パートナー トピックをテストするには、事前構築済みの Web アプリであるイベント ビューアーをデプロイします。 イベント ビューアー アプリには、配信されたすべてのイベントが表示されます。 デプロイされたソリューションには、App Service プラン、App Service Web アプリ、および GitHub からのソース コードが含まれています。
[Deploy to Azure]\(Azure にデプロイ\) を選択して、ソリューションを Azure サブスクリプションにデプロイします。 Azure portal で、パラメーターの値を指定します。
[カスタム デプロイ] ページで、次の手順を実行します。
アプリケーションがデプロイされているリソース グループを選択します。
[サイト名] に、Web アプリの名前を入力します。
Web アプリのホストに使用する App Service プランの名前を [ホスティング プラン名] に入力します。
[Review + create](レビュー + 作成) を選択します。
[確認および作成] ページで、 [作成] を選択します。
デプロイが完了するまでに数分かかる場合があります。 ポータルでアラート (ベルのアイコン) を選択し、 [リソース グループに移動] を選択します。
[リソース グループ] ページのリソースの一覧で、作成した Web アプリを選択します。 また、App Service プランと、リソース グループに含まれているその他のリソースも表示されます。
Web アプリの [App Service] ページで、Web サイトに移動するための URL を選択します。 この URL は、
https://<your-site-name>.azurewebsites.net
形式になっている必要があります。サイトは表示されますが、イベントはまだ送信されていないことを確認します。
イベント サブスクリプションの作成
どのイベントを追跡し、どこにイベントを送信するかは、Event Grid パートナー トピックをサブスクライブすることによって Event Grid に伝えます。
次に、Event Grid パートナー トピックの [概要] ページで、ツールバーの [+ イベント サブスクリプション] を選択します。
[イベント サブスクリプションの作成] ページで、次の手順に従います。
イベント サブスクリプションの名前を入力します。
[エンドポイントのタイプ] には [Webhook] を選択します。
[エンドポイントの選択] を選択します。
Web hook エンドポイントに対して、Web アプリの URL を入力し、ホーム ページの URL に
api/updates
を追加します。 [選択の確認] を選択します。再び [イベント サブスクリプションの作成] ページで、 [作成] を選択します。
Web アプリをもう一度表示すると、新しいサブスクリプション検証イベントが表示されます。 目のアイコンを選択してイベント データを展開します。 Event Grid は検証イベントを送信するので、エンドポイントはイベント データを受信することを確認できます。 Web アプリには、サブスクリプションを検証するコードが含まれています。
イベント フローをテストする
これで、Microsoft Entra ID サブスクリプションをテストする準備ができました。 Microsoft Entra ID サブスクリプションの作成時に提供される変更の種類に応じて、追跡しているリソースを更新、または削除します。 リソースを変更するたびに、イベント ビューアー アプリケーションにイベントが表示されます。
次のステップ
- 独自のパートナー イベント ハンドラー アプリケーションを構築する
- 開発作業を迅速化する方法として、サンプル アプリケーションを使用します。 アプリケーションを作成したら、アプリケーションのエンドポイントでイベント サブスクリプション エンドポイントを更新できます。
- 運用環境目的では、Microsoft Graph API サブスクリプションの作成を自動化し、パートナー トピックを作成できます。 その目的のために、サンプル アプリケーションも適切なリソースになります。 クイック リファレンスについては、「Microsoft Graph API サブスクリプションを作成する方法」セクションのコード スニペットを参照してください。
- サンプル アプリケーションでは、Microsoft Graph API サブスクリプションを更新して、イベントの連続フローを確保する方法も示します。 サブスクリプションの更新と呼び出される API の背後にある概念について、「Microsoft Graph API サブスクリプションを更新する方法」セクションで理解する必要があります