AI を使って Auth0 を統合する
AI を使って Auth0 を統合する
Claude Code、Cursor、GitHub Copilot などの AI コーディングアシスタントを使えば、agent skills を利用して、数分で Auth0 認証を自動追加できます。インストール:続いて、AI アシスタントに次のように依頼します。AI アシスタントが、Auth0 アプリケーションの作成、資格情報の取得、Auth0 ASP.NET Core Authentication SDK のインストール、認証ミドルウェアの構成、ログイン/ログアウト フローの実装を自動で行います。agent skills の完全なドキュメント →
はじめに
Auth0.AspNetCore.Authentication SDK を使用して、Auth0 を新規または既存の Blazor Server アプリケーションに統合する方法を説明します。
1
新しいプロジェクトを作成
このQuickstart向けに新しいBlazor Serverプロジェクトを作成するプロジェクトを開く
2
Auth0 SDKをインストールする
3
Auth0 アプリケーションを設定する
次に、Auth0 テナントで新しいアプリケーションを作成し、プロジェクトに設定を追加します。CLIコマンドを実行してAuth0 アプリケーションを自動的に設定する方法と、Auth0 Dashboardから手動で行う方法のいずれかを選択できます。コールバックURLを設定する:設定タブで、以下のURLを設定してください:
- CLI
- Auth0 Dashboard
プロジェクトのルートディレクトリで次のシェルコマンドを実行し、Auth0 アプリケーションを作成して
appsettings.json を更新します。このコマンドは以下を実行します:
- 認証済みかどうかを確認します (必要に応じてログインを求められます)
http://localhost:5000用に構成されたAuth0 Regular Web Applicationを作成しますappsettings.jsonをAuth0:Domain、Auth0:ClientId、Auth0:ClientSecretで更新します
- 許可するコールバック URL:
http://localhost:5000/callback - 許可するログアウト URL:
http://localhost:5000 - 許可する Web オリジン:
http://localhost:5000
重要: 接続を設定し、Auth0 Dashboard の Connections タブでお使いのアプリケーションに対してその接続を有効にしてください。
4
認証を設定する
Program.cs を更新して、Auth0 の認証を構成します:Program.cs
注意: ミドルウェアの順序は重要です。
UseAuthentication() は UseAuthorization() より前に呼び出す必要があります。5
LoginページとLogoutページを追加
ユーザーが認証できるように、Login ページと Logout ページを作成します。まず、次に、以下のコードスニペットを追加します。
Pages フォルダーとファイルを作成します。- Mac/Linux
- Windows (PowerShell)
6
プロファイルページの作成とレイアウトの更新
ユーザー名とclaimsを表示するカスタムのユーザープロファイルページを作成し、レイアウトを更新してLogin/Logoutリンクを追加します。まず、Profileコンポーネントを作成します。次に、以下のコードスニペットを追加します。
- Mac/Linux
- Windows (PowerShell)
MainLayout のコードは、レイアウトの他の部分はそのままにして、先頭のセクションに追加してください。7
アプリケーションを起動する
http://localhost:5000 にアクセスします。ナビゲーションの Login リンクをクリックします。Auth0 のログインページにリダイレクトされます。
ログインすると、アプリケーションにリダイレクトされ、ナビゲーションに自分の名前が表示されます。チェックポイントこれで、Auth0 で保護された完全に機能する Blazor Server アプリケーションが http://localhost:5000 で動作しているはずです。ユーザーはログインし、プロファイルを表示し、ログアウトできます。
高度な使い方
Login パラメーターをカスタマイズする
Login パラメーターをカスタマイズする
Auth0 のログインページにカスタムパラメーターを渡せます。
Pages/Login.cshtml.cs
API 呼び出し用にトークンを保存する
API 呼び出し用にトークンを保存する
ユーザーに代わって外部 API を呼び出す必要がある場合は、トークンを取得して保存できます。次に、アクセストークンを取得します。
Program.cs
Organizations を設定する
Organizations を設定する
B2B シナリオ向けに organization のサポートを設定します。または、ログイン時に organization を指定します。
Program.cs
Pages/Login.cshtml.cs
よくある問題
構成値が見つからない
構成値が見つからない
問題:
ArgumentNullException: Value cannot be null. (Parameter 'Domain') または同様のエラー。解決策: appsettings.json に Domain、ClientId、ClientSecret を含む Auth0 セクションがあることを確認してください。また、構成が正しく読み込まれていることも確認してください。Program.cs
ミドルウェアの順序の問題
ミドルウェアの順序の問題
問題: 構成が正しいにもかかわらず、認証が機能しない。解決策: ミドルウェアが正しい順序で配置されていることを確認してください。
UseAuthentication() は UseAuthorization() より前に記述する必要があります。Program.cs
追加リソース
GitHub リポジトリ
ソースコードと Issue トラッカー
API リファレンス
詳細な API ドキュメント
コミュニティフォーラム
Auth0 コミュニティからサポートを受ける
サンプルアプリケーション
ASP.NET Core Blazor アプリ
ログイン、ログアウト、ユーザープロファイルなどの例が含まれています。