Ejecuta una auditoría de cumplimiento en Google Cloud

Realiza una auditoría para recopilar las pruebas que necesitas para evaluar tu organización deGoogle Cloud en función de los marcos de trabajo de cumplimiento.

Una auditoría es una operación de larga duración que puede tardar algunas horas. La duración depende de la cantidad de recursos dentro del alcance de la auditoría, que es el proyecto o la carpeta en los que te inscribiste anteriormente.

Antes de comenzar

  • Asegúrate de tener uno de los siguientes roles de IAM:

    • Administrador de Auditorías (roles/auditmanager.admin)
    • Auditor de Audit Manager (roles/auditmanager.auditor)
  • Si deseas ejecutar una auditoría en un marco de cumplimiento personalizado (versión preliminar), asegúrate de tener el rol de IAM de Visualizador del marco de cumplimiento personalizado del Administrador de auditorías (roles/auditmanager.ccfViewer).

  • Asegúrate de que tu proyecto o carpeta se haya inscrito para la auditoría.

Cómo ejecutar una auditoría

Console

  1. En la consola de Google Cloud , ve a la página Ejecutar evaluación en el Administrador de auditorías.

    Ir al Administrador de auditoría

  2. En la sección Elige el recurso y la reglamentación, haz lo siguiente:

    1. Selecciona el proyecto o la carpeta que se debe auditar.

    2. Selecciona el marco de cumplimiento con el que deseas auditar tu recurso. Puedes seleccionar un marco de cumplimiento integrado o personalizado (versión preliminar) en la lista Marcos disponibles. Para obtener más información, consulta Marcos de cumplimiento admitidos.

    3. Elige la ubicación en la que se debe procesar la evaluación de auditoría. Para obtener la lista de ubicaciones admitidas, consulta Ubicaciones del Administrador de auditorías.

    4. Haz clic en Siguiente.

  3. Opcional: En la sección Ver plan de evaluación, puedes descargar un archivo ODS que contiene información sobre el alcance de la auditoría según el marco de cumplimiento que seleccionaste. Para descargar el archivo, haz clic en el vínculo y, luego, en Siguiente.

  4. En la sección Elige un bucket de almacenamiento, selecciona un bucket de almacenamiento en el que se deben guardar el informe de auditoría y las pruebas, y haz clic en Listo. Si tu bucket no aparece en la lista, pídele a tu administrador que inscriba tu recurso en tu bucket de almacenamiento.

  5. Para iniciar la auditoría, haz clic en Ejecutar auditoría.

    Puedes ver el estado de la auditoría en la página Ver evaluaciones.

gcloud

Opcional: Genera una evaluación de auditoría

Antes de ejecutar una auditoría real, puedes generar una evaluación de la auditoría (o alcance) que incluya un desglose detallado de las tareas para la auditoría según el marco de trabajo de cumplimiento que elegiste.

El comando gcloud audit-manager audit-scopes generate genera un permiso de auditoría.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso, ya sea un proyecto o una carpeta. Por ejemplo: folder.
  • RESOURCE_ID: Es el ID del recurso del proyecto o la carpeta. Por ejemplo: 8767234.
  • LOCATION: Es la ubicación del extremo de API de Audit Manager. Para obtener una lista de los extremos disponibles, consulta Ubicaciones del Administrador de auditoría. Por ejemplo: us-central1.
  • COMPLIANCE_TYPE: Es el marco de cumplimiento con el que se realizará la auditoría.
    • Para un marco de cumplimiento integrado, especifica el nombre del marco con el que se realizará la auditoría. Por ejemplo: CIS_CONTROLS_V8.
    • Para un marco de cumplimiento personalizado (versión preliminar), especifica el nombre del marco en el siguiente formato:
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
          
    • Reemplaza lo siguiente:
      • ORG_ID: el ID de la organización
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID: ID del marco de cumplimiento personalizado
  • AUDIT_REPORT_FORMAT: Es el formato del informe de auditoría de salida. Solo se admite el formato ODF: odf.
  • OUTPUT_DIRECTORY: Es el directorio en el que se debe almacenar el resultado. Por ejemplo: reports.
  • OUTPUT_FILENAME: Es el nombre del archivo de salida. No incluyas la extensión de archivo en el nombre del archivo. Por ejemplo:scopeReport.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud audit-manager audit-scopes generate \
    --RESOURCE_TYPE=RESOURCE_ID \
    --location=LOCATION \
    --compliance-framework=COMPLIANCE_TYPE \
    --report-format=AUDIT_REPORT_FORMAT \
    --output-directory=OUTPUT_DIRECTORY \
    --output-file-name=OUTPUT_FILENAME

