利用可否はAuth0のプランによって異なります
この機能を利用できるかどうかは、ログイン実装の内容と、Auth0のプランまたはカスタム契約の両方によって決まります。詳しくは、Pricingをご覧ください。
制限事項
- Auth0で送信できるユーザー招待はメール経由のみです。別の方法で招待を送りたい場合は、招待URLのみを生成することもできます。
- 招待されたユーザーは、招待の送信先メールアドレスを使ってログインするか、アカウントを作成する必要があります。
メンバーシップ招待フローをアプリケーションに統合する
ユーザー招待を機能させるには、招待の受諾フローの一部としてアプリケーションにルートを設定し、テナントまたはアプリケーションに対して関連するデフォルトのログインルートを設定する必要があります。設定した URI へのリンクは、ユーザーに送信される招待メールに含まれます。URIを設定する
URI をすべてのアプリケーションで共有する場合は、Auth0 Dashboard > Settings > Advanced で Tenant Login URL を設定できます。共有しない場合は、Auth0 Dashboard > Applications > Applications から開けるアプリケーションの設定で Application Login URI を使用して、アプリケーションごとに URI を設定できます。ルートの動作を指定する
アプリケーション内のルートは、クエリ文字列内のinvitation および organization パラメーターを受け取り、その後、両方のパラメーターを付けて Auth0 Authentication API の Authorization エンドポイントを呼び出す必要があります。
アプリケーション内で organization名 をサブドメインまたはパス変数として使用するマルチテナントのシナリオ (たとえば
acme.myapp.com) をサポートするため、ユーザーに送信される招待リンクには organization_name パラメーターも含まれます。このパラメーターを Authentication API の Authorization エンドポイントに送信する必要はありません。https://myapp.com/login に設定されている organization 対応のアプリケーションがある場合、エンドユーザーに送信されるメール招待内のリンクは次のようになります。https://myapp.com/login?invitation={invitation_ticket_id}&organization={organization_id}&organization_name={organization_name}
ユーザー招待フローをカスタマイズする
ユーザー招待フローをカスタマイズするには、カスタムドメインを使用する必要があります。Free プランでは 1 つのカスタムドメインを無料で利用でき、追加のカスタムドメインはすべての有料プランで利用できます。
ローカライズ
招待するユーザーのロケールは事前にはわからないため、 を使用して、任意のuser_metadata パラメータを招待エンドポイントに送信できます。ユーザー招待フローをローカライズする際は、User Invitation メールテンプレートからこのパラメータにアクセスし、他の多言語メールテンプレートと同じロジックを使用できます。
招待されたユーザーが適切な言語で招待内容を表示するには、アプリケーションが ui_locales パラメータを送信するか、招待されたユーザーのブラウザーが適切な Accept-Language ヘッダーを送信する必要があります。詳しくは、メールテンプレートのカスタマイズ: 多言語メールテンプレートを参照してください。
メンバーシップ招待を送信する
または Management API を使用して、ユーザーに organization のメンバーシップ招待を送信 できます。独自のメールサービスで招待を送信したい場合は、招待 URL のみを生成することもできます。それ以外の場合は、ユーザーにリンクを含むメールが送信され、そのリンクから構成済みの接続を使用して organization にログインできます。ユーザーが招待を承諾すると、そのメールアドレスは確認済みとしてマークされます。ユーザーがフェデレーションログイン経由で招待を承諾する場合、アイデンティティプロバイダーは、招待の送信先と一致するメールアドレスを返す必要があります。メールアドレスの確認状態は、その後のログイン時にアイデンティティプロバイダーから返される値で上書きされることはありません。ユーザーが有効期限までに招待を承諾しない場合、その招待は期限切れとしてマークされ、最終的に Auth0 Dashboard から削除されます。