Skip to main content
El SDK de Auth0-PHP se integra en tus aplicaciones PHP y proporciona un inicio de sesión y registro de usuarios sencillos. Es compatible con sociales como Facebook, Google o X, así como con proveedores empresariales como Active Directory. El SDK ofrece métodos prácticos para acceder a los endpoints de autenticación y administración de Auth0. El repositorio de Auth0-PHP es de código abierto y está alojado en GitHub. Agradecemos todas las contribuciones, incluidos los informes de errores, las propuestas de mejora y los pull requests.

Requisitos

  • PHP 7.4+ (se recomienda la versión 8.0 o superior)
  • Composer

Instalación

Para instalar el SDK de PHP de Auth0, necesita Composer, la herramienta estándar de gestión de dependencias para PHP. Composer le permite declarar las dependencias que necesita su proyecto y las instala automáticamente. Asegúrese de que Composer esté instalado y disponible desde su shell antes de continuar. A continuación, ejecute el siguiente comando de shell en el directorio de su proyecto para instalar el SDK:
composer require auth0/auth0-php
Esto creará una subcarpeta vendor dentro de tu proyecto y descargará todas las dependencias necesarias para usar el SDK de PHP. También creará el archivo vendor/autoload.php, necesario para que el SDK funcione con tu aplicación y que importaremos más adelante.

Primeros pasos

Para usar las API de autenticación y la Management API de Auth0, necesitarás una cuenta gratuita de Auth0 y una aplicación:
  1. Ve a auth0.com/signup y crea tu cuenta.
  2. Cuando estés en el panel, ve a Applications y, luego, a Create Application.
  3. Asigna un nombre a la aplicación, selecciona Regular Web Application y luego Create
  4. Haz clic en la pestaña Settings para obtener las credenciales necesarias que se usan más abajo. Para obtener más información, consulta Application Settings.

Configura el SDK

Debes usar variables de entorno para almacenar y cargar credenciales confidenciales de Auth0. Esto evita tener que incluirlas directamente en el código de tu aplicación. Vamos a crear un archivo .env en la raíz del directorio de nuestro proyecto para almacenar las credenciales de nuestra aplicación: La forma más sencilla de usar variables de entorno en tu proyecto es mediante una biblioteca como PHP Dotenv junto con un archivo .env local. Crea un archivo .env (asegúrate de que no sea accesible públicamente y de que esté excluido del control de versiones) y agrega los siguientes valores: Nunca debes incluir este archivo en el control de versiones ni compartirlo de manera insegura. Su contenido debe manejarse con cuidado y tratarse como una contraseña. Como PHP no puede leer de forma nativa nuestro archivo .env, tendrás que instalar una biblioteca para PHP que lo haga. Para esta documentación usaremos vlucas/phpdotenv, pero cualquier biblioteca “dotenv” que prefieras funcionará. Desde el directorio de tu proyecto, ejecuta el siguiente comando de shell para instalar la biblioteca:
composer require vlucas/phpdotenv

Inicializar el SDK

Ya estamos listos para configurar e inicializar una instancia del SDK en nuestra nueva aplicación de PHP. Para empezar, creemos el archivo fuente de PHP con el que trabajaremos en esta demostración, index.php, y usemos el siguiente fragmento:
<?php

// Importar el Autoloader de Composer para que las clases del SDK sean accesibles:
require 'vendor/autoload.php';

// Cargar las variables de entorno desde el archivo .env:
(Dotenv\Dotenv::createImmutable(__DIR__))->load();

// Ahora instanciar la clase Auth0 con nuestra configuración:
$auth0 = new \Auth0\SDK\Auth0([
    'domain' => $_ENV['AUTH0_DOMAIN'],
    'clientId' => $_ENV['AUTH0_CLIENT_ID'],
    'clientSecret' => $_ENV['AUTH0_CLIENT_SECRET'],
    'cookieSecret' => $_ENV['AUTH0_COOKIE_SECRET']
]);
¡Felicidades! Tu aplicación ya está configurada y lista para usarse con Auth0. Ahora puedes continuar con la creación de una aplicación de ejemplo mediante una de nuestras guías de inicio rápido de PHP. Elige el tipo de aplicación que quieres crear para seguir la guía de inicio rápido que mejor se adapte a tus necesidades:

Más información