Windows (PowerShell)

gcloud audit-manager audit-scopes generate `
    --RESOURCE_TYPE=RESOURCE_ID `
    --location=LOCATION `
    --compliance-framework=COMPLIANCE_TYPE `
    --report-format=AUDIT_REPORT_FORMAT `
    --output-directory=OUTPUT_DIRECTORY `
    --output-file-name=OUTPUT_FILENAME

Windows (cmd.exe)

gcloud audit-manager audit-scopes generate ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --location=LOCATION ^
    --compliance-framework=COMPLIANCE_TYPE ^
    --report-format=AUDIT_REPORT_FORMAT ^
    --output-directory=OUTPUT_DIRECTORY ^
    --output-file-name=OUTPUT_FILENAME

Cómo ejecutar una auditoría

El comando gcloud audit-manager audit-reports generate ejecuta una auditoría.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso, ya sea un proyecto o una carpeta. Por ejemplo: folder.
  • RESOURCE_ID: Es el ID del recurso del proyecto o la carpeta. Por ejemplo: 8767234.
  • LOCATION: Es la ubicación del extremo de API de Audit Manager. Para obtener una lista de los extremos disponibles, consulta Ubicaciones del Administrador de auditoría. Por ejemplo: us-central1.
  • COMPLIANCE_TYPE: Es el marco de cumplimiento con el que se realizará la auditoría.
    • Para un marco de cumplimiento integrado, especifica el nombre del marco con el que se realizará la auditoría. Por ejemplo: CIS_CONTROLS_V8.
    • Para un marco de cumplimiento personalizado (versión preliminar), especifica el nombre del marco en el siguiente formato:
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
           
    • Reemplaza lo siguiente:
      • ORG_ID: el ID de la organización
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID: ID del marco de cumplimiento personalizado
  • BUCKET_URI: Es el URI del bucket de Cloud Storage. Por ejemplo: gs://testbucketauditmanager.
  • AUDIT_REPORT_FORMAT: Es el formato del informe de auditoría de salida. Solo se admite el formato ODF: odf.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud audit-manager audit-reports generate \
    --RESOURCE_TYPE=RESOURCE_ID \
    --location=LOCATION \
    --compliance-framework=COMPLIANCE_TYPE \
    --report-format=AUDIT_REPORT_FORMAT \
    --gcs-uri=BUCKET_URI

Windows (PowerShell)

