Azure Event Grid と Auth0 を統合する

この記事では、Event Grid のパートナー トピックを作成することによって、Auth0 と Azure アカウントを接続する方法について説明します。

注意

Auth0 でサポートされるすべてのイベントの一覧については、Auth0 でのイベントの種類のコードに関するページを参照してください

Auth0 から Azure Event Grid にイベントを送信する

Auth0 のイベントを Azure に送信するには:

  1. Azure サブスクリプションに Event Grid リソース プロバイダーを登録する
  2. お使いのリソース グループ内にパートナー トピックを作成することに対してパートナーに承認を与える
  3. Auth0 ダッシュボードで Auth0 パートナー トピックを設定して、パートナー トピックへのイベント フローの有効化を Auth0 に要求します。
  4. パートナー トピックをアクティブ化して、パートナー トピックへのイベント フローが開始するようにします。
  5. イベントをサブスクライブする

Event Grid リソース プロバイダーを登録する

これまでに Event Grid を使用したことがない場合は、Event Grid リソース プロバイダーを登録する必要があります。 Event Grid を使用したことがある場合は、次のセクションに進んでください。

Azure portal で、次の手順を実行します。

  1. 左側のメニューで [サブスクリプション] を選択します。

  2. サブスクリプションの一覧から Event Grid に使用するサブスクリプションを選択します。

  3. [サブスクリプション] ページで、左側のメニューの [設定] の下の [リソース プロバイダー] を選択します。

  4. Microsoft.EventGrid を検索し、[状態][未登録] であることを確認します。

  5. プロバイダーの一覧で [Microsoft.EventGrid] を選択します。

  6. コマンド バーの [登録] を選択します。

    Image showing the registration of Microsoft.EventGrid provider with the Azure subscription.

  7. 最新の情報に更新して、Microsoft.EventGrid の状態が [登録済み] に変更されたことを確認します。

    Image showing the successful registration of Microsoft.EventGrid provider with the Azure subscription.

パートナーがパートナー トピックを作成することを承認する

指定したリソース グループにパートナーがパートナー トピックを作成することに対して同意を与える必要があります。 この承認には有効期限があります。 これは、1 日から 365 日の範囲で指定した期間有効です。

重要

セキュリティに対する姿勢を強化するために、パートナーが、Event Grid にフローするようにイベントを構成し、パートナー トピックをプロビジョニングするのに十分な時間を確保できる最小限の有効期限を指定します。 認可の有効期限が切れた後は、パートナーが Azure サブスクリプションにリソース (パートナー トピック) を作成できなくなります。

注意

Event Grid では、2022 年 6 月 30 日頃にパートナー トピックを作成するための承認チェックの実施を開始しました。

  1. Azure portal にサインインします。

  2. 上部の検索バーに「パートナー構成」と入力し、結果の [サービス] の下にある [Event Grid パートナー構成] を選択します。

  3. Event Grid パートナー構成 ページで、ページ上のEvent Grid パートナー構成の作成 ボタンを選択するか、コマンド バーの + 作成 を選択します。

    Screenshot showing the Event Grid Partner Configurations page with the list of partner configurations and the link to create a partner registration.

  4. [パートナー構成の作成] ページで、次の手順を行います。

    1. [プロジェクトの詳細] セクションで、パートナー トピックを作成することをパートナーに許可する Azure の [サブスクリプション][リソース グループ] を選択します。

    2. [パートナー承認] セクションでは、この構成で定義されるパートナー承認の既定の有効期限を指定します。

    3. 指定されたリソース グループでパートナー トピックを作成することに対してパートナーに承認を与えるには、[+ パートナー承認] リンクを選択します。

      Screenshot showing the Create Partner Configuration page with the Partner Authorization link selected.

  5. [Add partner authorization to create resources]\(リソースを作成するためのパートナー承認を追加する)\ ページに、確認済みパートナーの一覧が表示されます。 確認済みパートナーとは、Microsoft によって検証済みの ID を持つパートナーです。 Auth0 を承認してパートナー トピックを作成するには、次の手順に従います。

    1. 検証済みパートナーの一覧から、検証済みのパートナー (Auth0、SAP、Tribal Group、または Microsoft Graph API) を選択します。

    2. [承認の有効期限] を指定します。

    3. [追加] を選択します。

      Screenshot showing the page that allows you to grant a verified partner the authorization to create resources in your resource group.

      重要

      認可の有効期限が切れた後は、パートナーが Azure サブスクリプションにリソース (パートナー トピック) を作成できなくなります。

  6. [パートナー構成の作成] ページに戻り、下部にあるパートナー承認リストに、パートナーが追加されていることを確認します。

  7. ページ下部にある [確認と作成] を選択します。

  8. [確認] ページで、すべての設定を確認し、[作成] を選択してパートナー登録を作成します。

Auth0 パートナー トピックを設定する

