【Next.js】Auth.jsとKeycloakで実装する認証基盤 その2 ~セキュリティ強化編~
Next.js v15 と Auth.js v5 を使い、Keycloak と連携してログイン機能を実装する方法を学びます。今回は、セッションの有効期限やOIDCの設定を追加し、セキュリティを強化します。
Next.js v15 と Auth.js v5 を使い、Keycloak と連携してログイン機能を実装する方法を学びます。今回は、セッションの有効期限やOIDCの設定を追加し、セキュリティを強化します。
Next.js v15とAuth.js v5を使ってKeycloakと連携したログイン機能の実装方法について学習した内容を説明します。特にSessionProviderの設定、ミドルウェアを使用した認証制御、複数のミドルウェアの組み合わせ方など、具体的な実装例を交えて解説していきます。
KeycloakのアクセストークンにあるAudience(aud)クレームの設定方法について学習した内容を説明します。デフォルトで「account」となっているaudを変更する2つの方法(クライアントロールを使用した自動追加とハードコード)について、具体的な設定手順を解説していきます。
OAuth2 ProxyとKeycloakを使って認証を実装する方法について学習した内容を説明します。Docker ComposeでKeycloak、Nginx、OAuth2 Proxyを構築し、既存のアプリケーションに変更を加えることなく認証機能を追加する方法を、環境構築から設定まで具体的に解説していきます。
Keycloakで Financial-grade API (FAPI) Baselineに対応するクライアントをGo言語で実装する方法について学習した内容を説明します。特にFAPIが要求するPKCEの使用、client_secret_jwtやprivate_key_jwtによるクライアント認証、HTTPSの導入について、具体的な実装例を交えて解説していきます。
Keycloakの新機能であるパスキー(Passkey)を使ったパスワードレス認証について学習した内容を説明します。パスキーの概要から実際の設定手順、さらにTerraformを使った自動化まで、具体的な実装方法を解説していきます。特にAuthentication Flowの設定とそのモジュール化について詳しく説明します。
Keycloakのロールベースのアクセス制御について学習しました。レルムロール、クライアントロール、グループロールの設定方法や、各ロールがアクセストークンにどのように反映されるのか、具体的な実装例を使って紹介していきます。
keycloakify を使うと React で Keycloak のカスタムテーマを作成することができます。keycloakify-starter を使用すると、環境構築が簡単にできます。この記事では、VS Code と devcontainer を使って keycloakify-starter をセットアップします。
Keycloakのログアウト機能の実装方法について学習した内容を説明します。特にRP-Initiated LogoutとAPIサーバーから直接リクエストを送信する2つの方法、そしてCookieに保存されたトークンの削除方法について、具体的な実装例を交えて解説していきます。
OpenID Providerから取得したリフレッシュトークンを使って、アクセストークンを再取得する方法について学習した内容を説明します。特にトークンの有効期限の設定方法や保存場所の選択、実際のコードでの実装方法について、具体的な例を交えて解説していきます。
Authorization Code FlowでOpenID Providerからトークンを取得する際のセキュリティ対策について学習した内容を説明します。特にstate、nonce、PKCEの実装方法や、それぞれのパラメータがどのような攻撃を防ぐのか、具体的なコード例を交えながら解説していきます。
Go言語でAPIサーバーを作成し、Keycloakとのやり取りを通じてAuthorization Code Flowについて学習した内容を説明します。認可コードの取得からトークンの検証まで、特にセキュリティ面での実装方法について、具体的なコード例を交えながら解説していきます。
Keycloakのチュートリアルを通じて基本機能を学び、その後TerraformのKeycloak Providerを使ってリソースを管理する方法について学習した内容を説明します。特にレルムの作成、ユーザー管理、クライアントの設定など、具体的な実装例を交えながら解説していきます。