パスキーは、従来のパスワードに依存せずにユーザーを認証する最新の安全な方法を提供します。このガイドでは、Thymeleaf をテンプレート エンジンとして使用して、Java Spring Boot アプリケーションにパスキーを統合するについて説明します。
Corbado のパスキーファースト UI コンポーネントを利用してバックエンドに接続し、実装プロセスを簡素化します。このチュートリアルは、HTML と Java Spring Boot の基本を理解しており、Corbado Java SDK がインストールされていることを前提としています。
オリジナルのチュートリアル全体をご覧ください
始める前に、プロジェクトのセットアップに Corbado Java SDK が含まれていることを確認してください。このチュートリアルでは、例としてバージョン 0.0.1 を使用します。次の依存関係を pom.xml ファイルに追加します:
Gradle を使用している場合は、次のように追加します。
まず、開発者パネルから Corbado アカウントにサインアップします。セットアップ中に、環境に合わせて「Corvado Complete」を選択し、「Web アプリ」を選択してプロジェクトを構成します。アプリケーション URL と証明書利用者 ID を必ず指定してください。通常は、それぞれ http://localhost:8080 と localhost に設定されます。これらの設定は、パスキーを正しいドメインにバインドするために重要です。
次に、Corvado 開発者パネルから API シークレットを生成します。これは、ユーザー データの取得を含むバックエンド通信に必要になります。
Spring Boot スターター リポジトリのクローンを作成します:
このプロジェクト内で、HelloController.java の名前を FrontendController.java に変更します。このコントローラーは、ユーザーのリクエストに基づいて HTML ファイルを提供します。 application.properties ファイルに、projectID と apiSecret を環境変数として保存します (どちらも Corbado 開発者パネルから取得できます)。
/complete/src/main/resources/templates ディレクトリにindex.html ファイルを作成します。このファイルは、Corvado パスキーファースト UI コンポーネントを埋め込むログイン ページとして機能します。基本的な構造は次のとおりです:
FrontendController.java で、ログイン ページとプロファイル ページへのリクエストを処理するエンドポイントを定義します。 Index() メソッドはログイン ページをレンダリングする必要があり、profile() メソッドはユーザー セッションを検証してユーザー プロファイルを表示します。
認証が成功すると、Corvado UI コンポーネントはユーザーをリダイレクトします。このページにはユーザーに関する情報が表示され、ログアウトするボタンが表示されます。テンプレート フォルダーに、次の内容を含むファイル profile.html を追加します:
次に、FrontendController.java 内にアノテーションを含む profile() メソッドを作成します。
セッションに埋め込まれた情報を使用する前に、セッションが有効であることを確認する必要があります。したがって、cbo_short_session Cookie (セッション) を取得し、Corbado Java SDK のセッション サービスを使用してその署名を検証します。これは次のコマンドで実行できます:
cbo_short_session Cookie を取得して検証し、ユーザー ID とユーザーのフルネームを返します。
プロファイル マッピングの最終コードは次のようになります:
Spring Boot アプリケーションを開始するには、/complete ディレクトリに移動して次のコマンドを実行します。
ブラウザで http://localhost:8080 にアクセスして、ログイン ページの動作を確認してください。
このガイドでは、Corbado を使用してパスキーを Java Spring Boot アプリケーションに統合する方法を説明しました。これらの手順に従うことで、パスワードなしの認証を効率的かつ安全に実装できます。セッション管理と既存のアプリケーションへの Corbado の統合に関する詳細なドキュメントについては、公式 Corbado ドキュメントを参照してください。
以上がパスキーを Java Spring Boot に統合する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。