Basecamp
En esta sección vamos a explicar específicamente como funciona la autenticación de Basecamp en Chronus. Para el funcionamiento de los endpoints visitar la sección de API.
El proceso de autenticación se ejecuta siguiendo los siguientes pasos:
-
Cuando el usuario hace click en el frontend, en el botón de Sing in with Basecamp, hace una petición al endpoint
/chronus-basecamp/login. -
El usuario es redirigido a una pagina propia de Basecamp donde ingresa sus credenciales e intenta iniciar sesión.
-
En caso de ser exitoso el inicio de sesión, el usuario es redirigido desde Basecamp a la URI de redirección. Mas adelante explicaremos al detalle esta redirección.
-
Basecamp hace una petición al endpoint
/chronus-basecamp/authorizey le envía el token de acceso. -
Este token es parseado por el backend y redirecciona por ultima vez al usuario al frontend bajo la ruta
/gettokenenviando el token para su uso.
Apps de Basecamp
Para que este proceso funcione, se debe crear directamente en Basecamp una aplicación donde se le indica el nombre y la url autorizada para realizar la redirección con el token. Se debe crear una aplicación por cada ambiente que manejemos ya que solo se permite una única url de autorización por aplicación. Es decir, la app de desarrollo llamada chronus_dev redirige al endpoint http://127.0.0.1/chronus-basecamp/authorize, mientras que la de staging chronus_staging redirige a ese endpoint pero en el ambiente de staging.
Toda esta configuración se realiza en la pagina de integrations de Basecamp. Todas las aplicaciones de Chronus se crearon con la cuenta soporte@darient.com.
Toda la documentación referente a este proceso y a todo lo referente a Basecamp se encuentra en la API de Basecamp. Recomendamos leerla para entender mejor el proceso.