Explorar documentación

Crear una aplicación OAuth de GitHub para OpenConnector

Usa una aplicación OAuth de GitHub cuando OpenConnector necesite una conexión de GitHub autorizada por el usuario. Una aplicación OAuth proporciona un flujo de autorización en el navegador; un token de acceso personal admite la configuración de tokens gestionada por el administrador.

Servicio de OpenConnector

ID de servicioProveedorTipo de autenticación
githubGitHubOAuth2

El proveedor OAuth de GitHub de OpenConnector puede solicitar ámbitos como read:user, user:email, repo, workflow y delete_repo. Concede solo los ámbitos que necesites para las acciones que planeas ejecutar.

Requisitos previos

  • Un entorno de ejecución de OpenConnector en funcionamiento.
  • Una cuenta o organización de GitHub donde puedas crear aplicaciones OAuth.
  • El origen de OpenConnector que los usuarios abren en el navegador, como http://localhost:3000 o https://connect.example.com.

Paso 1: Establecer la URL de callback de OpenConnector

Construye la URL de callback añadiendo /oauth/callback a tu origen de OpenConnector. Para pruebas locales, usa http://localhost:3000/oauth/callback. Para una implementación pública, establece OOMOL_CONNECT_ORIGIN, reinicia OpenConnector y usa la URL de callback pública, como https://connect.example.com/oauth/callback.

Paso 2: Registrar una aplicación OAuth de GitHub

En GitHub:

  1. Abre Settings.
  2. Abre Developer settings.
  3. Abre OAuth Apps.
  4. Elige New OAuth App.
  5. Completa el nombre de la aplicación y la URL de la página de inicio.
  6. Establece Authorization callback URL en la URL de callback exacta de OpenConnector.
  7. Registra la aplicación.

La guía oficial de GitHub es Creating an OAuth app. Las aplicaciones OAuth de GitHub tienen una sola URL de callback de autorización, así que crea aplicaciones separadas para local, staging y producción si cada entorno tiene una URL de callback diferente.

Paso 3: Copiar las credenciales del cliente

Desde la página de la aplicación OAuth de GitHub, copia:

Valor de GitHubCampo de OpenConnector
Client IDclientId
Client secretclientSecret

Paso 4: Guardar el cliente de GitHub en OpenConnector

Usa la consola web de OpenConnector:

  1. Abre la consola web de OpenConnector, como http://localhost:3000.
  2. Abre Providers y selecciona GitHub.
  3. Elige Configure OAuth Client o Edit OAuth Client.
  4. Pega el client ID y el client secret de GitHub.
  5. Elige Save OAuth Client.

Paso 5: Conectar y probar

Después de guardar el cliente OAuth, elige Connect en la página del proveedor GitHub. Aprueba la aplicación OAuth de GitHub, vuelve a OpenConnector y confirma que la página del proveedor muestra la cuenta como conectada.

Usa github.get_current_user como una acción de prueba de bajo riesgo desde la lista de acciones de la consola.

Solución de problemas

SíntomaQué comprobar
URI de redirección no coincidenteLa URL de callback de autorización de GitHub debe coincidir exactamente con <openconnector-origin>/oauth/callback.
La cuenta incorrecta autorizó la aplicaciónCierra sesión en GitHub o usa un perfil de navegador limpio antes de iniciar la autorización.
Fallan las acciones del repositorioPuede que la conexión no tenga el ámbito repo o que el usuario no tenga acceso al repositorio de destino.
Fallan las acciones del flujo de trabajoPuede que la conexión no tenga el ámbito workflow. Vuelve a conectar después de ajustar los ámbitos solicitados.
Fallan las acciones de eliminaciónEvita delete_repo a menos que necesites intencionadamente acciones destructivas en el repositorio.