Skip to main content
前提条件: 始める前に、以下がインストールされていることを確認してください。
  • Java Development Kit (JDK): バージョン 8 以上
  • ビルドツール: Maven 3.6+ または Gradle 6.0+
  • アプリケーションサーバー: Apache Tomcat 9.0+ または任意のサーブレットコンテナ
  • Auth0 アカウント: お持ちでない場合は、無料で登録してください

AI を使って Auth0 を統合する

Claude Code、Cursor、GitHub Copilot などの AI コーディングアシスタントを使っている場合は、agent skills を使って数分で Auth0 認証を自動的に追加できます。インストール:
次に、AI アシスタントにこう依頼します。
AI アシスタントが、Auth0 アプリケーションの作成、資格情報の取得、Auth0 Java MVC Commons SDK の依存関係の追加、web.xml の設定、さらにサーブレットフィルターを使ったログイン/ログアウト フローの実装まで自動的に行います。agent skills の完全なドキュメント →

はじめに

このクイックスタートでは、JavaサーブレットアプリケーションにAuth0の認証を追加する方法を説明します。Auth0 Java MVC Commons SDKを使用して、ログイン、ログアウト、ユーザープロファイル機能を備えたセキュアなWebアプリケーションを構築します。
1

新規Java Webプロジェクトの作成

このQuickstart用に、新しいJavaのWebアプリケーションプロジェクトを作成します。
プロジェクトのディレクトリに移動します。
2

Auth0 Java MVC Commons SDK のインストール

Auth0 の依存関係をプロジェクトのビルドファイルに追加してください。
次の依存関係を pom.xml に追加してください。
3

Auth0アプリケーションを設定する

次に、Auth0 テナントで新しいアプリケーションを作成し、その設定をプロジェクトに追加します。
  1. Auth0 Dashboard を開きます
  2. Applications > Applications > Create Application をクリックします
  3. ポップアップでアプリケーション名を入力し、アプリケーションの種類として Regular Web Application を選択して、Create をクリックします
  4. Application Details ページで Settings タブに切り替えます
  5. Auth0 Dashboard で DomainClient IDClient Secret の値を控えます
  6. 最後に、Application Details ページの Settings タブで、次の URL を設定します。
Allowed Callback URLs:
許可済みのログアウト URL:
許可済みのWebオリジン:
  • Allowed Callback URLs は、認証後にユーザーを安全にアプリケーションへ戻すための重要なセキュリティ対策です。一致するURLが設定されていないと、ログインは失敗し、ユーザーはアプリにアクセスできず、代わりにAuth0のエラーページが表示されます。
  • Allowed Logout URLs は、サインアウト時にシームレスなユーザー体験を提供するために不可欠です。一致するURLが設定されていないと、ユーザーはlogout後にアプリケーションへリダイレクトされず、代わりに汎用的なAuth0ページに残ることになります。
  • Allowed Web Origins は、サイレント認証に不可欠です。これがないと、ユーザーはページを更新したときや、後でアプリに戻ったときにログアウトされます。
4

Auth0 SDKを設定する

上で生成したAuth0の資格情報を使用して web.xml を設定し、servletアプリケーションで Auth0 SDK を利用できるようにします。src/main/webapp/WEB-INF/web.xml を作成または更新し、プレースホルダーの値を実際のAuth0アプリケーションの設定に置き換えます。
重要: YOUR_AUTH0_DOMAINYOUR_AUTH0_CLIENT_IDYOUR_AUTH0_CLIENT_SECRET は、Auth0アプリケーションの設定にある実際の値に置き換えてください。
5

認証用コンポーネントとフィルターを作成する

認証フローの処理とセキュリティで保護されたページへのアクセス制御に必要なJavaクラスを作成します。
6

ユーザーインターフェイスページを作成する

アプリケーション用の JSP ページと HTML ファイルを作成します。
7

アプリケーションをビルドして実行する

これで、アプリケーションをビルドして実行する準備が整いました。
アプリケーションをビルドします。
Tomcat にデプロイします。
Tomcat (またはお使いのサーブレットコンテナ) を起動します。
チェックポイントこれで、Auth0 と統合されたサーブレットアプリケーションが http://localhost:8080/ で正常に動作しているはずです。実装をテストする:
  1. アプリケーションの URL にアクセスします
  2. 「Auth0 でログイン」をクリックします
  3. Auth0 でのログインを完了します
  4. トークンが表示されたプロファイルページにリダイレクトされるはずです
  5. 「Logout」をクリックしてセッションをクリアします

高度な使用法

基本的な認証が動作するようになったら、次のような拡張も検討してください。
  • ユーザープロファイル情報: ID トークンをデコードしてユーザー情報を表示する
  • API 呼び出し: access token を使用して Auth0 の Management API や独自の API を呼び出す
  • ロールベースのアクセス制御: Auth0 のロールと権限を使用して認可を実装する
  • シングルサインオン: 複数のアプリケーション間で SSO を構成する
よくある問題「Invalid callback URL」で認証に失敗する
  • Auth0 アプリケーションの設定にある callback URL が次と完全に一致していることを確認してください: http://localhost:8080/callback
「domain、clientId、または clientSecret がありません」エラー
  • web.xml の設定に正しい Auth0 アプリケーションの値が入っていることを確認してください
  • パラメーター名が次と完全に一致していることを確認してください: com.auth0.domain, com.auth0.clientId, com.auth0.clientSecret
アプリケーションが起動しない
  • 必要な依存関係がすべて classpath に含まれていることを確認してください
  • 使用しているサーブレットコンテナが Servlet API 3.0+ をサポートしていることを確認してください
  • サーバーのログで具体的なエラーメッセージを確認してください
セッションが維持されない
  • 使用しているサーブレットコンテナがセッション管理用に設定されていることを確認してください
  • ブラウザーで Cookie が有効になっていることを確認してください
  • 本番環境では HTTPS を使用していることを確認してください
追加のサポートについては、Auth0 Communityをご覧ください。