PHP : Premiers pas avec Auth0-PHP
La trousse SDK Auth0 pour PHP s’intègre à vos applications PHP en fournissant une connexion et une inscription efficaces pour les utilisateurs. Elle prend en charge les fournisseurs d’identité sociale tels que Facebook, Google ou Twitter, ainsi que les fournisseurs d’entreprise tels que Active Directory. La trousse SDK fournit des méthodes pratiques pour accéder aux points de terminaison d’authentification et de gestion d’Auth0.
Le référentiel Auth0-PHP est open source et disponible sur GitHub. Nous apprécions toutes les contributions, y compris les rapports de bogues, les propositions d’amélioration et les demandes de fusion.
Exigences
PHP 7.4+ (8.0+ recommandé)
Installation
L’installation de la trousse SDK Auth0 pour PHP nécessite Composer, l’utilitaire standard de gestion des dépendances pour PHP. Composer vous permet de déclarer les bibliothèques dépendantes dont votre projet a besoin et les installe pour vous. Assurez-vous que Composer est installé et accessible depuis votre interface de ligne de commande avant de continuer.
Ensuite, exécutez la commande suivante dans le répertoire de votre projet pour installer la trousse SDK :
composer require auth0/auth0-php
Was this helpful?
vendor
dans votre projet et téléchargera toutes les dépendances nécessaires à l’utilisation de la trousse SDK pour PHP. Cela créera également un fichier vendor/autoload.php
nécessaire pour que la trousse SDK fonctionne avec votre application, que nous importerons plus tard.Démarrage
Pour utiliser l’Authentication API et Management API Auth0, vous aurez besoin d’un compte Auth0 gratuit et d’une application :
Rendez-vous sur auth0.com/signup et créez votre compte.
Une fois dans Dashboard, allez à Applications, puis Créer une application.
Donnez un nom à votre application, sélectionnez Application Web classique, puis Créer.
Cliquez sur l’onglet Paramètres pour obtenir les informations d’identification requises utilisées ci-dessous. Pour en savoir plus, voir Paramètres de l’application.
Configurer la trousse SDK
Vous devez utiliser des variables d’environnement pour stocker et charger les informations d’identification Auth0 sensibles. Cela évite de devoir les coder en dur dans votre application. Créons un fichier .env
à la racine de notre répertoire de projet pour stocker les informations d’identification de notre application :
La manière la plus simple d’utiliser les variables d’environnement dans votre projet est d’utiliser une bibliothèque comme PHP Dotenv avec un fichier local .env
. Créez un fichier .env
(assurez-vous qu’il n’est pas accessible au public et qu’il est exclu du contrôle de version) et ajoutez les valeurs suivantes :
# The URL of our Auth0 Tenant Domain.
# If we're using a Custom Domain, be sure to set this to that value instead.
AUTH0_DOMAIN='https://{yourDomain}'
# Our Auth0 application's Client ID.
AUTH0_CLIENT_ID='{yourClientId}'
# Our Auth0 application's Client Secret.
AUTH0_CLIENT_SECRET='{yourClientSecret}'
# A long secret value we'll use to encrypt session cookies. This can be generated using `openssl rand -hex 32` from our shell.
AUTH0_COOKIE_SECRET='SEE COMMENT ABOVE'
# The base URL of our application.
AUTH0_BASE_URL='http://127.0.0.1:3000'
Was this helpful?
Vous ne devez jamais livrer ce fichier au contrôle de version ou le partager de manière non sécurisée. Le contenu doit être manipulé avec soin et traité comme un mot de passe.
Comme PHP n’est pas en mesure de lire notre fichier .env
en mode natif, vous devrez installer une bibliothèque PHP pour le faire. Pour les besoins de cette documentation, nous utiliserons vlucas/phpdotenv
, mais n’importe quelle bibliothèque « dotenv » que vous préférez fonctionnera. Depuis le répertoire de votre projet, exécutez la commande suivante pour installer la bibliothèque :
composer require vlucas/phpdotenv
Was this helpful?
Initialiser la trousse SDK
Nous sommes prêts à configurer et à initialiser une instance de la trousse SDK dans notre nouvelle application PHP. Commençons par créer le fichier source PHP avec lequel nous travaillerons pour cette démonstration, index.php
, et utilisons l’extrait suivant pour commencer :
<?php
// Import the Composer Autoloader to make the SDK classes accessible:
require 'vendor/autoload.php';
// Load our environment variables from the .env file:
(Dotenv\Dotenv::createImmutable(__DIR__))->load();
// Now instantiate the Auth0 class with our configuration:
$auth0 = new \Auth0\SDK\Auth0([
'domain' => $_ENV['AUTH0_DOMAIN'],
'clientId' => $_ENV['AUTH0_CLIENT_ID'],
'clientSecret' => $_ENV['AUTH0_CLIENT_SECRET'],
'cookieSecret' => $_ENV['AUTH0_COOKIE_SECRET']
]);
Was this helpful?