Configuración del origen para registros de auditoría de GitHub - Amazon CloudWatch
nota

Importante: Se requieren cuentas de GitHub Enterprise para usar este conector. No se admiten las cuentas personales o de organización de GitHub.

Configuración del origen para registros de auditoría de GitHub

Integración de con GitHub

Las canalizaciones de telemetría de Amazon le permiten recopilar registros de auditoría de GitHub Enterprise Cloud. GitHub Enterprise es una plataforma de desarrollo de software empresarial diseñada para flujos de trabajo complejos del desarrollo moderno. GitHub Enterprise Cloud es la solución basada en la nube de GitHub Enterprise y se aloja en los servidores de GitHub.

Autenticación con GitHub

Para leer los registros de auditoría, la canalización debe autenticarse con su cuenta de GitHub. Para el ámbito de empresa, puede utilizar el token de acceso personal, mientras que, para el ámbito de organización, puede utilizar el token de acceso personal o la aplicación de GitHub.

Genere el token para autenticarse como token de acceso personal:

  • Inicie sesión en GitHub con las credenciales de la cuenta de GitHub.

  • El usuario autenticado debe ser un administrador empresarial para usar este punto de conexión.

  • Abre la página Personal access tokens (classic) de GitHub, busque Generate new token (classic) y siga el procedimiento de GitHub para generar un token con el ámbito read:audit_log y sin caducidad.

  • Guarda este nuevo token en un secreto de AWS Secrets Manager con la clave personal_access_token.

Genere la clave privada para autenticarse como aplicación de GitHub:

  • Inicie sesión en GitHub con las credenciales de la cuenta de GitHub.

  • Asegúrese de que la aplicación de GitHub tenga el permiso para permisos de organización “Administration” (lectura)

  • Siga las instrucciones de Managing private keys for GitHub Apps y genere la clave privada.

  • Guarde esta clave privada en un secreto de AWS Secrets Manager con la clave private_key y el nombre de la aplicación de GitHub con la clave app_id.

Configuración de la canalización de CloudWatch

Al configurar la canalización para leer registros de auditoría de GitHub Enterprise Cloud, elija registros de auditoría de GitHub como origen de datos. Seleccione el tipo de origen como empresa u organización según el ámbito de la integración y rellene la información obligatoria, como el nombre de la empresa u organización, de acuerdo con el ámbito seleccionado. Una vez que haya creado la canalización, los datos estarán disponibles en el grupo de registro de Registros de CloudWatch.

Clases de eventos del Marco de esquema de ciberseguridad abierto compatibles

Esta integración es compatible con la versión 1.5.0 del esquema OCSF y las acciones de GitHub que se asignan al cambios de cuentas (3001), la actividad de la API (6003) y la administración de entidades (3004).

El cambio de cuentas contiene las siguientes acciones:

  • org.enable_two_factor_requirement

  • org.disable_two_factor_requirement

  • two_factor_authentication.add_factor

  • two_factor_authentication.enabled

  • two_factor_authentication.disabled

  • two_factor_authentication.remove_factor

  • org.disable_saml

  • org.enable_saml

  • personal_access_token.access_restriction_disabled

  • personal_access_token.access_restriction_enabled

  • personal_access_token.expiration_limit_set

  • personal_access_token.expiration_limit_unset

La actividad de la API contiene las siguientes acciones:

  • repository_secret_scanning_custom_pa....create

  • repository_secret_scanning_custom_pa....update

  • repository_secret_scanning_custom_pa....delete

  • repository_secret_scanning_custom_pa....publish

  • repository_secret_scanning_custom_p....enabled

  • repository_secret_scanning_custom_p....disabled

  • repository_secret_scanning_non_provi....enabled

  • repository_secret_scanning_non_provi....disabled

  • repository_secret_scanning_generic_s....enabled

  • repository_secret_scanning_generic_s....disabled

  • business_secret_scanning_custom_pattern.create

  • business_secret_scanning_custom_pattern.update

  • business_secret_scanning_custom_pattern.delete

  • business_secret_scanning_custom_pattern.publish

  • business_secret_scanning_custom_patt....enabled

  • business_secret_scanning_custom_patt....disabled

  • business_secret_scanning_generic_secrets.enabled

  • business_secret_scanning_generic_secrets.disabled

  • business_secret_scanning_non_provide....enabled

  • business_secret_scanning_non_provide....disabled

  • org_secret_scanning_non_provider_patt....enabled

  • org_secret_scanning_non_provider_patt....disabled

  • org_secret_scanning_generic_secrets.enabled

  • org_secret_scanning_generic_secrets.disabled

  • org_secret_scanning_custom_pattern.create

  • org_secret_scanning_custom_pattern.update

  • org_secret_scanning_custom_pattern.delete

  • org_secret_scanning_custom_pattern.publish

La administración de entidades contiene las acciones siguientes:

  • oauth_application.destroy

  • oauth_application.generate_client_secret

  • oauth_application.remove_client_secret

  • oauth_application.revoke_all_tokens

  • oauth_application.revoke_tokens

  • oauth_application.transfer

  • personal_access_token.auto_approve_grant_requests_enabled

  • personal_access_token.auto_approve_grant_requests_disabled

  • ip_allow_list.disable

  • ip_allow_list.enable_for_installed_apps

  • ip_allow_list.disable_for_installed_apps

  • ip_allow_list_entry.create

  • ip_allow_list_entry.update

  • ip_allow_list_entry.destroy

  • repository_secret_scanning.disable

  • repository_secret_scanning_automatic....disabled

  • repository_secret_scanning_push_prot....disable

  • repository_secret_scanning_push_prot....enable

  • oauth_application.create

  • oauth_application.reset_secret

  • auto_approve_personal_access_token_req....enabled

  • auto_approve_personal_access_token_req....disabled

  • ip_allow_list.enable

  • ip_allow_list.disable_user_level_enforcement

  • ip_allow_list.enable_user_level_enforcement

  • repository_secret_scanning.enable

  • repository_secret_scanning_automatic....enabled

  • repository_secret_scanning_push_prot....enable

  • repository_secret_scanning_push_prot....add

  • repository_secret_scanning_push_prot....remove

  • repository_secret_scanning_push_prot....disable

  • secret_scanning.enable

  • secret_scanning.disable

  • secret_scanning_new_repos.enable

  • org_secret_scanning_automatic_validi....enabled

  • org_secret_scanning_automatic_validi....disabled

  • org_secret_scanning_push_protection_b....add

  • org_secret_scanning_push_protection_b....remove

  • org_secret_scanning_push_protection_b....disable

  • org_secret_scanning_push_protection_b....enable

  • business_secret_scanning_automatic_va....enabled

  • business_secret_scanning_automatic_va....disabled

  • business_secret_scanning_push_protection.enable

  • business_secret_scanning_push_protection.disable

  • business_secret_scanning_push_protection.enabled_for_new_repos

  • business_secret_scanning_push_protection.disabled_for_new_repos

  • business_secret_scanning_push_prote....enable

  • business_secret_scanning_push_prote....update

  • business_secret_scanning_push_prote....disable