aud) を指定する必要があります。詳しくは、アクセストークンを参照してください。
JWTでカスタムクレームを設定する際は、名前の衝突を避ける必要があります。予約済みクレームや他のリソースのクレームと衝突しないよう、カスタムクレームには衝突しにくい名前を付けてください。Auth0では、名前空間付きの形式を推奨しています。
Auth0では名前空間付きクレームと非名前空間クレームの両方を使用できますが、いくつかの制限があります (一般的な制限を参照) 。名前の衝突を避けるため、名前空間付きクレームの使用を推奨します。衝突が発生してもトランザクション自体は失敗しませんが、カスタムクレームはトークンに追加されません。
一般的な制限
- カスタムクレームのペイロードの最大サイズは 100KB です
- OPENID 標準クレームおよび Auth0 が内部で使用するクレームは、カスタマイズまたは変更できません
- Auth0 API の オーディエンス を持つ には、
/userinfoエンドポイントを除き、非名前空間のプライベートなカスタムクレームを含めることはできません - 指定された OIDC ユーザープロファイルクレームのみをアクセストークンに追加できます
acractactiveamrat_hashathattestaudauth_timeauthorization_detailsazpc_hashclient_idcnfctydestentitlementseventsexpgroupsgtyhtmhtuiatinternalServiceissjcardjkujtijwejwkkidmay_actmkynbfnonceobject_idorg_idorg_nameorigorigidpermissionsrolesrphs_hashsidsip_callidsip_cseq_numsip_datesip_from_tagsip_via_branchsubsub_jwktoetxntypuuidvotvtmx5t#S256
制限対象外のクレーム
addressbirthdateemailemail_verifiedfamily_namegendergiven_namelocalemiddle_namenamenicknamephone_numberphone_number_verifiedpicturepreferred_usernameprofileupdated_atwebsitezoneinfo
名前空間付きガイドライン
Auth0 の URN
urn:auth0 は、名前空間識別子として使用できません。-
名前空間識別子には、Auth0 以外の任意の HTTP または HTTPS URL を使用します。Auth0 ドメインは名前空間識別子として使用できません。これには次が含まれます。
- auth0.com
- webtask.io
- webtask.run
- 名前空間識別子には、自分で管理している URL を使用してください。これにより、他の誰かが同じ名前空間を使用しているリスクを避けられます。名前空間 URL は実際のリソースを指している必要はありません。これは識別子としてのみ使用され、呼び出されることはありません。
-
URL は
http://またはhttps://で始めてください。 -
また、カスタム API を使用している場合は、URN ベースの名前空間識別子を使用することもできます。その場合、Auth0 の URN
urn:auth0は予約されており、名前空間識別子として使用できません。 - 必要に応じて複数の名前空間を作成します。
http://www.example.com/favorite_color
非名前空間クレームのガイドライン
- アプリケーションでどうしても必要な場合を除き、衝突を回避できる公開の名前空間付きカスタムクレームを使用してください。
- クレームは、意味が明確で衝突を回避できる名前で作成してください。たとえば、
e_idではなくemployee_idを使用します。 - クレーム名とその値はできるだけ軽量にし、アプリケーションに本当に必要なデータだけを含めてください。
- カスタムクレームに重いペイロードを割り当てることは避けてください。
カスタムクレームを作成する
api オブジェクトでは、アクセストークンまたは ID トークンに対して setCustomClaim メソッドを使用できます。