gcloud audit-manager audit-reports generate `
    --RESOURCE_TYPE=RESOURCE_ID `
    --location=LOCATION `
    --compliance-framework=COMPLIANCE_TYPE `
    --report-format=AUDIT_REPORT_FORMAT `
    --gcs-uri=BUCKET_URI

Windows (cmd.exe)

gcloud audit-manager audit-reports generate ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --location=LOCATION ^
    --compliance-framework=COMPLIANCE_TYPE ^
    --report-format=AUDIT_REPORT_FORMAT ^
    --gcs-uri=BUCKET_URI

Deberías recibir una respuesta similar a la que figura a continuación:

done: false
name: projects/10398413/locations/987234/operations/operation-1726842525305-6228ddb4dca96-78a6db59-f9dd9a24

REST

Opcional: Genera una evaluación de auditoría

Antes de ejecutar una auditoría real, puedes generar una evaluación de la auditoría (o alcance) que incluya un desglose detallado de las tareas para la auditoría según el marco de trabajo de cumplimiento que elegiste.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso, ya sea un proyecto o una carpeta. Por ejemplo: folder.
  • RESOURCE_ID: Es el ID del recurso del proyecto o la carpeta. Por ejemplo: 8767234.
  • LOCATION: Es la ubicación del extremo de API de Audit Manager. Para obtener una lista de los extremos disponibles, consulta Ubicaciones del Administrador de auditoría. Por ejemplo: us-central1.
  • COMPLIANCE_TYPE: Es el marco de cumplimiento con el que se realizará la auditoría.
    • Para un marco de cumplimiento integrado, especifica el nombre del marco con el que se realizará la auditoría. Por ejemplo: CIS_CONTROLS_V8.
    • Para un marco de cumplimiento personalizado (versión preliminar), especifica el nombre del marco en el siguiente formato:
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
          
    • Reemplaza lo siguiente:
      • ORG_ID: el ID de la organización
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID: ID del marco de cumplimiento personalizado
  • AUDIT_REPORT_FORMAT: Es el formato del informe de auditoría de salida. Solo se admite el formato ODF: odf.
  • OUTPUT_DIRECTORY: Es el directorio en el que se debe almacenar el resultado. Por ejemplo: reports.
  • OUTPUT_FILENAME: Es el nombre del archivo de salida. No incluyas la extensión de archivo en el nombre del archivo. Por ejemplo:scopeReport.

Método HTTP y URL:

POST https://auditmanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION/auditScopesReport:generate

Cuerpo JSON de la solicitud:


{
  "compliance_framework" : "COMPLIANCE_TYPE"
  "report_format" : "AUDIT_REPORT_FORMAT"
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://auditmanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION/auditScopesReport:generate"

PowerShell

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://auditmanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION/auditScopesReport:generate" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{

  "scope_report_contents" : "980u43nrf090834uhbkfehf......"
  "name" : "folders/8767234/locations/us-west"
}

Cómo ejecutar una auditoría

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso, ya sea un proyecto o una carpeta. Por ejemplo: folder.
  • RESOURCE_ID: Es el ID del recurso del proyecto o la carpeta. Por ejemplo: 8767234.
  • LOCATION: Es la ubicación del extremo de API de Audit Manager. Para obtener una lista de los extremos disponibles, consulta Ubicaciones del Administrador de auditoría. Por ejemplo: us-central1.
  • COMPLIANCE_TYPE: Es el marco de cumplimiento con el que se realizará la auditoría.
    • Para un marco de cumplimiento integrado, especifica el nombre del marco con el que se realizará la auditoría. Por ejemplo: CIS_CONTROLS_V8.
    • Para un marco de cumplimiento personalizado (versión preliminar), especifica el nombre del marco en el siguiente formato:
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
           
    • Reemplaza lo siguiente:
      • ORG_ID: el ID de la organización
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID: ID del marco de cumplimiento personalizado
  • BUCKET_URI: Es el URI del bucket de Cloud Storage. Por ejemplo: gs://testbucketauditmanager.
  • AUDIT_REPORT_FORMAT: Es el formato del informe de auditoría de salida. Solo se admite el formato ODF: odf.

Método HTTP y URL:

POST https://auditmanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION//auditReport:generate

Cuerpo JSON de la solicitud:


{
  "destination" : {
    "gcs_uri" : "BUCKET_URI"
  },
  "compliance_framework" : "COMPLIANCE_TYPE"
  "report_format" : "AUDIT_REPORT_FORMAT"
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://auditmanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION//auditReport:generate"

PowerShell

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://auditmanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION//auditReport:generate" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "organizations/834/projects/10398413/locations/987234/operations/098234",
  "done": false
}

La respuesta contiene la siguiente información:

  • name: Es un identificador de cadena único de la solicitud de operación de evaluación de auditoría. Este identificador se usa para hacer un seguimiento del progreso del proceso de evaluación de la auditoría. Por ejemplo: operation/098234.
  • done: Es una marca booleana establecida en false que indica que se activó el proceso. Se establece en true cuando se completa la evaluación de la auditoría.

El campo scope_reports_contents es el formato de bytes del contenido, que se debe convertir al formato ODF antes de la revisión.

¿Qué sigue?