Grupo-9-Anita / e-commerce-tpi-backend

0 stars 0 forks source link

Feat #89/auth endpoints #119

Closed FelipeDelZoppo closed 1 week ago

FelipeDelZoppo commented 1 week ago

Endpoints

Los siguientes endpoints requieren ahora de autenticacion mediante el JWT.

Autenticación

Para autenticarse, se debe añadir a la cabecera de la petición lo siguiente:

{
  "Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c3VhcmlvIiwiZXhwIjoxNjk0Mzg5NjAwLCJyb2xlcyI6WyJBRE1JTiJdfQ.JpIKVvc9X1_YhBZ1OQMW9w4V9xR-RT0Oeu1OeA9EzoQ",
}

El JWT enviado debe tener el ROLE ADMIN.

Error

Si no se envia un JWT valido, el back devolvera lo siguiente: Image

SignUp ADMIN

Para registrar un usuario ADMIN, se debe utilizar el endpoint SignUp de la misma manera que se usa para registrar a un USER, unicamente se modifica este atributo de la peticion:

{
    "admin": true
}

Hardcodeo

Como es necesario tener un JWT de un usuario ADMIN para registrar otro ADMIN, la unica forma de registrar otro ADMIN es hardcodeandolo. Para eso se creo el endpoint: Post /auth/firstAdmin el cual funciona igual que el signUp solo que para registrar a un usuario ADMIN no requiere autorizacion