Auth0 Dashboard またはManagement API を使用してOrganization メンバーシップの招待状を送ることができます。
Auth0ダッシュボード
Auth0 Dashboardを通じてメンバーを招待する方法:
[Auth0 Dashboard]>[Organization] に移動して、メンバーシップを構成したい組織を選択します。
招待状 ビューを選択し、メンバーの招待 を選択します。
メンバーを招待したいアプリケーションを選択し、組織に招待したいメンバーのメールアドレスを入力し [招待状の送信] を選択します。
任意で、招待を受け入れてもらいたいユーザーの接続を指定したり、招待を受け入れた組織メンバーに割り当てたいロールを指定したりできます。
Management API
アプリケーション用にカスタム開発した管理者ダッシュボードから招待機能を公開する場合は、必ず機密アプリケーションを使用して、認証されたユーザーが新しいメンバーを既に所属している組織に招待していることを確認するか、他のユーザーを招待する権限を、特定のロールが割り当てられているメンバーのみに限定します。
Management APIでメンバーを招待する方法:
Create Organization Invitations(組織への招待状の作成)エンドポイントにPOST呼び出しを行います。ORG_ID、MGMT_API_ACCESS_TOKEN、NAME_OF_USER、EMAIL_ADDRESS、CLIENT_ID、CONNECTION_ID、EXP_TIME、ROLE_ID、SEND_INVITATION_EMAIL_OPTIONプレースホルダー値のそれぞれを組織ID、Management APIアクセストークン、招待されたユーザーの名前、招待されたユーザーのメールアドレス、クライアントID,接続ID,有効期限、役割IDに置き換えてください。
{
"method" : "POST" ,
"url" : "https://{yourDomain}/api/v2/organizations/ORG_ID/invitations" ,
"headers" : [
{ "name" : "Content-Type" , "value" : "application/json" },
{ "name" : "Authorization" , "value" : "Bearer MGMT_API_ACCESS_TOKEN" },
{ "name" : "Cache-Control" , "value" : "no-cache" }
],
"postData" : {
"mimeType" : "application/json" ,
"text" : "{ \" inviter \" : { \" name \" : \" NAME_OF_USER \" }, \" invitee \" : { \" email \" : \" EMAIL_ADDRESS \" }, \" client_id \" : \" CLIENT_ID \" , \" connection_id \" : \" CONNECTION_ID \" , \" ttl_sec \" : \" EXP_TIME \" , \" roles \" : [ \" ROLE_ID \" , \" ROLE_ID \" , \" ROLE_ID \" ], \" send_invitation_email \" : \" SEND_EMAIL_INVITATION_OPTION \" }"
}
}
Auth0ドメインを見つける テナント名がAuth0ドメインである場合は、地域のサブドメイン(テナントが米国地域にあり、2020年6月より前に作成された場合を除く)の後に「.auth0.com」が続きます。たとえば、テナント名が「travel0」の場合、Auth0のドメイン名は「travel0.us.auth0.com」になります。(テナントが米国内にあって、2020年6月よりも前に作成された場合、ドメイン名は「https://travel0.auth0.com」になります。) カスタムドメインを使用している場合には、これがカスタムドメイン名になります。
値 説明 ORG_IDメンバーシップを割り当てたい組織のIDです。 MGMT_API_ACCESS_TOKENcreate:organization_invitationsスコープを含むManagement APIのアクセストークン です。NAME_OF_USER招待を送信したいユーザーの名前です。最大文字数は300文字です。 EMAIL_ADDRESS招待の送信先となるメールアドレスです。 CLIENT_ID招待されたユーザーの認証が必要となるアプリケーションのIDです。 CONNECTION_ID招待されたメンバーの認証に使用する接続のIDです。 EXP_TIME招待が期限切れになるまでの秒数です。未指定または0に設定すると、デフォルト値である604800秒(7日)が適用されます。上限は2592000秒(30日)です。 ROLE_ID指定された組織で招待されたユーザーに割り当てたいロールのIDです。メンバー1人について50ロールが上限です。 SEND_INVITATION_EMAIL_OPTIONAuth0がメールを送信するのかを指定します。値はtrueまたはfalseです。falseに設定した場合、Auth0が招待のURLを生成し、それを独自のメールサービスでユーザーに送信することができます。
応答ステータスコード
可能性のある応答ステータスコードは以下の通りです:
ステータスコード エラーコード メッセージ 原因 200Invitation successfully created.(招待が正常に作成されました。) 400invalid_bodyThe specified client_id does not exist.(指定されたclient_idが存在しません。) 要求ペイロードが無効です。 400invalid_bodyThe specified connection does not exist.(指定された接続が存在しません。) 要求ペイロードが無効です。 400invalid_bodyPasswordless connections are not supported.(パスワードレス接続には対応していません。) 要求ペイロードが無効です。 400invalid_bodyA default login route is required to generate the invitation url.(招待URLを生成するには、デフォルトのログインルートが必要です。)詳細については、「デフォルトのログインルートを構成する 」を参照してください。 要求ペイロードが無効です。 400invalid_bodyOne or more of the specified roles do not exist: role1, role2’.(指定された1つ以上のロールが存在しません:ロール1、ロール2。) 要求ペイロードが無効です。 400invalid_bodyInvalid request body.(要求ボディーが無効です。)メッセージは原因によって異なります。 要求ペイロードが無効です。 400invalid_query_stringInvalid request query string.(要求クエリ文字列が無効です。メッセージは原因によって異なります。クエリ文字列が有効ではありません。 401Invalid token.(無効なトークンです。) 401Invalid signature received for JSON Web Token validation.(JSON Web Tokenの検証に無効な署名を受け取りました。) 401Client is not global.(クライアントがグローバルではありません。) 403insufficient_scopeInsufficient scope; expected any of: create:organization_invitations.(スコープが不足しています。create:organization_invitationsが必要です。) 渡されたベアラートークンのスコープでは許可されないフィールドの読み込みや書き出しが試行されました。 404No organization found by that id.(指定されたIDの組織が存在しません。) 429Too many requests.Check the X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers.(要求が多すぎます。X-RateLimit-Limit、X-RateLimit-Remaining、X-RateLimit-Resetヘッダーを確認してください。)