クイックスタート

各クイックスタートでは、空のプロジェクトから、有効な KeenAuth のアクセストークンのみを受け付ける API、またはユーザーをサインインさせるウェブアプリまで、フレームワークごとに構築します。各クイックスタートは、SDK のテストキットを使ってオフラインで実行できるサンプルから作成されているため、これらのページのコードは、テストで検証されているコードそのものです。

API を保護する

フレームワーク クイックスタート
Go net/http Go API を保護する
Node.js Express Express API を保護する
Python FastAPI FastAPI API を保護する
Python Django Django API を保護する

4 つの API クイックスタートはすべて、同じ API を構築します。公開エンドポイント、有効なアクセストークンを必要とするエンドポイント、さらに messages:read スコープも必要とするエンドポイントです。構成は環境変数からのみ読み取ります。

変数 意味
KEENAUTH_ISSUER 環境の発行者です。例:https://your-environment.eu.keenauth.app
KEENAUTH_AUDIENCE お使いの API の識別子で、そのアクセストークンのオーディエンスです
PUBLIC_BASE_URL クライアントが呼び出す URL です。必須で、https を使用します(localhost の場合のみ http を使用できます)

ユーザーのサインイン

フレームワーク クイックスタート
Next.js(App Router) Next.js アプリにサインインを追加する
React シングルページアプリ(Vite) React シングルページアプリにサインインを追加する
React Router(フレームワークモード) React Router アプリにサインインを追加する
Laravel Laravel アプリにサインインを追加する
Spring Boot Spring Boot アプリにサインインを追加する
ASP.NET Core ASP.NET Core アプリにサインインを追加する

Next.js アプリは OAuth クライアントであり、すべてのトークンをサーバー側で保持します。React Router アプリも同様で、標準の OpenID Connect クライアントである openid-client を使用します。React シングルページアプリはパブリッククライアントです。そのトークンはブラウザのメモリに保持され、DPoP 鍵に紐付けられます。その他のウェブアプリは、各フレームワークの標準的な OpenID Connect クライアントライブラリを使用し、すべてのトークンをサーバー側のセッションに保持します。いずれも構成は環境変数から読み取り(各ページを参照してください)、ユーザーのアクセストークンを使って保護された API を呼び出します。

Fastify と Flask も同じミドルウェアを使用します。ミドルウェアで API を保護する を参照してください。