Saltar al contenido principal

Autenticación

El Inicio de Sesión

Para iniciar sesión, es esencial conocer nuestras credenciales de acceso, específicamente para la API en cuestión. Con estas credenciales, se pueden enviar solicitudes de autenticación desde un navegador web o utilizando herramientas de línea de comandos como curl. Este proceso asegura que solo los usuarios autorizados puedan acceder al sistema, manteniendo la integridad y seguridad de la plataforma.

curl -X POST https://b2market.es/api/login -H "Content-Type: application/json" -d "{\"_username\":\"username\",\"_password\":\"password\"}"

Obetener Token JWT

Después de enviar la solicitud para iniciar sesión, el sistema responderá con un token JWT. Este token JWT es un formato estandarizado utilizado para la autenticación y contiene información codificada que valida la identidad del usuario. Este token puede ser utilizado posteriormente en otras solicitudes para acceder a recursos protegidos dentro del sistema. Es importante manejar y almacenar este token de manera segura, ya que representa la autorización del usuario en la API.

{"token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3MTgzMDcxNTQsImV4cCI6MTcxODMxNDM1NCwicm9sZXMiOnsiR0VUIjp0cnVlLCJQT1NUIjp0cnVlLCJERUxFVEUiOnRydWUsIlBVVCI6dHJ1ZX0sInVzZXJuYW1lIjoiYWRtaW4ifQ.q5DSWSrIutdyIVYqVxyIzl5oQMxr2NgSu0Ln1CqzbBJaEW3ZHPs7OArr473nPkqDozp9wYK2oTHPZq3HCfkxm57sZRuPYIVSqNPBpGJoi3NfkRrSHU7gEYEXKFqSTACksx8y5qkFWIDNozyoenEpqbbbLbZSQCO0EB1TpNnHJGPitunCuzXAiCPwC7nhqrWQ0cJHlqNCIy_io0xMERf9Ff8D-IcBNGXUl13Or-TL4NdlvDdpCMc1BL_dg6T67GEyRvXaLu3x4l7PdN8B8ePY2Png0mo3mtyAKWp4RC77TL0eFxXfgSu7J6cff3q0NHebN3E-JIilWd_9cD1dqJVA0Q"}

Este token JWT tiene una vida útil limitada. Por lo tanto, si en algún momento se recibe un error 403, indica que el token ha expirado o no es válido. En tales casos, será necesario pasar por el proceso de inicio de sesión nuevamente para obtener un nuevo token válido. Este enfoque garantiza la seguridad del sistema al requerir autenticación periódica y renovación de token para acceder de manera segura a los recursos protegidos.

Verificar Token

Si lo desea, puede verificar la validez de este token en cualquier momento a través de la siguiente URL. Esta funcionalidad le permite asegurarse de que el token JWT aún sea válido y esté autorizado para acceder a los recursos protegidos.

curl -X POST -s "Accept-Charset: utf-8" -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE3MTgzMDcxNTQsImV4cCI6MTcxODMxNDM1NCwicm9sZXMiOnsiR0VUIjp0cnVlLCJQT1NUIjp0cnVlLCJERUxFVEUiOnRydWUsIlBVVCI6dHJ1ZX0sInVzZXJuYW1lIjoiYWRtaW4ifQ.q5DSWSrIutdyIVYqVxyIzl5oQMxr2NgSu0Ln1CqzbBJaEW3ZHPs7OArr473nPkqDozp9wYK2oTHPZq3HCfkxm57sZRuPYIVSqNPBpGJoi3NfkRrSHU7gEYEXKFqSTACksx8y5qkFWIDNozyoenEpqbbbLbZSQCO0EB1TpNnHJGPitunCuzXAiCPwC7nhqrWQ0cJHlqNCIy_io0xMERf9Ff8D-IcBNGXUl13Or-TL4NdlvDdpCMc1BL_dg6T67GEyRvXaLu3x4l7PdN8B8ePY2Png0mo3mtyAKWp4RC77TL0eFxXfgSu7J6cff3q0NHebN3E-JIilWd_9cD1dqJVA0Q" https://b2market.es/api/verify_token

Después de la verificación, la API responderá con un objeto JSON que contiene información sobre la validez del token y los detalles asociados del usuario.

{   "valid":true,
"payload":
{
"iat":1718307154,
"exp":1718314354,
"roles": {
"GET":true,
"POST":true,
"DELETE":true,
"PUT":true
},
"username":"admin"
}
}

Response Details

  • valid: Indica si el token es válido (true) o no (false).
  • payload: Contiene la carga útil del token.
    • iat: Tiempo de emisión (en formato de tiempo UNIX).
    • exp: Tiempo de expiración (en formato de tiempo UNIX).
    • roles: Lista los permisos asociados con el token:
      • GET
      • POST
      • DELETE
      • PUT
    • username: El nombre de usuario asociado con el token, representando al usuario autenticado.

Consejo de Seguridad: Siempre mantén tu token JWT seguro y no lo expongas en URLs o repositorios públicos. Trátalo como una contraseña.

Errores de Respuesta

ErrorResponse StatusResponse Body
Este error ocurre cuando no se puede establecer una conexión con la base de datos. Es un problema interno del servidor.500{"code": 500,"error": "Database connection failed."}
Este error indica que el token JWT proporcionado no es válido y el usuario necesita iniciar sesión nuevamente para obtener un token JWT válido.500{"code": 500,"valid": false,"error": "Token is not valid. Please login again."}
Este error ocurre cuando la autenticación proporcionada no es válida debido a una Contraseña incorrecta.401{"code": 401,"error": "Invalid password."}
Este error ocurre cuando la autenticación proporcionada no es válida debido a un Nombre de usuario incorrecto.401{"code": 401,"error": "User not found."}