Estoy desarrollando un servicio OAUTH (creo que sí. Puede que no sea exactamente lo mismo) para abrir una de nuestras API de back-end a un comerciante.
básicamente, los usuarios pueden comprar productos del sitio web de comercio electrónico de Merchant y pueden usar nuestra pasarela de pago para hacer el pago.
tenemos un sistema de registro para comerciantes y usuarios y les estamos emitiendo una identificación (alfanumérico disponible para el público).
Mi plan es para el servicio OAUTH.
- El primer comerciante envía la identificación mencionada anteriormente a nuestro servidor OAUTH.
- Luego el servidor OAUTH envía el token, el token de actualización y el tiempo de caducidad como respuesta.
- Luego, el comerciante envía ese token con otra información requerida, como la cantidad nuevamente, al servidor OAUTH para abrir nuestra interfaz web de la pasarela de pago.
- el usuario usa esa interfaz para proporcionar su identificación y pin para confirmar las transacciones.
- Luego, desde un servidor OAUTH, llamamos a nuestro servicio RESTful de back-end para hacer la transacción real (la cuenta del Comerciante recibe dinero y la cuenta del cliente se cargará)
- Después de completar la transacción, redirigimos al usuario nuevamente al sitio web del comerciante.
* Todas las comunicaciones se realizan a través del canal HTTPS.
Estoy en duda por
- Si mi enfoque es correcto para asegurar el flujo anterior.
- ¿Realmente necesito un tokens aquí o solo la ID es suficiente? Si solo use ID, lo que voy a faltar aquí.
- Si es así, ¿solo la ID es suficiente para obtener un token?
- ¿Existe alguna posibilidad de que alguien pueda engañar al proceso?
Esperando sus consejos sobre esto.