Skip to content

Módulo REST de login con autenticación y autorización de usuarios JWT (JSON WEB TOKEN) desarrollado con el microframework FlightPHP.

License

Notifications You must be signed in to change notification settings

jeanpgr/Authentication_API-JWT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 

Repository files navigation

API con FlightPHP y JWT

Esta es una API construida con el microframework FlightPHP y utiliza JWT (JSON Web Tokens) para la autenticación y autorización de usuarios. En esta API se puede implementar más endpoints para acceder a diferentes recursos y realizar operaciones CRUD (Crear, Leer, Actualizar, Eliminar) en la base de datos.

Requisitos

  • PHP 7.4 o superior
  • Composer (Gestor de paquetes)
  • Base de datos MySQL u otro compatible

Instalar

composer require firebase/php-jwt
composer require mikecao/flight

Endpoints

Autenticación

  • POST /login: Permite a un usuario autenticarse, se debe enviar un JSON con las credenciales de usuario (correo y contraseña) y devuelve un JSON con el token JWT y status OK si la autenticación es exitosa.

Usuarios

  • POST /registerUser: Crea un nuevo usuario, se deben proporcionar los datos del usuario en un JSON en el cuerpo de la solicitud.
  • GET /getUsers: Obtiene todos los usuarios registrados en la base de datos (Para acceder a este recurso es necesario enviar el token en la cabecera de la solicitud para validar el token)

Autenticación con JWT

Para acceder a los endpoints protegidos, debes incluir el token JWT en la cabecera Authorization de la solicitud. El token se obtiene después de iniciar sesión exitosamente en el endpoint /login.

Ejemplo

Authorization: Bearer <token>

Note

Para proteger los endpoints que se vaya a implementar llamar a la función validarToken en un condicional.

Ejemplo de solicitud y respuesta

Solicitud

POST /login
Content-Type: application/json

{
    "email": "test@test.com",
    "contraseña": "test"
}

Respuesta Exitosa

HTTP/1.1 200 OK
Content-Type: application/json

{
    "message": "Inicio de sesión exitoso",
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoxMjM0NTY3ODkwLCJpYXQiOjE2MzI4MzM2NjAsImV4cCI6MTYzMjgzMzc2MH0",
    "status": "OK"
}

Contribuciones

Si deseas contribuir a este proyecto, ¡siéntete libre de hacer un fork y enviar tus pull requests!

Licencia

Este proyecto está bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.

About

Módulo REST de login con autenticación y autorización de usuarios JWT (JSON WEB TOKEN) desarrollado con el microframework FlightPHP.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages