Administración de las características y las alertas de GitHub Advanced Security

Completado

Ahora que la seguridad del proyecto está configurada, todo lo que tiene que hacer es supervisar y administrar las características y alertas de Advanced Security de GitHub para el proyecto.

En esta unidad, aprenderá a usar la información general de seguridad para supervisar los riesgos de seguridad en el proyecto. En esta unidad también se explica cómo utilizar los endpoints de Seguridad avanzada de GitHub para administrar las características y alertas de Seguridad avanzada de GitHub.

Uso de la información general de seguridad

La información general de seguridad está disponible en la pestaña Seguridad de organizaciones y repositorios. Puede usarlo para obtener una vista general del estado de seguridad de su organización o para identificar repositorios problemáticos que requieren intervención.

  • En el nivel de organización, la información general de seguridad muestra información de seguridad agregada y específica del repositorio para los repositorios que posee su organización. También puede filtrar la información por característica de seguridad.
  • En el nivel de equipo, la información general de seguridad muestra información de seguridad específica del repositorio para los repositorios para los que el equipo tiene privilegios de administrador.
  • En el nivel de repositorio, la información general de seguridad muestra qué características de seguridad están habilitadas para el repositorio y ofrece la opción de configurar las características de seguridad disponibles que no están en uso actualmente.

Captura de pantalla de la información general de seguridad en el nivel de organización.

Gracias a su alto nivel de interactividad y numerosos filtros, la información general de seguridad es útil para análisis amplios y específicos del estado de seguridad de su organización. Por ejemplo, puede usarlo para supervisar la adopción de características por su organización o por un equipo específico a medida que implemente GitHub Advanced Security en su empresa, o úselo para revisar todas las alertas de un tipo específico y un nivel de gravedad en todos los repositorios de su organización.

Uso de los puntos de conexión de Seguridad avanzada de GitHub

En la tabla siguiente se explica qué puntos de conexión están disponibles para cada característica de Advanced Security con vínculos a su documentación.

Característica Puntos finales Documentación
Examen de código Recupere y actualice las alertas de análisis de código de un repositorio.
Cree informes automatizados para alertas de análisis de código en una organización.
Cargue los resultados del análisis generados mediante herramientas de análisis de código sin conexión.
API de análisis de código
Análisis de secretos Habilite o deshabilite el escaneo de secretos de un repositorio.
Recuperar y actualizar alertas de examen de secretos desde un repositorio privado.
API de repositorios
API de escaneo de secretos
Revisión de dependencias Habilite y deshabilite las alertas de dependencia y el gráfico de dependencias de un repositorio.
Habilite y deshabilite las correcciones de seguridad de un repositorio.
Ver información de dependencia.
API de repositorios
GraphQL API

Si decide usar Acciones de GitHub para automatizar los flujos de trabajo de seguridad, es importante establecer correctamente los permisos para los GITHUB_TOKEN usados para realizar llamadas API autenticadas. GITHUB_TOKEN tiene permisos predeterminados en función del ámbito:

Ámbito Acceso predeterminado (permisivo) Acceso predeterminado (restringido) Acceso máximo por repositorios bifurcados
Acciones lectura y escritura Ninguno lectura
checks lectura y escritura Ninguno lectura
contenido lectura y escritura lectura lectura
despliegues lectura y escritura Ninguno lectura
token de identificación lectura y escritura Ninguno lectura
problemas lectura y escritura Ninguno lectura
metadatos lectura lectura lectura
Paquetes lectura y escritura Ninguno lectura
pull-requests lectura y escritura Ninguno lectura
proyectos de repositorio lectura y escritura Ninguno lectura
eventos de seguridad lectura y escritura Ninguno lectura
statuses lectura y escritura Ninguno lectura

Puede modificar los permisos de GITHUB_TOKEN en archivos de flujo de trabajo individuales. Si los permisos predeterminados para GITHUB_TOKEN son restrictivos, es posible que tenga que aumentar los permisos para permitir que algunas acciones y comandos se ejecuten correctamente. Si los permisos predeterminados son permisivos, puede editar el archivo de flujo de trabajo para quitar algunos permisos de GITHUB_TOKEN. Como práctica de seguridad recomendada, debe conceder el permiso de acceso menos necesario a GITHUB_TOKEN.

También puede usar la clave en sus archivos de flujo de trabajo permissions para modificar los permisos del GITHUB_TOKEN para todo un flujo de trabajo o para trabajos individuales. Esta clave permite configurar los permisos mínimos necesarios para un flujo de trabajo o trabajo. Cuando se usa la clave permissions, todos los permisos no especificados se establecen en Sin acceso, a excepción del ámbito de metadatos, que siempre obtiene acceso de lectura.

name: Create issue on commit

on: [ push ]

jobs:
  create_commit:
    runs-on: ubuntu-latest
    permissions:
      issues: write
    steps:
      - name: Create issue using REST API
        run: |
          curl --request POST \
          --url http(s)://[hostname]/api/v3/repos/${{ github.repository }}/issues \
          --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \
          --header 'content-type: application/json' \
          --data '{
            "title": "Automated issue for commit: ${{ github.sha }}",
            "body": "This issue was automatically created by the GitHub Action workflow **${{ github.workflow }}**. \n\n The commit hash was: _${{ github.sha }}_."
            }' \
          --fail

En el ejemplo anterior, se concede acceso de escritura para un ámbito de un único trabajo.

Además, puede usar la tecla permissions para agregar y quitar permisos de lectura para repositorios bifurcados, pero normalmente no se puede conceder acceso de escritura. La excepción a este comportamiento es si seleccionó la opción Send write tokens to workflows from pull requests (Enviar tokens de escritura a flujos de trabajo desde solicitudes de incorporación de cambios) en la configuración de Acciones de GitHub.