発見
issuer メタデータを読み、利用できるエンドポイントとスコープを確認します。
同意からアイデンティティまでを、落ち着いて進められる標準準拠の経路です。
信頼されているプロバイダーでログインを構築できます。このページは OAuth 2.1、OpenID Connect、S256 PKCE に基づく動作するパブリッククライアント例です。
ライブ OAuth プレイグラウンド
パブリッククライアント · S256 PKCE
token_endpoint_auth_method を none に設定したパブリッククライアントを使用してください。ここにはクライアントシークレットを貼り付けないでください。
OAuth クライアントにこの URL を正確に登録してください。このページでは現在のページ URL を使用します。
クライアントが受け取る情報
フロー
プロトコルが複雑な処理を担います。アプリは state を保持し、レスポンスを検証し、アイデンティティをどう扱うかを決めます。
issuer メタデータを読み、利用できるエンドポイントとスコープを確認します。
一度きりの state と S256 PKCE チャレンジを付けて、ユーザーを Deni AI に案内します。
一度きりの認可コードをアクセストークンとリフレッシュトークンに交換します。
アクセストークンで UserInfo を呼び出し、アプリのセッションを作成します。
小さなクライアント実装
この例ではブラウザの state、認可、トークン交換、アイデンティティ取得を分け、各セキュリティ判断をコードレビューで確認できるようにしています。
const discovery = "/.well-known/openid-configuration";
const authorize = "/api/auth/oauth2/authorize";
const token = "/api/auth/oauth2/token";
const userInfo = "/api/auth/oauth2/userinfo";プロトコルの表面
/api/auth/oauth2/authorize/api/auth/oauth2/token/api/auth/oauth2/userinfo/.well-known/openid-configuration対応スコープ: openid、profile、email、offline_access。ライブフローを始める前に、正確なコールバック URL を持つパブリッククライアントを登録してください。