En esta guía, se explica cómo habilitar o inhabilitar algunos o todos Registros de auditoría de acceso a los datos proyectos de Google Cloud, cuentas de facturación, carpetas y organizaciones con la consola de Google Cloud o la API.
Antes de comenzar
Antes de continuar con la configuración de los registros de auditoría de acceso a los datos, comprende la siguiente información:
Los registros de auditoría de acceso a los datos se encuentran inhabilitados de forma predeterminada, excepto para BigQuery. Si deseas que se escriban los registros de auditoría de acceso a los datos para los servicios de Google Cloud que no sean BigQuery, debes habilitarlos de manera explícita.
Los registros de auditoría de acceso a los datos se almacenan
_Default
, a menos que sea los has enrutado a otro lugar. Para obtener más información, consulta Almacena y enruta registros de auditoría.Los registros de auditoría de acceso a los datos ayudan a Atención al cliente de Google a solucionar problemas con tu cuenta. Por lo tanto, recomendamos habilitar los registros de auditoría de acceso a los datos cuando sea posible.
Descripción general de la configuración
Puedes habilitar y configurar ciertos aspectos de los registros de auditoría de acceso a los datos de tus recursos y servicios de Google Cloud:
Organizaciones: Puedes habilitar y configurar registros de auditoría de acceso a los datos en un de Google, que se aplica a todos los procesos proyectos y carpetas de Google Cloud de la organización.
Carpetas: Puedes habilitar y configurar registros de auditoría de acceso a los datos en una que se aplica a todos los proyectos nuevos y existentes de Google Cloud la carpeta. No puedes inhabilitar un registro de auditoría de acceso a los datos que se habilitó en la organización principal del proyecto.
Proyectos: puedes configurar registros de auditoría de acceso a los datos para un individuo proyecto de Google Cloud. No se puede inhabilitar un registro de auditoría de acceso a los datos que se habilitó en una organización o carpeta superior.
Cuentas de facturación: Configura los registros de auditoría de acceso a los datos para la facturación de servicio, usa Google Cloud CLI. Para obtener más información sobre el uso gcloud CLI con registros de auditoría de acceso a los datos y cuentas de facturación consulta la documentación de referencia para
gcloud beta billing accounts set-iam-policy
Configuración predeterminada: Puedes especificar un registro de auditoría de acceso a los datos predeterminado. configuración en una organización, carpeta o proyecto de Google Cloud que se aplica a futuros servicios de Google Cloud que comiencen a producir datos Accede a los registros de auditoría. Para obtener instrucciones, consulta Establece la configuración predeterminada.
Servicios: Puedes especificar los servicios cuyos registros de auditoría desees que reciben. Por ejemplo, es posible que desees obtener registros de auditoría de Compute Engine, pero no de Cloud SQL. Para obtener una lista de Google Cloud que pueden generar registros de auditoría, consulta Servicios de Google con registros de auditoría.
Tipos de registros: Puedes configurar en qué tipos de operaciones se registran. tus registros de auditoría de acceso a los datos. Existen tres tipos de registros de auditoría de acceso a los datos:
ADMIN_READ
: Registra las operaciones que leen metadatos o información de configuración.DATA_READ
: Registra las operaciones que leen datos proporcionados por el usuario.DATA_WRITE
: Registra las operaciones que escriben datos que proporcionó el usuario.
Por ejemplo, Cloud DNS escribe los tres tipos de registros de acceso a los datos, pero podrías configurar tus registros de auditoría de acceso a los datos para que registren solo
DATA_WRITE
.Principales exentas: Puedes eximir principales específicas de y registrar el acceso a los datos. Por ejemplo, puedes excluir tu que las cuentas de prueba interna tengan operaciones se graban. Para obtener una lista de principales válidas, incluidos usuarios y grupos, consulta la Referencia de tipo
Binding
.
Puedes configurar tus registros de auditoría de acceso a los datos con la IAM Registros de auditoría de la consola de Google Cloud o mediante la API. Estos métodos se explican en las siguientes secciones.
Configuración específica del servicio
Si hay una configuración de todo el servicio de Google Cloud (allServices
) y una configuración de un servicio específico de Google Cloud, la configuración resultante del servicio es la unión de las dos opciones de configuración.
En otras palabras:
Puedes habilitar los registros de auditoría de acceso a los datos para servicios específicos de Google Cloud, pero no puedes inhabilitarlos en los servicios de Google Cloud habilitados en la configuración más amplia.
Puedes agregar tipos de información adicionales al registro de auditoría de acceso a los datos de un servicio de Google Cloud, pero no puedes quitar los tipos que se especifican en la configuración más amplia.
Puedes agregar principales a las listas de exenciones, pero no puedes quitarlas de las listas de exención en la configuración más amplia.
Para el Servicio de transferencia de datos de BigQuery, la configuración del registro de auditoría de acceso a los datos es de la configuración predeterminada del registro de auditoría.
Parámetros de configuración de recursos de Google Cloud
Puedes configurar registros de auditoría de acceso a los datos para proyectos de Google Cloud. cuentas de facturación, carpetas y organizaciones. Si hay una configuración para un servicio de Google Cloud en toda la jerarquía, y el resultado configuración es la unión de las configuraciones. En otras palabras, en la Nivel de proyecto de Google Cloud:
Puedes habilitar los registros para un servicio de Google Cloud, pero no puedes inhabilitarlos registros de un servicio de Google Cloud habilitado en una cuenta organización o carpeta.
Puede habilitar tipos de información, pero no inhabilitar que están habilitadas en una organización o carpeta superior.
Puedes agregar principales a las listas de exenciones, pero no puedes quitarlas de las listas de exención en una organización o carpeta superior.
A nivel de la organización o carpeta superior, puedes habilitar la auditoría de acceso a los datos registros para un proyecto de Google Cloud dentro de esa organización o carpeta, incluso Si no se han configurado los registros de auditoría de acceso a los datos proyecto de Google Cloud.
Control de acceso
Las funciones y los permisos de la administración de identidades y accesos rigen el acceso a los datos de Logging, incluida la visualización y la administración de las políticas de IAM subyacentes de las configuraciones de registro de auditoría de acceso a los datos.
Para ver o establecer las políticas asociadas con la configuración de acceso a los datos, necesitas una función con permisos en el nivel de recursos adecuado. Para obtener instrucciones sobre que otorgues estos roles a nivel de recursos, consulta Administra el acceso a proyectos, carpetas y organizaciones de Google Cloud.
Para establecer las políticas de IAM, necesitas una función con el permiso
resourcemanager.RESOURCE_TYPE.setIamPolicy
.Para ver las políticas de IAM, necesitas una función con el permiso
resourcemanager.RESOURCE_TYPE.getIamPolicy
.
Para ver la lista de permisos y roles, debes ver la auditoría de acceso a los datos de seguridad, consulta Control de acceso con la IAM.
Configura registros de auditoría de acceso a los datos con la consola de Google Cloud
En esta sección, se explica cómo usar la consola de Google Cloud para configurar datos Accede a los registros de auditoría.
También puedes usar la API o Google Cloud CLI para realizar estas tareas programáticamente; ver Configura registros de auditoría de acceso a los datos con la API para obtener más detalles.
Para acceder a las opciones de configuración del registro de auditoría en la consola de Google Cloud, sigue estos pasos:
-
En la consola de Google Cloud, ve a la página Registros de auditoría:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es IAM y administrador.
Selecciona una organización, una carpeta o un proyecto existente de Google Cloud.
Habilita registros de auditoría
Para habilitar los registros de auditoría de acceso a los datos, haz lo siguiente:
En la tabla Configuración de registros de auditoría de acceso a los datos, selecciona uno o más. servicios de Google Cloud de la columna Servicio.
En la pestaña Tipos de registros, selecciona los tipos de registros de auditoría de acceso a los datos que deseas que quieres habilitar para los servicios seleccionados.
Haz clic en Guardar.
Cuando hayas habilitado correctamente los registros de auditoría, la tabla incluirá un Ícono de verificación check_circle.
En el siguiente ejemplo, se puede ver que, para el servicio de Aprobación de acceso, El tipo de registro de auditoría de lectura de datos está habilitado:
También puedes habilitar los registros de auditoría para todos los servicios de Google Cloud que producen registros de auditoría de acceso a los datos. En la tabla Configuración de registros de auditoría de acceso a los datos, seleccionar todos los servicios de Google Cloud.
Ten en cuenta que este método de configuración masiva se aplica solo a Google Cloud que están disponibles actualmente para tu recurso. Si un nuevo cliente se agrega el servicio de Google Cloud, este hereda configuración de auditoría predeterminada.
Inhabilita registros de auditoría de acceso a los datos
Para inhabilitar los registros de auditoría de acceso a los datos, haz lo siguiente:
En la tabla Configuración de registros de auditoría de acceso a los datos, selecciona uno o más. servicios de Google Cloud.
En la pestaña Tipos de registros en el panel de información, selecciona Acceso a datos. los tipos de registros de auditoría que quieres inhabilitar para los servicios seleccionados.
Haz clic en Guardar.
Cuando inhabilitaste correctamente los registros de auditoría de acceso a los datos, la tabla indica esto con un guion. Todos los registros de auditoría de acceso a los datos habilitados se indican con un Ícono de verificación check_circle.
Configurar exenciones
Puedes establecer exenciones para controlar qué principales generan datos Accede a registros de auditoría para servicios específicos. Cuando agregas una principal exenta, no se crean registros de auditoría para los tipos de registros seleccionados.
Para establecer exenciones, haz lo siguiente:
En la tabla Configuración de registros de auditoría de acceso a los datos, selecciona una servicio de Google Cloud desde la columna Servicio.
Selecciona la pestaña Principales exentas en el panel de información.
En Agregar principal exenta, ingresa la principal que deseas eximir. generar registros de auditoría de acceso a los datos para el servicio que seleccionaste.
Para agregar varias principales, puedes hacer lo siguiente: haz clic en el botón Agregar principal exenta tantas veces como sea necesario.
Para obtener una lista de principales válidas, incluidos usuarios y grupos, consulta la referencia de tipo
Binding
.En Tipos de registros inhabilitados, selecciona los tipos de registros de auditoría de acceso a los datos. que quieres inhabilitar.
Haz clic en Guardar.
Cuando hayas agregado correctamente principales exentas a un servicio, la página La tabla de configuración de los registros de auditoría de acceso lo indica con un número debajo del Principales exentas.
Para quitar una principal de tu lista de exenciones, haz lo siguiente:
En la tabla Configuración de registros de auditoría de acceso a los datos, selecciona una servicio de Google Cloud desde la columna Servicio.
Selecciona la pestaña Principales exentas en el panel de información.
Coloca el cursor sobre el nombre de una principal y, luego, selecciona el botón delete que aparece.
Después de que el nombre de la principal aparezca tachado, haz clic en Guardar.
Para editar la información de una principal exenta, haz lo siguiente:
En la tabla Configuración de registros de auditoría de acceso a los datos, selecciona una servicio de Google Cloud desde la columna Servicio.
Selecciona la pestaña Principales exentas en el panel de información.
Expandir expand_more el principal.
Selecciona o anula la selección de los tipos de registros de auditoría de acceso a los datos según corresponda para el principal.
Haz clic en Guardar.
Establece la configuración predeterminada
Puedes establecer una configuración para que todos Google Cloud servicios en tu proyecto, organización o carpeta de Google Cloud heredan. Establecer esta configuración predeterminada se aplica si se crea un nuevo esté disponible y las principales de tu organización comiencen a usarlo: el hereda la política de registro de auditoría que ya configuraste para otros a los servicios de Google Cloud, lo que garantiza que se capturen los registros de auditoría de acceso a los datos.
Para establecer o editar la configuración predeterminada, haz lo siguiente:
Haz clic en Establecer configuración predeterminada.
En la pestaña Tipos de registros en el panel de información, selecciona Acceso a datos. y tipos de registros de auditoría que quieres habilitar o inhabilitar.
Haz clic en Guardar.
Selecciona la pestaña Principales exentas en el panel de información.
En Agregar principal exenta, ingresa la principal que deseas eximir. generar registros de auditoría de acceso a los datos para el servicio que seleccionaste.
Para agregar varias principales, puedes hacer lo siguiente: haz clic en el botón Agregar principal exenta tantas veces como sea necesario.
Para obtener una lista de principales válidas, incluidos usuarios y grupos, consulta la referencia de tipo
Binding
.En Tipos de registros inhabilitados, selecciona los tipos de registros de auditoría de acceso a los datos. que quieres inhabilitar.
Haz clic en Guardar.
Configura registros de auditoría de acceso a los datos con la API
En esta sección, se explica cómo usar la API y gcloud CLI para configurar registros de auditoría de acceso a los datos de manera programática.
Muchas de estas tareas también se pueden realizar con la consola de Google Cloud. Para obtener instrucciones, consulta Configura registros de auditoría de acceso a los datos con la consola de Google Cloud en esta página.
Objetos de la política de IAM
Para configurar los registros de auditoría de acceso a los datos con la API, debes editar el
política de IAM asociada a tu proyecto, carpeta
u organización. La configuración del registro de auditoría se encuentra en la sección auditConfigs
de la política:
"auditConfigs": [
{
object(AuditConfig)
}
]
Para obtener más detalles, consulta el tipo de Política de IAM.
En las siguientes secciones se describe el objeto AuditConfig
con más detalle.
Para la API y los comandos de gcloud CLI utilizados para cambiar la configuración,
consulta getIamPolicy y setIamPolicy
AuditConfig
objetos
La configuración del registro de auditoría consta de una lista de objetos AuditConfig
. Cada objeto configura los registros de un servicio o establece una configuración más amplia para todos los servicios. Cada objeto se ve de la siguiente manera:
{
"service": SERVICE_NAME,
"auditLogConfigs": [
{
"logType": "ADMIN_READ"
"exemptedMembers": [ PRINCIPAL,]
},
{
"logType": "DATA_READ"
"exemptedMembers": [ PRINCIPAL,]
},
{
"logType": "DATA_WRITE"
"exemptedMembers": [ PRINCIPAL,]
},
]
},
SERVICE_NAME tiene un valor como "appengine.googleapis.com"
, o es el
valor especial, "allServices"
. Si una configuración no menciona un servicio en particular, entonces se usa la configuración más amplia para ese servicio. Si no hay ninguna configuración, los registros de auditoría de acceso a los datos no están habilitados para ese servicio.
Para obtener una lista de los nombres de los servicios, consulta Servicios de registro.
La sección auditLogConfigs
del objeto AuditConfig
es una lista de 0 a 3 objetos, cada uno de los cuales configura un tipo de información de registro de auditoría. Si omites uno de los tipos de la lista, ese tipo de información no estará habilitado para el servicio.
PRINCIPAL es un usuario para el que no se recopilan registros de auditoría de acceso a los datos. El
El tipo Binding
describe diferentes tipos de principales, lo que incluye
y grupos de usuarios y grupos, pero no todos se pueden usar para configurar
registros de auditoría de Cloud.
A continuación, se presenta un ejemplo de una configuración de auditoría en formatos JSON y YAML. El formato YAML es el predeterminado cuando se usa Google Cloud CLI.
JSON
"auditConfigs": [ { "auditLogConfigs": [ { "logType": "ADMIN_READ" }, { "logType": "DATA_WRITE" }, { "logType": "DATA_READ" } ], "service": "allServices" }, { "auditLogConfigs": [ { "exemptedMembers": [ "[email protected]" ], "logType": "ADMIN_READ" } ], "service": "cloudsql.googleapis.com" } ],
YAML
auditConfigs:
- auditLogConfigs:
- logType: ADMIN_READ
- logType: DATA_WRITE
- logType: DATA_READ
service: allServices
- auditLogConfigs:
- exemptedMembers:
- [email protected]
logType: ADMIN_READ
service: cloudsql.googleapis.com
Configuraciones comunes
A continuación, se muestran algunas opciones de configuración comunes de registros de auditoría para proyectos de Google Cloud.
Habilita todos los registros de auditoría de acceso a los datos
La siguiente sección de auditConfigs
habilita los registros de auditoría de acceso a los datos para todos
y principales:
JSON
"auditConfigs": [ { "service": "allServices", "auditLogConfigs": [ { "logType": "ADMIN_READ" }, { "logType": "DATA_READ" }, { "logType": "DATA_WRITE" }, ] }, ]
YAML
auditConfigs:
- auditLogConfigs:
- logType: ADMIN_READ
- logType: DATA_WRITE
- logType: DATA_READ
service: allServices
Habilita un tipo de información y servicio
La siguiente configuración habilita DATA_WRITE
registros de auditoría de acceso a los datos para
Cloud SQL ofrece lo siguiente:
JSON
"auditConfigs": [ { "service": "cloudsql.googleapis.com", "auditLogConfigs": [ { "logType": "DATA_WRITE" }, ] }, ]
YAML
auditConfigs:
- auditLogConfigs:
- logType: DATA_WRITE
service: cloudsql.googleapis.com
Inhabilita todos los registros de auditoría de acceso a los datos
Para inhabilitar todos los registros de auditoría de acceso a los datos (excepto BigQuery) en un
proyecto de Google Cloud, incluye una sección vacía de auditConfigs:
en tu nuevo proyecto
Política de IAM:
JSON
"auditConfigs": [],
YAML
auditConfigs:
Si quitas la sección auditConfigs
por completo de tu política nueva, setIamPolicy
no cambia la configuración existente de los registros de auditoría de acceso a los datos. Para obtener más información, consulta
La máscara de actualización setIamPolicy.
No se pueden inhabilitar los registros de auditoría de acceso a los datos de BigQuery.
getIamPolicy
y setIamPolicy
Usa los métodos getIamPolicy
y setIamPolicy
de la API de Cloud Resource Manager para leer
y escribir tu política de IAM. Puedes elegir entre diferentes opciones para los métodos específicos que usarás:
La API de Cloud Resource Manager tiene los siguientes métodos:
projects.getIamPolicy projects.setIamPolicy organizations.getIamPolicy organizations.setIamPolicy
Google Cloud CLI tiene lo siguiente Comandos de Resource Manager:
gcloud projects get-iam-policy gcloud projects set-iam-policy gcloud resource-manager folders get-iam-policy gcloud resource-manager folders set-iam-policy gcloud organizations get-iam-policy gcloud organizations set-iam-policy gcloud beta billing accounts get-iam-policy gcloud beta billing accounts set-iam-policy
Independientemente de tu elección, sigue estos tres pasos:
- Lee la política actual mediante uno de los métodos
getIamPolicy
. Guarda la política en un archivo temporal. - Edita la política en el archivo temporal.
Cambia (o agrega) solo la sección
auditConfigs
. - Escribe la política editada en el archivo temporal mediante uno de los métodos
setIamPolicy
.
setIamPolicy
falla si Resource Manager detecta que otra persona cambió la política después de que la leíste en el primer paso. Si esto sucede, repite los tres pasos.
Ejemplos
En los siguientes ejemplos se muestra cómo configurar los registros de auditoría de acceso a datos de tu proyecto con el comando gcloud
y la API de Cloud Resource Manager.
A fin de configurar los registros de auditoría de acceso a datos de la organización, reemplaza la versión de "proyectos" de los comandos y los métodos de la API con la versión de "organizaciones".
gcloud
Para configurar los registros de auditoría de acceso a datos con el comando gcloud projects
, haz lo siguiente:
Lee la política de IAM de tu proyecto y almacénala en un archivo.
gcloud projects get-iam-policy PROJECT_ID > /tmp/policy.yaml
La política que se muestra se detalla a continuación. Esta política aún no tiene una sección
auditConfigs
:bindings: - members: - user:colleague@example.com role: roles/editor - members: - user:myself@example.com role: roles/owner etag: BwVM-FDzeYM= version: 1
Edita la política en
/tmp/policy.yaml
. Para ello, agrega o cambia solo la configuración de los registros de auditoría de acceso a datos.A continuación, se muestra un ejemplo de tu política editada, que habilita los registros de auditoría de acceso de datos de escritura de datos de Cloud SQL. Se agregaron cuatro líneas al principio:
auditConfigs: - auditLogConfigs: - logType: DATA_WRITE service: cloudsql.googleapis.com bindings: - members: - user:colleague@example.com role: roles/editor - members: - user:myself@example.com role: roles/owner etag: BwVM-FDzeYM= version: 1
Escribe tu nueva política de IAM:
gcloud projects set-iam-policy PROJECT_ID /tmp/policy.yaml
Si el comando anterior informa un conflicto con otro cambio, repite estos pasos y comienza con el primero.
JSON
Para trabajar con tu política de IAM en formato JSON en lugar de YAML, reemplaza los siguientes comandos gcloud
en el ejemplo:
gcloud projects get-iam-policy PROJECT_ID --format=json >/tmp/policy.json
gcloud projects set-iam-policy PROJECT_ID /tmp/policy.json
API
Para configurar tus registros de auditoría de acceso de datos mediante la API de Cloud Resource Manager, sigue estos pasos:
Lee la política de IAM de tu proyecto en la que se especifican los siguientes parámetros del método de la API getIamPolicy:
- Recurso:
projects/PROJECT_ID
- Cuerpo de la solicitud: vacío
El método muestra el objeto de la política actual, que aparece a continuación. La política de este proyecto aún no tiene una sección
auditConfigs
:{ "version": 1, "etag": "BwXqwxkr40M=", "bindings": [ { "role": "roles/owner", "members": [ "user:[email protected]" ] } ] }
- Recurso:
Edita la política actual:
Cambia o agrega la sección
auditConfigs
.Si deseas inhabilitar tus registros de auditoría de acceso a los datos, incluye un valor vacío para la sección:
auditConfigs:[]
.Conserva el valor de
etag
.
También puedes quitar toda la demás información del objeto de política nuevo, siempre y cuando tengas la precaución de configurar
updateMask
en el paso siguiente. La política editada, que habilita los registros de auditoría de escritura de datos de Cloud SQL, se muestra a continuación:{ "policy": { "auditConfigs": [ { "auditLogConfigs": [ { "logType": "DATA_WRITE" } ], "service": "cloudsql.googleapis.com" } ], "etag": "BwXqwxkr40M=" }, "updateMask": "auditConfigs,etag" }
Escribe la nueva política mediante el método de la API setIamPolicy y especifica los siguientes parámetros:
- Recurso:
projects/PROJECT_ID
- Cuerpo de la solicitud: Incluye la política editada.
- Recurso:
La máscara de actualización setIamPolicy
En esta sección, se explica la importancia del parámetro updateMask
en el
setIamPolicy
y explica por qué debes tener cuidado con el
de gcloud CLI set-iam-policy
para que no provoques
y daños accidentales a tu organización o proyecto de Google Cloud.
El setIamPolicy API method
usa un parámetro updateMask
para controlar qué campos de la política se actualizan. Por ejemplo, si la máscara no contiene bindings
, no puedes cambiar esa sección de la política por error. Por otro lado, si la máscara contiene bindings
, esa sección siempre se actualiza. Si no incluyes un valor actualizado para bindings
, esa sección se quita por completo de la política.
El comando gcloud projects set-iam-policy
, que llama a setIamPolicy
, no te permite especificar el parámetro updateMask
. En su lugar, el comando calcula un valor para updateMask
de la siguiente manera:
- La
updateMask
siempre contiene los camposbindings
yetag
. - Si el objeto de política proporcionado en
set-iam-policy
contiene algún otro campo de nivel superior, comoauditConfigs
, esos campos se agregan aupdateMask
.
Como consecuencia de estas reglas, el comando set-iam-policy
tiene los siguientes comportamientos:
Si omites la sección
auditConfigs
en tu política nueva, el valor anterior de la secciónauditConfigs
(si existe) no se modifica porque esa sección no está en la máscara de actualización. Esto es inofensivo, pero puede ser confuso.Si omites
bindings
en tu nuevo objeto de política, la secciónbindings
se quitará de tu política, ya que esta sección aparece en la máscara de actualización. Esto es muy dañino y hace que todas las principales pierdan el acceso a tu proyecto de Google Cloud.Si omites
etag
en tu nuevo objeto de política, esto inhabilita la verificación de cambios simultáneos en tu política y podría dar como resultado cambios que reemplacen de manera accidental los cambios de otra persona.