統合プロセスの一部として、Auth0 ダッシュボードを使用して、Auth0 をイベント ソースとして設定して使用します。

  1. Auth0 Dashboard にログインします。
  2. [監視]>[ストリーム] に移動します。
  3. [+ ログ ストリームの作成] をクリックします。
  4. [Azure Event Grid] を選択し、新しいストリームの一意の名前を入力します。
  5. [サブスクリプション ID] で、Azure サブスクリプション ID を入力します。
  6. [Azure リージョン] で、リソース グループが存在する Azure リージョンを選択します。
  7. [リソースグループ] で、リソース グループ名を入力します。
  8. [イベント カテゴリでフィルター処理する] で、[すべて] を選択するか、特定のイベントの種類でフィルター処理します。
  9. 特定の日時にストリームを開始したい場合は、[ストリーム開始の日時を指定する] オプションを選択します。
  10. [保存] をクリックします。

指定したリソース グループにパートナー トピックが表示されます。 パートナー トピックをアクティブ化して、パートナー トピックへのイベント フローが開始するようにします。 次に、イベントをサブスクライブします。

Screenshot showing the partner topic in the list.

パートナー トピックをアクティブ化する

  1. Azure portal の検索バーで、Event Grid パートナー トピックを検索して選択します。

  2. [Event Grid パートナー トピック] ページで、一覧からパートナー トピックを選択します。

    Screenshot that shows selection a partner topic in the Event Grid Partner Topics page.

  3. アクティブにするメッセージを確認し、ページまたはコマンド バーの [アクティブ化] を選択して、ページに掲載されている有効期限が切れる前にパートナー トピックをアクティブにします。

    Screenshot showing the selection of the Activate button on the command bar or on the page.

  4. [アクティブ化の状態] が [アクティブ化済み] に設定されていることを確認し、コマンド バーで [+ イベント サブスクリプション] を選択してパートナー トピックのイベント サブスクリプションを作成します。

    Screenshot showing the activation state of a partner topic as **Activated**.

イベントをサブスクライブする

まず、パートナーからのイベントを処理するイベント ハンドラーを作成します。 たとえば、イベント ハブ、Service Bus キューまたはトピック、または Azure 関数を作成します。 次に、作成したイベント ハンドラーを使用してパートナー トピックのイベント サブスクリプションを作成します。

イベント ハンドラーの作成

パートナー トピックをテストするには、イベント ハンドラーが必要です。 お使いの Azure サブスクリプションに移動し、イベント ハンドラーとしてサポートされているサービス (Azure 関数など) を開始します。 例については、Webhook を介してイベント ハンドラーとして使用できる Event Grid ビューアーのサンプルを参照してください。

パートナー トピックをサブスクライブする

パートナー トピックをサブスクライブすると、パートナー イベントの配信先が Event Grid に通知されます。

  1. Azure portal の検索ボックスに「Event Grid パートナー トピック」と入力し、Event Grid パートナー トピックを選択します。

  2. [Event Grid パートナー トピック] ページで、一覧からパートナー トピックを選択します。

    Screenshot showing the selection of a partner topic on the Event Grid Partner Topics page.

  3. パートナー トピックの [Event Grid パートナー トピック] ページで、コマンド バーの [+ イベント サブスクリプション] を選択します。

    Screenshot showing the selection of Add Event Subscription button on the Event Grid Partner Topic page.

  4. [イベント サブスクリプションの作成] ページで、次の手順を実行します。

    1. イベント サブスクリプションの名前を入力します。

    2. [イベントの種類のフィルター] では、お使いのサブスクリプションで受け取るイベントの種類を選択します。

    3. [エンドポイントの種類] では、Azure サービス (Azure Function、Storage キュー、Event Hubs、Service Bus キュー、Service Bus トピック、ハイブリッド接続など)、webhook を選択します。

    4. [エンドポイントの選択] リンクをクリックします。 この例では、Azure Event Hubs の宛先またはエンドポイントを使用しましょう。

      Screenshot showing the configuration of an endpoint for an event subscription.

    5. [イベント ハブの選択] ページで、エンドポイントの構成を選択し、[選択の確認] を選択します。

      Screenshot showing the configuration of an Event Hubs endpoint.

    6. 次に、[イベント サブスクリプションの作成] ページで、[作成] を選択します。

      Screenshot showing the Create Event Subscription page with example configurations.

イベントの発行をトリガーする Auth0 アクションを呼び出してみて、イベントのフローを確認します。

統合を確認する

統合が意図したとおりに動作していることを確認するには:

  1. Auth0 Dashboard にログインします。
  2. [監視]>[ストリーム] に移動します。
  3. [Event Grid ストリーム] をクリックします。
  4. ストリームで、[正常性] タブをクリックします。ストリームは、アクティブになっている必要があります。エラーが表示されない限り、ストリームは動作しています。

配信の試行と再試行

Auth0 イベントは、ストリーミング メカニズムを使用して Azure に配信されます。 各イベントは、Auth0 でトリガーされると送信されます。 Event Grid がイベントを受信できない場合、Auth0 ではイベントの配信が最大 3 回再試行されます。 それ以外の場合は、配信失敗が Auth0 によってシステムに記録されます。

次のステップ