Auth0\SDK\Auth0、Auth0\SDK\API\Authentication、Auth0\SDK\API\Management という 3 つの主要クラスが含まれており、それぞれ Auth0 API の異なる機能に対応するインターフェースを提供します。ユーザーのセッションを管理する必要があるステートフルな Web アプリケーションを構築している場合、最も多く利用するのはベースの Auth0 クラスです。このクラスには、ログインやログアウト、ユーザー認証情報の取得、利用可能なセッションの確認、コールバック処理など、一般的な認証およびセッション管理タスクを処理するためのメソッドが用意されています。これらのタスクについては、以下で説明します。
これらの機能やその他の詳細については、Authentication API を使用するを参照してください。
前提条件
ログイン
- アクセスを要求したユーザーは、Universal Login ページにリダイレクトされます。
- ユーザーは、利用可能なさまざまな接続 のいずれかを使って認証します。たとえば、ソーシャル (Google、X、Facebook) 、データベース (メールアドレスとパスワード) 、パスワードレス (メール、SMS) 、エンタープライズ (ActiveDirectory、ADFS、Office 365) などです。
- 成功すると、ユーザーは
codeとstateの値とともにアプリケーションのコールバック URL にリダイレクトされるか、POST されます。失敗した場合は、errorとerror_descriptionが返されます。 - 認証に成功した場合は、
stateの値を検証します。 stateが有効であれば、codeの値を使って Auth0 から ID トークンやアクセストークンを取得します。- ID トークン内のユーザー情報は、アカウントの作成、アプリケーション固有のセッションの開始、またはユーザーセッションとしての保持に利用できます。
- ユーザーがログインする必要があるときに
Auth0\SDK\Auth0::login()を呼び出す (例: リンクをクリックしたとき、制限されたコンテンツにアクセスしたときなど) - ユーザーがコールバック URL にリダイレクトされたときに
Auth0\SDK\Auth0::exchange()を呼び出す - ユーザーがログイン済みかどうかを確認し、ユーザー情報を取得する必要があるときに
Auth0\SDK\Auth0::getCredentials()を呼び出す
- すぐに、テナント用の Auth0 ログインページにリダイレクトされる。
- いずれかの接続を使って正常にログインすると、アプリにリダイレクトされる。
- ‘Authenticated!’ と表示されたシンプルなページが表示される。