OIDC準拠パイプラインを適用する
新しいテナント
OIDC Conformant 設定を手動で無効にしている可能性もあります。その場合は、古いテナント向けの手順に従ってください。
以前のテナント
- Auth0 Dashboard > Applications > Applications に移動し、対象のアプリケーションを選択します。
- Advanced Settings までスクロールし、OAuth タブを開きます。
- OIDC Conformant トグルスイッチを有効にして、Save Changes をクリックします。
audience パラメーターを付けて /social エンドポイントへのリクエストを開始します。
認証リクエストごとに OIDC 準拠パイプラインを使用し、アプリケーションで API を呼び出す必要がない場合は、次の audience パラメーターを使用します。
違い
APIs
アクセストークン
- API は、 ではなく、アクセストークンで保護する必要があります。違いについて詳しくは、Tokens をご覧ください。
- ユーザーに関する標準クレームの定義済みセットは、IDトークン または
/userinfoのレスポンスで返すことができます。 - カスタムクレームは、名前空間付きの形式に準拠している必要があります。詳しくは、Create Namespaced Custom Claims をご覧ください。
/userinfoのレスポンスは、IDトークン の内容と同様に、OIDC 仕様に準拠します- スコープを使用して、標準クレームまたはカスタム API 権限のいずれかをリクエストできます。
- 認可コードフロー: 認証リクエスト、認証レスポンス、コード交換リクエスト、コード交換レスポンス、IDトークンの構造、およびアクセストークンの構造に違いがあります。
- クライアントクレデンシャルフロー: 新しいフローが有効になり、アプリケーションはユーザーの代理ではなく自分自身として認証し、API へのアクセスをプログラムから安全に取得できるようになります。
-
暗黙フロー: 認証リクエスト、認証レスポンス、IDトークンの構造、およびアクセストークンの構造に違いがあります。具体的には、次のとおりです。
response_type=tokenではアクセストークンのみが返されます。IDトークンを取得するには、response_type=id_tokenまたはresponse_type=token id_tokenを使用してください。- IDトークンは RS256 を使用して非対称署名されます。
- nonce パラメーターなしで送信された認証リクエストは拒否されます。詳細については、Mitigate Replay Attacks When Using Implicit Flow を参照してください。
- 認証で暗黙フローを使用した場合、リフレッシュトークンは返されなくなります。
-
リソース所有者パスワードフロー: 認証リクエスト、認証レスポンス、IDトークンの構造、およびアクセストークンの構造に違いがあります。具体的には、次のとおりです。
- 従来の resource owner endpoint は無効化されており、その結果、このエンドポイントからの埋め込みログイン向けパスワードレス認証も利用できなくなります。埋め込みログインで Passwordless を実装する には、アプリケーションの種類に応じて Embedded Passwordless API または当社の SDK を使用する必要があります。
offline_accessスコープを使用してリフレッシュトークンをリクエストする場合、deviceパラメーターは無効と見なされるようになりました。
デリゲーション
- 非推奨: サードパーティ API トークンの取得に使用する場合を除き、
/delegationエンドポイントは非推奨です。 - OIDC 準拠のアプリケーションは、デリゲーションリクエストの送信元にも送信先にもできません。
エンドポイント
- 非推奨:
/tokeninfoエンドポイント - 無効:
/oauth/access_tokenエンドポイント (ネイティブモバイルアプリケーションからのソーシャル認証に使用) 。 - 非推奨:
/ssodataエンドポイント - 非推奨: サードパーティ API トークンの取得に使用する場合を除き、
/delegationエンドポイント
リフレッシュトークン
- は、認証で 暗黙的フロー を使用している場合は返されなくなります。
- リフレッシュトークンは機密アプリケーションで使用できますが、 を使うことで、ほとんどのフローでセキュリティを強化できます。また、PKCE を使用する 認可コードフロー では、公開アプリケーションでは常にこれを使用する必要があります。機密アプリケーションについては、Confidential and Public Applications を参照してください。リフレッシュトークンローテーションの詳細については、Refresh Token Rotation を参照してください。
- 新しいトークンを取得する際は、
/oauth/tokenエンドポイントを使用してください。 - 認証リクエストで
offline_accessスコープを使用してリフレッシュトークンをリクエストする場合、deviceパラメーターは不要になりました。
シングルサインオン (SSO)
- は Auth0 のログインページでのみ実行できるため、 を使用する必要があります。
- ユーザーが SSO でログインしているかどうかを確認するには、サイレント認証を使用する必要があります。詳しくは、サイレント認証を設定する を参照してください。
- 非推奨:
/ssodataエンドポイントおよびLock/auth0.jsのgetSSOData()メソッド。
追加機能
- API向けのサードパーティアプリケーションを作成し、認可時に同意ダイアログを表示できます。詳しくは、ユーザーの同意とサードパーティアプリケーションをご覧ください。
- 認証時にアプリケーションに提供されるユーザープロファイル情報を制限できます。詳しくは、ユーザープロファイルをご覧ください。
- アプリケーションを動的に登録できます。詳しくは、Dynamic Client Registrationをご覧ください。
- Organizations とその関連機能が利用可能になります。