Autenticación
La autenticación y la autorización son dos procesos de seguridad que manejan el acceso a tu sitio web o aplicación. La autenticación verifica la identidad de un visitante, mientras que la autorización otorga acceso a áreas y recursos protegidos.
La autenticación te permite personalizar áreas de tu sitio para personas que han iniciado sesión y proporciona la mayor protección para la información personal o privada. Las bibliotecas de autenticación (por ejemplo, Lucia Auth, Auth.js) proporcionan utilidades para múltiples métodos de autenticación, como el inicio de sesión con correo electrónico y los proveedores de OAuth.
No hay una solución oficial de autenticación para Astro, pero puedes encontrar integraciones de “auth” de la comunidad en el directorio de integraciones.
Lucia es un framework agnóstico, una biblioteca de autenticación basada en sesiones con un gran soporte para Astro.
Instalación
Sección titulada InstalaciónInstala Lucia usando el gestor de paquetes de tu elección.
Configuración
Sección titulada ConfiguraciónUsa la guía “Getting started in Astro” de Lucia para inicializar Lucia con un adaptador y configurar una base de datos para almacenar usuarios y sesiones.
Sigue uno de los tutoriales completos de Lucia para Astro para agregar autenticación de nombre de usuario y contraseña o GitHub OAuth a tu proyecto de Astro.
Siguientes pasos
Sección titulada Siguientes pasosAuth.js
Sección titulada Auth.jsAuth.js es una solución de framework agnóstico para autenticación. Un adaptador de framework de la comunidad auth-astro
está disponible para Astro.
Instalación
Sección titulada InstalaciónUsa el comando astro add
para tu gestor de paquetes preferido para agregar la integración auth-astro
.
Instalación manual
Sección titulada Instalación manualPara instalar auth-astro
manualmente, instala el paquete requerido para tu gestor de paquetes:
Luego, aplica la integración a tu archivo astro.config.*
usando la propiedad integrations
:
Configuración
Sección titulada ConfiguraciónCrea un archivo auth.config.mjs
en la raíz de tu proyecto. Agrega cualquier proveedor o método de autenticación que desees admitir, junto con cualquier variable de entorno que requieran.
Crea un archivo .env
en la raíz de tu proyecto si no existe. Agrega las siguientes dos variables de entorno. AUTH_SECRET
debe ser un string privada con un mínimo de 32 caracteres.
Puedes agregar botones de inicio de sesión y cierre de sesión usando el módulo auth-astro/client
en una etiqueta de script o componente de framework del lado del cliente.
Puedes obtener la sesión del usuario usando el método getSession
.