API コネクタを使用してセルフサービス サインアップをカスタマイズおよび拡張する

概要

開発者または IT 管理者は、API コネクタを使用し、セルフサービス サインアップ ユーザー フローと Web API を統合してサインアップ体験をカスタマイズしたり、外部システムと統合したりできます。 たとえば、API コネクタを使用すると、次のことができます。

  • カスタム承認ワークフローと統合します。 アカウントの作成を管理したり、制限したりするには、カスタム承認システムに接続します。
  • 本人確認を実行します。 本人確認サービスを使用して、アカウント作成の決定のセキュリティ レベルを向上させます。
  • ユーザー入力データの検証。 不正な、または無効なユーザー データに対する検証を行います。 たとえば、ユーザーが提供したデータを外部データ ストア内の既存のデータまたは許可されている値の一覧と照らし合わせて検証することができます。 無効な場合は、有効なデータを提供するようユーザーに求めることも、ユーザーがサインアップ フローを続行できないようにすることもできます。
  • ユーザー属性を上書する ユーザーから収集された属性を再フォーマットし、それに値を割り当てます。 たとえば、ユーザーが名をすべて小文字または大文字で入力する場合に、名の最初の文字だけを大文字にするように書式設定できます。
  • カスタム ビジネス ロジックを実行します。 ご利用のクラウド システム内で下流イベントをトリガーすれば、プッシュ通知の送信、企業データベースの更新、アクセス許可の管理、データベースの監査、およびその他のカスタム アクションの実行を行うことができます。

API コネクタは、API 呼び出しに関する HTTP エンドポイントの URL と認証を定義することで、API エンドポイントを呼び出すために必要な情報を Microsoft Entra ID に提供します。 API コネクタを構成したら、それをユーザーフローの特定のステップに対して有効にすることができます。 サインアップ フローでユーザーがこのステップに達すると、API コネクタが呼び出され、HTTP POST 要求として具体化されて、ユーザー情報 ("クレーム") を JSON 本文のキーと値のペアとして送信します。 API 応答は、ユーザー フローの実行に影響を与える可能性があります。 たとえば、API 応答によって、ユーザーのサインアップがブロックされたり、ユーザーが情報の再入力を求められたり、ユーザー属性が上書きおよび追加されたりする可能性があります。

ユーザー フロー内で API コネクタを有効にできる場所

ユーザー フロー内には、API コネクタを有効にできる場所が 2 か所あります。

  • サインアップ時に ID プロバイダーとのフェデレーションを行った後
  • ユーザーを作成する前

重要

どちらの場合も、API コネクタは、サインイン時ではなく、ユーザーのサインアップ時に呼び出されます。

サインアップ時に ID プロバイダーとのフェデレーションを行った後

サインアップ プロセスのこの手順での API コネクタは、ID プロバイダー (Google、Facebook、 Microsoft Entra ID など) でユーザーが認証された直後に呼び出されます。 このステップは、属性コレクション ページ (ユーザーに提示される、ユーザー属性を収集するためのフォーム) の前にあります。 ユーザーがローカル アカウントを使用して登録している場合、このステップは呼び出されません。 このステップでお客様が有効する可能性がある API コネクタのシナリオの例を次に示します。

  • ユーザーが入力した電子メールまたはフェデレーション ID を使用して、既存のシステム内でクレームを検索します。 既存のシステムからこれらのクレームを返し、属性コレクション ページを事前に入力して、それらをトークンで返すことができるようにします。
  • ソーシャル ID に基づいて許可または禁止リストを実装します。

ユーザーを作成する前

サインアップ プロセスのこのステップでの API コネクタは、属性コレクション ページが含まれている場合、その後に呼び出されます。 このステップは、ユーザー アカウントが作成される前に必ず呼び出されます。 お客様がサインアップ中にこのポイントで有効にする可能性があるシナリオの例を次に示します。

  • ユーザー入力データを検証し、データの再送信をユーザーに求めます。
  • ユーザーが入力したデータに基づいてユーザーのサインアップをブロックします。
  • 本人確認を実行します。
  • 外部システムに対して、ユーザーに関する既存のデータをクエリして、それをアプリケーション トークンで返すか、Microsoft Entra ID に格納します。

次のステップ