En este documento, se describen los registros de auditoría que crea Controles del servicio de VPC como parte de los Registros de auditoría de Cloud.
Descripción general
Los servicios deGoogle Cloud escriben registros de auditoría que te permiten responder las preguntas “¿Quién hizo qué, dónde y cuándo?” dentro de tus recursos de Google Cloud .
Tus proyectos de Google Cloud contienen solo los registros de auditoría de los recursos que están directamente en el proyecto de Google Cloud . Otros recursos de Google Cloud , como las carpetas, los organizaciones y las cuentas de facturación, contienen los registros de auditoría correspondientes a la entidad.
Consulta la descripción general de los Registros de auditoría de Cloud para conocer más al respecto. Para comprender mejor el formato del registro de auditoría, consulta Información sobre los registros de auditoría.
Registros de auditoría disponibles
Los siguientes tipos de registros de auditoría están disponibles para los Controles del servicio de VPC:
-
Registros de auditoría de política denegada
Identifica cuándo se deniega el acceso a un usuario o a una cuenta de servicio debido a un incumplimiento de política de seguridad. El nombre del servicio y el nombre del método en los registros de auditoría de la política denegada indican los nombres del recurso al que se le denegó el acceso al usuario o a la cuenta de servicio.
No puedes inhabilitar los registros de auditoría de política denegada. Sin embargo, puedes agregar lo siguiente al filtro de exclusión en tu receptor
_Defaultpara excluir los registros de auditoría de la política denegada:LOG_ID("cloudaudit.googleapis.com/policy"). También puedes inhabilitar el receptor_Defaultpara Cloud Logging, lo que evita que los registros se enruten al bucket_Default.
Para obtener descripciones más completas de los tipos de registros de auditoría, consulta Tipos de registros de auditoría.
Operaciones auditadas
En la siguiente tabla, se resumen las operaciones de la API que corresponden a cada tipo de registro de auditoría en los Controles del servicio de VPC:
| Categoría de registros de auditoría | Métodos de Controles del servicio de VPC |
|---|---|
| Registros de auditoría de política denegada | Se admiten los métodos de los servicios que se integran con los Controles del servicio de VPC. |
Contenido del registro de auditoría
Cada registro de auditoría contiene información que se puede dividir en dos categorías principales: la información sobre la llamada original y la información sobre violaciones a la política de seguridad. Se completa con la API de Controles del servicio de VPC de la siguiente manera:
| Campo de registro de auditoría | Descripción |
|---|---|
serviceName |
Es el servicio al que un perímetro de servicio restringe el acceso. La solicitud a este servicio incumplió una verificación de los Controles del servicio de VPC y generó la creación de este registro de auditoría. |
methodName
|
Es el nombre de la llamada de método que generó el incumplimiento de política de seguridad descrita en este registro. A menudo, methodName es el
método asociado con el servicio Google Cloud especificado en el
campo serviceName.
|
authenticationInfo.principalEmail
|
Es la dirección de correo electrónico del usuario o la cuenta de servicio que emitió
la solicitud. Es posible que se oculten algunas direcciones de correo electrónico. Para obtener más información, consulta Identidades de las llamadas en los registros de auditoría. |
resourceName
|
Es el recurso Google Cloud que se especifica en la solicitud original del cliente.
El recurso resourceName puede ser un proyecto, una carpeta, una organización o un
recurso, como un bucket de Google Cloud .
|
requestMetadata.callerIp |
Es la dirección IP de la persona que llama.
Si la llamada se originó en Internet,
Si la llamada se originó en una VM de Compute Engine,
el recurso Si la llamada se originó dentro de la red de producción interna de Google,
el valor de este campo es |
request_metadata.caller_network
|
Es el nombre de la red de la persona que llama. Este valor solo se establece si el proyecto host de la red pertenece a la misma organización o proyecto de Google Cloud al que pertenece el recurso al que se accedió. Para obtener más información, consulta Redes de VPC. |
status
|
Es el estado general del control de una operación que se describe en este registro. |
metadata
|
Es la información sobre el incumplimiento de política de seguridad. |
metadata.resourceNames |
Son los nombres de los recursos relacionados con el incumplimiento de política de seguridad que se describe en el registro. |
metadata.dryRun
|
Es un valor booleano que es True si el registro de auditoría
es para una verificación de la política de la prueba de validación. Si deseas obtener más información, consulta Modo de ejecución de prueba para perímetros de servicio.
|
metadata.vpcServiceControlsTroubleshootToken |
Es un token de solución de problemas que te permite diagnosticar el incumplimiento con el analizador de incumplimientos (vista previa). |
metadata.vpcServiceControlsUniqueId
|
Es el identificador único del incumplimiento de los Controles del servicio de VPC que se describe en el registro. |
metadata.violationReason
|
Es el motivo del incumplimiento. Por ejemplo,
RESOURCE_NOT_IN_SAME_SERVICE_PERIMETER significa que los
recursos a los que se accede no pertenecen al mismo perímetro de servicio.
|
metadata.securityPolicyInfo
|
Es el nombre del perímetro de servicio en el que se produjo el incumplimiento y el identificador único de la organización a la que pertenece el perímetro. |
metadata.egressViolations
|
Por lo general, se produce un incumplimiento de salida cuando falla una solicitud porque la fuente está protegida por un perímetro de servicio y el recurso de destino está fuera del perímetro. La fuente puede ser un proyecto o una red de VPC. |
metadata.ingressViolations |
Es el tipo de incumplimiento. Con frecuencia, este incumplimiento se produce si la solicitud intenta acceder a un recurso de destino protegido por un perímetro de servicio. La fuente puede ser un proyecto o una red de VPC. Este campo contiene una estructura que explica el incumplimiento de ingreso. |
metadata.servicePerimeter |
Es el nombre del perímetro de servicio involucrado en el incumplimiento. |
metadata.source |
Este campo contiene la fuente de la solicitud, que puede ser un proyecto o una red de VPC. |
metadata.targetResource |
Es el recurso al que se dirigió la solicitud y que causó el incumplimiento. Este campo puede ser un proyecto. |
metadata.targetResourcePermissions |
Es la lista de permisos de IAM que se requieren para acceder al recurso de destino. Para resolver el incumplimiento, configura reglas de entrada o salida que permitan los roles de IAM que contienen estos permisos. Si el permiso de IAM requerido es desconocido o proviene de un servicio
o método no admitido, los Controles del servicio de VPC registran |
metadata.accessLevels
|
Todos los niveles de acceso que coincidan en la organización que pertenecen a la misma
política de acceso. Es posible que estos niveles de acceso no se especifiquen en el perímetro
con incumplimiento y, por lo tanto, pueden causar un incumplimiento
de NO_MATCHING_ACCESS_LEVEL.
|
metadata.intermediateServices
|
Es la lista de los servicios involucrados en la cadena de solicitudes. Este campo está vacío para las solicitudes iniciadas por el usuario. |
metadata.deviceState
|
Es el estado del dispositivo que crea la solicitud cuando se habilita la política del dispositivo. El valor predeterminado de este campo es Unknown.
|
Formato de registro de auditoría
Las entradas del registro de auditoría incluyen los siguientes objetos:
La entrada de registro, que es un objeto de tipo
LogEntry. Los campos útiles incluyen los siguientes:- El campo
logNamecontiene el ID del recurso y el tipo de registro de auditoría. - El campo
resourcecontiene el objetivo de la operación auditada. - El campo
timeStampcontiene la hora de la operación auditada. - El campo
protoPayloadcontiene la información auditada.
- El campo
Los datos de registro de auditoría, que son un objeto
AuditLogalojado en el campoprotoPayloadde la entrada de registro.La información opcional de auditoría específica del servicio, que es un objeto específico del servicio. En las integraciones anteriores, este objeto se mantiene en el campo
serviceDatadel objetoAuditLog. Las integraciones posteriores usan el campometadata.
Para obtener información sobre otros campos en estos objetos, además de cómo interpretarlos, consulta Información sobre los registros de auditoría.
Nombre del registro
Los nombres de los Registros de auditoría de Cloud incluyen identificadores de recursos que indican el proyecto deGoogle Cloud o cualquier otra entidad de Google Cloud que posee los registros de auditoría, y si el registro contiene datos de registro de auditoría de actividad del administrador, acceso a los datos, política denegada o eventos del sistema.
A continuación, se muestran los nombres de los registros de auditoría, incluidas las variables para los identificadores de recursos:
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Factivity billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fdata_access billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fpolicy organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy
Nombre del servicio
Los registros de auditoría de los Controles del servicio de VPC usan los nombres de los servicios que se integran con los Controles del servicio de VPC.
Para obtener una lista de todos los nombres de los servicios de la API de Cloud Logging y su tipo de recurso supervisado correspondiente, consulta Asigna servicios a recursos.
Tipos de recursos
Los registros de auditoría de los Controles del servicio de VPC usan los tipos de recursos que admiten los servicios que se integran con los Controles del servicio de VPC.
Para obtener una lista de todos los tipos de recursos supervisados de Cloud Logging y la información descriptiva, consulta Tipos de recursos supervisados.
Identidades de las personas que llaman
La dirección IP de la persona que llama se encuentra en el campo RequestMetadata.caller_ip del
objeto AuditLog. Logging podría ocultar ciertas
identidades de personas que llaman y direcciones IP.
Para obtener información sobre los datos que se ocultan en los registros de auditoría, consulta Identidades de las llamadas en los registros de auditoría.
Habilita el registro de auditoría
Los registros de auditoría de actividad del administrador siempre están habilitados; no puedes inhabilitarlos.
Permisos y funciones
Los permisos y roles de IAM determinan tu capacidad para acceder a los datos de registros de auditoría en los recursos de Google Cloud .
Cuando decidas qué roles y permisos específicos de Logging se aplican a tu caso de uso, considera lo siguiente:
El rol visor de registros (
roles/logging.viewer) te otorga acceso de solo lectura a los registros de auditoría de la actividad del administrador, la política denegada y los eventos del sistema. Si solo tienes este rol, no podrás ver los registros de auditoría de acceso a los datos que se encuentren en el bucket_Default.El visor de registros privados (
(roles/logging.privateLogViewer) incluye los permisos que contieneroles/logging.viewer, además de la capacidad de leer registros de auditoría de acceso a los datos del bucket_Default.Ten en cuenta que si estos registros privados se almacenan en buckets definidos por el usuario, cualquier usuario que tenga permisos para leer registros en esos buckets puede leer los registros privados. Para obtener más información sobre los buckets de registros, consulta Descripción general del enrutamiento y el almacenamiento.
Para obtener más información de los permisos y los roles de IAM que se aplican a los datos de registros de auditoría, consulta Control de acceso con la IAM.
Visualiza registros
Puedes consultar todos los registros de auditoría o buscar registros por su
nombre de registro de auditoría. El nombre del registro de auditoría incluye el
identificador de recursos
del proyecto de Google Cloud , la carpeta, la cuenta de facturación o
la organización para la que deseas ver la información de auditoría.
Tus consultas pueden especificar campos LogEntry indexados.
Para obtener más información sobre cómo realizar consulta de tus registros, consulta Crea consultas en el Explorador de registros
El Explorador de registros te permite ver y filtrar entradas de registro individuales. Si deseas usar SQL para analizar grupos de entradas de registro, usa la página Análisis de registros. Para obtener más información, consulta:
- Consulta y visualiza registros en Análisis de registros
- Consultas de ejemplo de estadísticas de seguridad
- Resultados de consultas de gráficos
La mayoría de los registros de auditoría se pueden ver en Cloud Logging con la consola deGoogle Cloud , Google Cloud CLI o la API de Logging. Sin embargo, para los registros de auditoría relacionados con la facturación, solo puedes usar Google Cloud CLI o la API de Logging.
Consola
En la consola de Google Cloud , puedes usar el Explorador de registros para recuperar las entradas de registro de auditoría de tu proyecto de Google Cloud , carpeta u organización:
-
En la consola de Google Cloud , accede a la página Explorador de registros:
Acceder al Explorador de registros
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
Elige un proyecto, carpeta u organización de Google Cloud existentes.
Para mostrar todos los registros de auditoría, ingresa cualquiera de las siguientes consultas en el campo del Editor de consultas y, luego, haz clic en Ejecutar consulta:
logName:"cloudaudit.googleapis.com"
protoPayload."@type"="type.googleapis.com/google.cloud.audit.AuditLog"
Para mostrar los registros de auditoría de un recurso específico y un tipo de registro de auditoría, en el panel Compilador de consultas, haz lo siguiente:
En Tipo de recurso, elige el recurso de Google Cloud cuyos registros de auditoría quieres consultar.
En Nombre del registro, selecciona el tipo de registro de auditoría que deseas ver:
- En el caso de los registros de auditoría de la actividad del administrador, selecciona activity.
- En los registros de auditoría de acceso a los datos, selecciona data_access.
- En el caso de los registros de auditoría de eventos del sistema, selecciona system_event.
- En el caso de los registros de auditoría de política denegada, selecciona policy.
Haz clic en Ejecutar consulta.
Si no ves estas opciones, significa que no hay registros de auditoría de ese tipo disponibles en el proyecto, la carpeta o la organización de Google Cloud .
Si tienes problemas cuando intentas ver registros en el Explorador de registros, consulta la información sobre solución de problemas.
Para obtener más información sobre las consultas con el Explorador de registros, consulta Crea consultas en el Explorador de registros.
gcloud
Google Cloud CLI proporciona una interfaz de línea de comandos a la API de Logging. Proporciona un identificador de recurso válido en cada uno de los nombres de registro. Por ejemplo, si tu búsqueda incluye un PROJECT_ID, el identificador del proyecto que proporciones debe hacer referencia al proyecto deGoogle Cloud seleccionado actualmente.
Para leer las entradas del registro de auditoría a nivel del proyecto de Google Cloud , ejecuta el siguiente comando:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \
--project=PROJECT_ID
Para leer las entradas del registro de auditoría a nivel de las carpetas, ejecuta el siguiente comando:
gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" \
--folder=FOLDER_ID
Para leer las entradas del registro de auditoría a nivel de organización, ejecuta el siguiente comando:
gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \
--organization=ORGANIZATION_ID
Para leer las entradas del registro de auditoría a nivel de la cuenta de Facturación de Cloud, ejecuta el siguiente comando:
gcloud logging read "logName : billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com" \
--billing-account=BILLING_ACCOUNT_ID
Agrega la marca --freshness
a tu comando para leer los registros que tienen más de 1 día de antigüedad.
Para obtener más información del uso de gcloud CLI, consulta
gcloud logging read.
REST
Cuando crees tus consultas, proporciona un identificador de recurso válido en cada uno de los nombres de registro. Por ejemplo, si tu búsqueda incluye un PROJECT_ID, el identificador del proyecto que proporciones debe hacer referencia al proyecto deGoogle Cloud seleccionado actualmente.
Por ejemplo, si quieres usar la API de Logging para ver las entradas de registro de auditoría a nivel de proyecto, haz lo siguiente:
Ve a la sección Probar esta API en la documentación del método
entries.list.Ingresa lo siguiente en el cuerpo de la solicitud del formulario Prueba esta API. Cuando haces clic en este formulario prepropagado, se completará el cuerpo de la solicitud de manera automática, pero deberás proporcionar un PROJECT_ID válido para cada nombre de registro.
{ "resourceNames": [ "projects/PROJECT_ID" ], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" }Haz clic en Ejecutar.
Consultas de muestra
Para usar las consultas de muestra en la siguiente tabla, completa estos pasos:
Reemplaza las variables en la expresión de consulta con la información de tu proyecto y, luego, copia la expresión con el ícono de portapapeles content_copy.
-
En la consola de Google Cloud , accede a la página Explorador de registros:
Acceder al Explorador de registros
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
Habilita Mostrar consulta para abrir el campo query-editor y, luego, pega la expresión en el campo query-editor:
Haz clic en Ejecutar consulta. Los registros que coincidan con la consulta se enumerarán en el panel Resultados de la consulta.
Para buscar registros de auditoría de los Controles del servicio de VPC, usa las siguientes consultas en el Explorador de registros:
| Descripción de la consulta | Expresión |
|---|---|
| Detalles del incumplimiento según un ID de rechazo | log_id("cloudaudit.googleapis.com/policy") severity=ERROR resource.type="audited_resource" protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata" protoPayload.metadata.vpcServiceControlsUniqueId="UNIQUE_ID" Reemplaza |
| Incumplimientos de una dirección IP | log_id("cloudaudit.googleapis.com/policy") severity=ERROR resource.type="audited_resource" protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata" protoPayload.requestMetadata.callerIp="IP_ADDRESS" Reemplaza |
| Incumplimientos de un servicio | log_id("cloudaudit.googleapis.com/policy") severity=ERROR resource.type="audited_resource" protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata" protoPayload.serviceName="SERVICE_NAME" Reemplaza |
| Cambio de nivel de acceso realizado en un perímetro | logName="organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity" severity=NOTICE protoPayload.serviceName="accesscontextmanager.googleapis.com" protoPayload.methodName="google.identity.accesscontextmanager.v1.AccessContextManager.UpdateServicePerimeter" -protoPayload.metadata.previousState:"ACCESS_LEVEL" protoPayload.request.servicePerimeter.status.accessLevels:"ACCESS_LEVEL" Reemplaza |
| Operaciones CRUD del perímetro | logName="organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity" severity=NOTICE protoPayload.serviceName="accesscontextmanager.googleapis.com" protoPayload.methodName=~"google.identity.accesscontextmanager.v1.AccessContextManager.*ServicePerimeter" protoPayload.request.servicePerimeter.name=~".*PERIMETER_NAME$" PERIMETER_NAME por el nombre del perímetro. |
| Operaciones CRUD de nivel de acceso | logName="organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity" severity=NOTICE protoPayload.serviceName="accesscontextmanager.googleapis.com" protoPayload.methodName=~"google.identity.accesscontextmanager.v1.AccessContextManager.*AccessLevel" protoPayload.request.accessLevel.name=~".*ACCESS_LEVEL$" |
| Operaciones de creación y actualización de las reglas de entrada | logName="organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity" protoPayload.serviceName="accesscontextmanager.googleapis.com" protoPayload.methodName=~"google.identity.accesscontextmanager.v1.AccessContextManager.*ServicePerimeter" protoPayload.request.servicePerimeter.status.ingressPolicies:"*" |
| Operaciones de creación y actualización de las reglas de salida | logName="organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity" protoPayload.serviceName="accesscontextmanager.googleapis.com" protoPayload.methodName=~"google.identity.accesscontextmanager.v1.AccessContextManager.*ServicePerimeter" protoPayload.request.servicePerimeter.status.egressPolicies:"*" |
Enruta registros de auditoría
Puedes enrutar registros de auditoría a destinos compatibles de la misma manera en la que enrutas otros tipos de registros. Estos son algunos de los motivos por los que es posible que quieras enrutar tus registros de auditoría:
Para mantener los registros de auditoría por un período más extenso o usar capacidades de búsqueda más potentes, puedes exportar copias de tus registros de auditoría a Cloud Storage, BigQuery o Pub/Sub. Con Pub/Sub, puedes enrutar a otras aplicaciones, a otros repositorios y a terceros.
Para administrar los registros de auditoría en toda la organización, puedes crear receptores agregados que puedan enrutar registros desde una parte o la totalidad del proyecto de Google Cloud de la organización o desde todos los proyectos.
Para obtener instrucciones sobre los registros de enrutamiento, consulta Enruta registros a destinos admitidos.
Precios
Para obtener más información sobre los precios, consulta las secciones de Cloud Logging en la página Precios de Google Cloud Observability.