Skip to main content
Auth0-PHP SDKにはAuth0\SDK\Auth0Auth0\SDK\API\AuthenticationAuth0\SDK\API\Managementという3つのコアクラスがバンドルされ、それぞれがAuth0 APIの全体にさまざまな機能のインターフェイスを提供しています。ユーザーセッションの追跡が必要なステートフルWebアプリケーションを構築する場合、最も頻繁に使用するクラスは基本のAuth0クラスです。ログインとログアウト、ユーザー資格情報の取得、利用可能なセッションの確認、コールバック処理などの一般的な認証およびセッションのタスクを処理するためのメソッドを提供します。これらのタスクについては、以下で説明します。 これらの機能性などについては、認証APIのドキュメントページを参照してください。

前提条件

以下の内容はAuth0-PHPの手順を終えていることを前提としており、そこで提供されたコードを使用します。

ログイン

PHP SDKにデフォルトのログインプロセスは、認証コード付与をAuth0のユニバーサルログインページと組み合わせて使用します。つまり、次のプロセスになります。
  1. アクセスを要求するユーザーがユニバーサルログインページにリダイレクトされます。
  2. ユーザーがさまざまな接続のいずれかを使用して認証します。接続にはソーシャル(Google、X、Facebook)、データベース(メールとパスワード)、パスワードレス(メール、SMS)、またはエンタープライズ(ActiveDirectory、ADFS、Office 365)などが含まれます。
  3. ユーザーがアプリケーションのコールバックURLにリダイレクトまたはポストバックされ、成功の場合はcodestateの値、失敗の場合はerrorerror_descriptionが一緒に送信されます。
  4. 認証が成功した場合は、state値が検証されます。
  5. stateが有効な場合、code値がAuth0でIDトークンおよび/またはアクセストークンと交換されます。
  6. IDトークンからのIDは、アカウントの作成、アプリケーション固有のセッション開始、ユーザーセッションの永続化に使用できます。
Auth0-PHPはこれらの手順のほとんどを自動的に処理します。アプリケーションは次を行う必要があります。
  1. ユーザーのログインが必要な場合(例:リンクをクリック、ウォールされたコンテンツにアクセスなど)は、Auth0\SDK\Auth0::login()を呼び出す。
  2. ユーザーをコールバックURLにリダイレクトする場合は、Auth0\SDK\Auth0::exchange()を呼び出す。
  3. ユーザーがログインしているかを確認し、ユーザー情報の取得が必要な場合は、Auth0\SDK\Auth0::getCredentials()を呼び出す。
これらの手順は以下で手軽に実装できます。
最後に、設定ページにあるAuth0アプリケーションの[Allowed Callback URLs(許可されているコールバックURL)]フィールドにアプリケーションのURLを追加する必要があります。その後、スクリプト化されたページを読み込むと、以下が実行されます。
  1. 即座にテナントのAuth0ログインページにリダイレクトします。
  2. 任意の接続を使用して正常にログインした後で、アプリにリダイレクトします。
  3. 「認証されました!」と表示するシンプルなページを表示します。

プロファイル

ユーザーが認証されたら、維持されたセッションデータを使用して、ユーザープロファイルの表示などを行うことができます。

ログアウト

ログインするだけでなく、ユーザーがログアウトできるようにすることも大切です。ユーザーがログアウトすると、アプリケーションのセッションを無効にする必要があります。これを行うために、このSDKでは永続的なユーザーとトークンのデータが破棄されます。
シングルサインオン()を使用している場合に、Auth0セッションを終了するには、こちらのSSOログアウトのセクションを参照してください。ログアウト全般についての詳細はこちらをご覧ください。

もっと詳しく