このクイックスタートは現在ベータ版です。ぜひフィードバックをお寄せください。
AI を使って Auth0 を統合する
AI を使って Auth0 を統合する
Claude Code、Cursor、GitHub Copilot などの AI コーディングアシスタントを使用している場合は、agent skills を使って、数分で Auth0 認証を自動的に追加できます。インストール:次に、AI アシスタントに次のように依頼します。AI アシスタントが、Auth0 API の作成、credentials の取得、Auth0 ASP.NET Core Authentication API SDK のインストール、JWT ベアラー認証の構成、保護された API エンドポイントの実装を自動的に行います。agent skills の詳細なドキュメント →
前提条件: 開始する前に、次のものがインストールされていることを確認してください。
- .NET 8.0 SDK 以降
- 使用する IDE (Visual Studio 2022、VS Code、または Rider)
はじめに
1
新規プロジェクトを作成する
このクイックスタート向けの新しい ASP.NET Core Web API プロジェクトを作成するプロジェクトを開く
2
Auth0 SDKをインストールする
3
Auth0 API をセットアップする
次に、Auth0テナントで新しいAPIを作成し、その設定をプロジェクトに追加します。CLIコマンドを実行して自動的に行う方法と、Dashboardから手動で行う方法のいずれかを選択できます。
- CLI
- ダッシュボード
Auth0 API を作成し、
appsettings.json ファイルを更新するには、プロジェクトのルートディレクトリで次のコマンドを実行します。- Mac/Linux
- Windows (PowerShell)
4
認証を設定
Program.cs の内容をすべて、次のコードに置き換えます。Program.cs
5
パブリックエンドポイントと保護されたエンドポイントを作成する
認証をテストするためのエンドポイントを追加します。
Program.cs の app.Run() の前に、次のコードを追加します。Program.cs
6
API を起動する
https://localhost:7190 で実行中です (またはそれに類似した URL です。正確な URL はコンソールの出力を確認してください) 。チェックポイントこれで、Auth0 で保護された完全に動作する API が localhost 上で実行されているはずです。
高度な使い方
保護された API の呼び出し
保護された API の呼び出し
アクセストークンを使用して、保護されたエンドポイントをテストします。1. アクセストークンを取得します。 Auth0 から Client Credentials Flow を使用して取得します。2. 公開エンドポイントをテストします。 (200 OK が返るはずです)3. 認証なしで保護されたエンドポイントをテストします。 (401 Unauthorized が返るはずです)4. トークンを使用して保護されたエンドポイントを呼び出します。
YOUR_CLIENT_ID と YOUR_CLIENT_SECRET を取得するには、Auth0 Dashboard で Machine to Machine Application を作成し、API に対して認可します。セキュリティを強化するために DPoP を使用する
セキュリティを強化するために DPoP を使用する
DPoP (Demonstration of Proof-of-Possession) は、アクセストークンを暗号鍵に関連付けることで、トークンの窃取やリプレイ攻撃を防止します。DPoP サポートを有効にする:DPoP モード:DPoP トークンと Bearer トークンの両方を受け入れる (既定) :DPoP トークンのみを受け入れ、Bearer トークンは拒否する:時刻検証パラメーターを設定する:
Program.cs
DPoP の詳細については、Auth0 の DPoP ドキュメントを参照してください。
トークン検証のカスタマイズ
トークン検証のカスタマイズ
特定の要件に応じて、JWT の検証パラメーターをカスタマイズします。
Program.cs
参考資料
SDK ドキュメント
SDK の完全なドキュメントと API リファレンス
移行ガイド
JWT ベアラー認証からの移行
コード例
包括的なコード例とパターン
DPoP ドキュメント
所有証明によるセキュリティについて確認する
トークンのベストプラクティス
トークン セキュリティのベストプラクティス
コミュニティフォーラム
Auth0 コミュニティでサポートを受ける
よくある問題
設定値が見つかりません
設定値が見つかりません
問題:
ArgumentNullException: Value cannot be null. (Parameter 'Domain') などのエラーが発生します。解決策: appsettings.json に Domain と Audience の値を含む Auth0 セクションがあることを確認してください。あわせて、設定が正しく読み込まれていることも確認してください。開発環境での HTTPS 証明書エラー
開発環境での HTTPS 証明書エラー
問題: ローカル実行時に SSL/TLS 証明書エラーが発生します。解決策: 開発用証明書を信頼してください。または、新しい証明書を生成してください。
認可ポリシーでスコープが機能しない
認可ポリシーでスコープが機能しない
問題: スコープベースの認可ポリシーが常に失敗します。解決策: アクセストークンに必要なスコープが含まれていることを確認してください。トークンをリクエストする際は、スコープを指定してください。また、スコープが Auth0 API の設定で定義されていることも確認してください (Dashboard → APIs → Your API → Permissions) 。
サンプルアプリケーション
プレイグラウンドアプリケーション
パブリックエンドポイントと保護されたエンドポイント、DPoP サポート、Swagger UI との統合、Postman コレクションが含まれています