本記事は「Build Real-Time Identity Pipelines with Auth0 Event Streams - Now General Available」を翻訳した記事です。
Auth0上で構築している場合、Auth0がアイデンティティの信頼できる情報源である可能性が高いです。しかしアイデンティティデータは孤立して存在するわけではありません。Auth0でユーザーを作成した際、CRMに通知する必要があります。誰かを無効化した際、課金システムはシートの課金を停止する必要があります。グループメンバーシップを変更した際、下流のプロビジョニングを開始する必要があります。シグナルは数時間後や脆弱なバッチジョブ経由ではなく、数秒以内に到達する必要があります。
Auth0 Event Streamsが一般提供(GA)開始となり、Auth0からスタック全体への信頼性の高いイベント駆動型ワークフローを提供します。
課題: バッチジョブとポーリングでは不十分
アイデンティティデータに依存するチームにおいて、開発者は変更を捉えるためだけにカスタムのポーリングロジックや脆弱な統合を構築し維持する必要があります。更新をリアルタイムで配信しないため、数時間後に取得することがよくあります。結果としてシステムは同期しなくなり、イベントを見逃します。オンボーディングが遅れ、CRMデータが遅延し、複雑さが増します。
Event Streamsはアイデンティティの変更をリアルタイムで配信することで、オーバーヘッドの多くを排除します。
Auth0 Event Streamsの紹介: Auth0からスタックへのイベント駆動型ワークフロー
Event Streamsを使用すると、Auth0でのUser、Organization、Groupイベントの完了した変更をサブスクライブできます。Webhooks、Amazon EventBridge、またはAuth0 Actionsを使用して任意の宛先にイベントをルーティングできます。
すべては認証フローの外部で非同期に発生します。ログインは高速なままであり、ユーザーに影響を与えません。そして下流のシステムは組み込みの再試行ロジックと配信監視により、必要なシグナルを確実に取得します。
実際には以下のことが可能になります。
- 組み込みの再試行による配信保証。イベントを確実に配信し、独自の再試行ロジックを記述せずに障害を検出し回復できます。
- 複数の宛先タイプ。Amazon EventBridge、Webhooks、またはAuth0 Actionsなど、アーキテクチャに適合する宛先にイベントをルーティングします。
- 認証フローからの分離。ログインや登録に遅延を追加せずに、アイデンティティの変更をシステムに伝播します。
詳細はAuth0 Docs: Create an Event Streamを確認ください。
一般提供された新機能
ユーザーライフサイクルイベントと組織イベントを提供した早期アクセス期間を経て、Event Streamsが一般提供開始となりました。一般提供では4つの主要な機能を追加しています。
アウトバウンドSCIM向けのグループイベント
企業ディレクトリからgroup.createdやgroup.deleted、group.updated、group.member.added、およびgroup.member.deletedのグループイベントをサブスクライブできるようになりました。
システムは個々のユーザーの変更だけでなく、ライセンスやアクセス制御、プロビジョニングの決定を促進するグループレベルのメンバーシップの変更にも反応できます。
宛先としてのAuth0 Actions
統合パイプラインをシンプルかつ回復力のある状態に保つための画期的な機能です。AWS LambdaやVercel関数、Cloudflare Workerなどの外部Webhookレシーバーをデプロイする代わりに、Auth0のサーバーレスランタイム内に直接JavaScriptを記述します。Actionsコードはペイロードを変換し、不要なイベントを除外して外部APIを呼び出せます。ロジックがソースで実行するため、障害点の数を減らし、転送中や中間システム間でのデータ露出を制限します。またデプロイおよび監視するレイヤーの数を減らすのにも役立ちます。
Events API(プルベース)
すべてのユースケースがプッシュモデルに適合するわけではありません。新しいEvents APIを使用すると、カーソルベースのページネーションを介して独自のスケジュールでイベントを消費できます。データを取り込むタイミングと量を制御します。下流で問題が発生した場合、特定のオフセットから再生できます。データ損失はありません。
Webhookに伴う予測不可能なボリュームの急増を回避するため、データ同期のユースケース、特にユーザーおよびディレクトリイベントに推奨するアプローチです。とはいえ即時のプッシュベースの配信を必要とするユースケースでは、Webhookが引き続き確実な選択肢となります。
Webhooksのカスタムヘッダー認証
WebhookにEvent Streamsをプロビジョニングする際、カスタムヘッダー認証を選択できるようになりました。これによりOkta Workflowsなど、Basic認証やBearer認証をサポートしないWebhookエンドポイントにイベントを送信できます。
チームがEvent Streamsを使用する3つの方法
1. 内部システム間でアイデンティティデータの一貫性を保つ
ほとんどのチームは独自のデータベースやデータウェアハウス、またはレポートプラットフォームにアイデンティティデータのコピーを保持しています。課題はデータを最新の状態に保つことです。
Event Streamsを使用すると、Auth0でユーザーを作成したりプロファイルを更新したりした際、イベントが自動的に発生します。内部ユーザーデータベースやデータウェアハウス(SnowflakeやBigQueryなど)、またはレポートシステムにルーティングできます。更新はポーリングやバッチジョブなしで、ほぼリアルタイムに発生します。
システム間のデータの一貫性はあればよいというものではないため重要です。正確なレポートやコンプライアンス、ディザスタリカバリの基盤となります。
2. CRMおよびサードパーティシステムでのアイデンティティの変更に反応する
アイデンティティの変更はアイデンティティ自体を超えた影響を及ぼすことがよくあります。ユーザーを無効化した際、サポートプラットフォームに通知する必要があります。新しいユーザーがサインアップした際、ライセンスシステムはシートを割り当てる必要があります。ユーザーを削除した際、シートを解放する必要があります。
Event Streamsを使用すると、変更に反応してCRMや課金プラットフォーム、ライセンスAPI、その他のサードパーティシステムに更新を自動的にプッシュできます。
シート数の不一致はなくなります。数日前に取り消すべきだったアクセスに関するサポートチケットもなくなります。
3. アイデンティティの変更から下流のワークフローをトリガーする
アイデンティティの変更はビジネスイベントであり、ワークフロー全体を開始する必要があるものもあります。新しい組織を作成しましたか。専用のワークスペースを立ち上げ、リソースをプロビジョニングし、カスタマーサクセスチームに通知する必要があります。ユーザーに管理者ロールを割り当てましたか。下流のアクセス設定をトリガーする必要があります。
Event Streamsはイベントを下流のアプリケーションにルーティングし、自動化を構築するための構成要素を提供します。アイデンティティの変更が単なるデータ更新にとどまらず、実際のビジネスプロセスを推進し始めます。
Event Streamsの動作を確認する
ユーザーライフサイクルイベントがOktaからAuth0を通じて伝播し、Event Streams経由でHubspotに送信する様子を示すデモ動画を確認ください。
注: デモで示すデータは説明のみを目的としています。
はじめてみましょう!
Auth0 Event Streamsはすべてのお客様に利用いただけます。データベースの同期を維持したい場合や、スタック全体でアイデンティティの変更に反応したい場合、または複雑なマルチステップのワークフローを自動化したい場合でも、Event Streamsは構築のための信頼性が高くスケーラブルな基盤を提供します。
Event StreamsはFreeプランを含むすべてのプランで利用可能です。
👉 最初のEvent Streamを設定するには無料で開始するか、詳細についてAuth0 Docsを確認ください。
About the author

Linda Gong
Staff Product Marketing Manager
