Ir al contenido principal

Autenticacion por dos (1) - [generateCodeAuthenticator]

🧾 Descripción

Genera un código de verificación de 6 dígitos para un usuario y lo envía al servicio externo encargado del sistema de autenticación de doble factor (2FA).

Este servicio:

  1. Recibe el número de documento del usuario.

  2. Genera un código aleatorio numérico de 6 dígitos.

  3. Envía ese código al servicio https://sistema.shalomcontrol.com/api/generate_code_two_factor.

  4. Devuelve la respuesta del servicio externo.

Es usado para validar la identidad del usuario durante procesos de autenticación reforzada.


🚀 Endpoint

POST /generate-code-authenticator


📥 Request Body

{ "username": "12345678" }

Parámetros

Campo Tipo Obligatorio Descripción
username string ✔️ DNI, pasaporte o documento del usuario

🔐 Seguridad

No requiere token del ERP.
Sin embargo, el envío del código es gestionado mediante una llamada a un servicio externo con autenticación interna del cliente Piero().


🧠 Flujo del Servicio (resumen real)

  1. Valida que el request incluya username.

    • Si no existe, retorna error.

  2. Genera un código numérico aleatorio de 6 dígitos, cada uno seleccionado de "0123456789".

  3. Envía el código al servicio:


    POST https://sistema.shalomcontrol.com/api/generate_code_two_factor

    Con los parámetros:


    document = <username> code = <6-digit code>
  4. Recibe y retorna la respuesta proporcionada por el servicio externo.

  5. Si ocurre un error en la solicitud HTTP (BadResponseException), devuelve:

{ "valor": false, "msn": "Error al enviar al servicio", "msn2": "<detalle del error>" }

📤 Response 200 – Ejemplo

{ "valor": true, "msn": "Código generado y enviado correctamente", "data": { "document": "12345678", "success": true } }

(La estructura exacta depende del servicio externo sistema.shalomcontrol.com.)


❗ Posibles Errores

1. Falta el número de documento

{ "valor": false, "msn": "Enviar numero de documento" }

2. Error del servicio externo

{ "valor": false, "msn": "Error al enviar al servicio", "msn2": "<mensaje del servidor externo>" }

3. Error inesperado (validación interna)

{ "valor": false, "msn": "Error inesperado" }

📚 Código que genera el servicio (resumen simplificado)

if(!$document) return error; code = random_numeric(6); POST https://sistema.shalomcontrol.com/api/generate_code_two_factor { document: <username>, code: <6-digit code> } return response_from_service;