TMA-GITHUB-1.3.8
Ensure strict base permissions are set for repositories
Descripción
Base permissions define the permission level automatically granted to all organization members. Define strict base access permissions for all of the repositories in the organization, including new ones. Defining strict base permissions is the best practice in every role-based access control (RBAC) system. If the base permission is high - for example, "write" permission -every member of the organization will have ... default_repository_permission must be read or none. Uses the GitHub REST/GraphQL API through gh api (read-only). The repository comes from GH_REPO or the current git checkout (gh's {owner}/{repo} resolution, GH_HOST for GitHub Enterprise Server); the organization comes from GH_ORG (default: the repository owner). Fails when gh is missing or unauthenticated (gh auth login or GH_TOKEN); organization settings and branch protection need an owner/admin token.
Cómo se verifica
Método de auditoría: Comando de shell
command -v gh >/dev/null 2>&1 || exit 1
gh auth status >/dev/null 2>&1 || exit 1
O=${GH_ORG:-$(gh api 'repos/{owner}/{repo}' --jq .owner.login 2>/dev/null)}
[ -n "$O" ] || exit 1
v=$(gh api "orgs/$O" --jq '.default_repository_permission == "read" or .default_repository_permission == "none"' 2>/dev/null) || exit 1
[ "$v" = true ] && echo compliant- Salida esperada
compliant
Cómo se corrige
Método de corrección: Guía o parche de infraestructura
Organization Settings > Member privileges > Base permissions: Read or No permission; grant write via teams.
Propiedades
- Sistemas operativos
- Cualquiera
- Etiquetas
- githubsource-code
- Referencia
- CIS GitHub Benchmark v1.2.0 - 1.3.8 Ensure strict base permissions are set for repositories
Verificar este host
Ejecute esto en un equipo que tenga permiso para auditar. El escaneo es de solo lectura.
tmaegis scan --target github