Hay varios Google Cloud productos y servicios que puedes usar para ayudar a tu organización a desarrollar un enfoque de gestión de identidades y accesos para las aplicaciones y las cargas de trabajo que se ejecutan en Google Cloud. Este documento está dirigido a administradores de seguridad, responsables de operaciones y arquitectos empresariales que trabajan en equipos de clientes y que quieren obtener información sobre estas herramientas y controles, así como sobre cómo usarlos.
En este documento se presupone que tienes lo siguiente:
- Un Google Cloud proyecto.
- Una cuenta de usuario con acceso de administrador para gestionar grupos y usuarios de Cloud Identity. Necesitas este acceso para ejecutar los procedimientos de ejemplo de este documento.
Una cuenta de usuario sin acceso de administrador para gestionar grupos y usuarios de Cloud Identity. Necesitas esta cuenta para probar algunos de los controles que has definido en los procedimientos de ejemplo de este documento.
Si aún no tienes acceso a un proyecto de Google Cloud y acceso de administrador a Cloud Identity, consulta Crear un proyecto de Google Cloud y Configurar Cloud Identity.
Descubrir cuentas y permisos sin usar
Es una práctica recomendada eliminar las cuentas de usuario cuando ya no sean necesarias, ya que las cuentas de usuario y de servicio no utilizadas (huérfanas) pueden suponer un riesgo para la seguridad. Puedes usar Google Cloud Policy Intelligence de las siguientes formas para ayudar a tu empresa a comprender y reducir los riesgos:
- Ayudar a los administradores de tu empresa a descubrir cuentas y permisos que ya no se usan por motivos como que un empleado ha dejado la empresa o ha cambiado de rol.
- Ayuda a identificar las cuentas de servicio que se han abandonado después de completar las tareas.
Ver y aplicar recomendaciones de gestión de identidades y accesos
El recomendador de gestión de identidades y accesos (IAM) forma parte de la suite de herramientas y servicios de Policy Intelligence. Utiliza el aprendizaje automático para ofrecer recomendaciones de control de acceso inteligentes que te ayuden a identificar las cuentas que ya no necesitan acceder a los recursos de Google Cloud . Después, puede revisar las recomendaciones y decidir si las aplica. IAM Recommender también te ayuda a mantener el principio de privilegio mínimo en todos los miembros de tu organización. Además de proporcionar recomendaciones, el servicio Recommender usa el aprendizaje automático para ofrecer estadísticas detalladas. Las estadísticas son conclusiones que destacan patrones notables en el uso de recursos. Por ejemplo, puedes recoger información adicional sobre el uso de permisos en tu proyecto, identificar los permisos que no se están usando y que ya no son necesarios, y identificar cuentas de servicio sin usar.
Puedes ver y aplicar recomendaciones de gestión de identidades y accesos en la consola a escala de empresa. Google Cloud En el siguiente procedimiento de ejemplo, se usa BigQuery para revisar y ajustar los permisos de acceso de tu organización. Para configurar la integración de BigQuery, debe configurar una exportación de las recomendaciones de IAM Recommender a un conjunto de datos de BigQuery. Estos datos se pueden consultar y revisar mediante herramientas de visualización, como Looker Studio y Looker.
Implementación
En la Google Cloud consola, en la página del selector de proyectos, selecciona o crea un Google Cloud proyecto.
BigQuery se habilita automáticamente en los proyectos nuevos. Para activar BigQuery en un proyecto que ya tengas, habilita la API de BigQuery.
Configura BigQuery Data Transfer Service para extraer datos de la herramienta de recomendaciones de IAM. Para obtener más información, consulta el artículo sobre exportar recomendaciones a BigQuery.
Ve a la página de BigQuery.
Copia y pega la siguiente consulta en el campo Editor:
SELECT recommendation_details FROM PROJECT_ID.DATASET.TABLE_NAME WHERE recommender = "google.iam.policy.Recommender" AND recommender_subtype = "REMOVE_ROLE"
Haz los cambios siguientes:
PROJECT_ID
: el ID del proyecto Google Cloud que estás usando para ejecutar este ejemplo.DATASET
: el nombre del conjunto de datos que seleccionaste al configurar el trabajo de BigQuery Data Transfer Service.TABLE_NAME
: nombre de la tabla creada por el trabajo de BigQuery Data Transfer Service.
Ejecuta esta consulta para identificar el subtipo
recommender_subtype
de las recomendaciones de gestión de identidades y accesosREMOVE_ROLE
.Haz clic en Ejecutar. Utiliza el resultado de la consulta para identificar los roles que no se usan y ajustar los enlaces de roles de gestión de identidades y accesos.
Puedes guardar los resultados de las consultas en Hojas de cálculo. Para obtener más información, consulta Guardar resultados de consultas en Hojas de cálculo.
Permitir que los usuarios soliciten acceso a los recursos
Los administradores de empresas necesitan poder permitir que los usuarios soliciten acceso a los recursos. Normalmente, estas solicitudes se someten a un proceso de aprobación en el que un aprobador designado o un grupo de aprobadores deben aprobar la solicitud antes de que se conceda el acceso. Grupos de Google te permite aplicar una política de acceso a una colección de usuarios, lo que te permite seguir la práctica recomendada de gestión de políticas de dar acceso a los recursos en función de la pertenencia a grupos. De esta forma, las políticas se mantienen actualizadas a medida que se producen eventos de unión, movimiento y abandono debido a los cambios en la pertenencia a grupos.
Puedes conceder y cambiar los controles de acceso de todo un grupo con Grupos de Google en lugar de hacerlo uno a uno para cada usuario o cuenta de servicio. También puedes añadir miembros a un grupo de Google y quitarlos de él fácilmente en lugar de actualizar una política de gestión de identidades y accesos para añadir o quitar usuarios.
Configurar el acceso a recursos mediante Grupos de Google
Puedes crear y gestionar un grupo de Google con Cloud Identity. Cloud Identity es una solución de identidad como servicio (IDaaS) que gestiona usuarios y grupos. También puedes configurar Cloud Identity para federar identidades entre Google y otros proveedores de identidades, como Active Directory y Azure Active Directory. Grupos de Google también permite que un usuario solicite ser miembro de un grupo. Esta solicitud se envía a los administradores del grupo, que pueden aprobarla o rechazarla. Para obtener más información, consulta el artículo Crear un grupo y elegir su configuración.
Cuando creas y gestionas un grupo de Google para dar acceso a recursos, debes tener en cuenta las implicaciones de los ajustes que selecciones. Google CloudAunque te recomendamos que minimices el número de usuarios que pueden gestionar el grupo, te aconsejamos que configures más de un administrador para que siempre tengas acceso al grupo. También te recomendamos que restrinjas la pertenencia al grupo a los usuarios de tu organización.
Implementación
En este procedimiento de ejemplo, se crea un grupo de Google y se le da acceso de lector a un proyecto de Google Cloud ejemplo. Los miembros que añadas a este grupo (o a los que les des acceso si lo solicitan) podrán ver el proyecto de muestraGoogle Cloud .
Crear un grupo de Google de ejemplo
En los pasos siguientes se presupone que has configurado Cloud Identity. Para obtener más información, consulta Configurar Cloud Identity. Asegúrate de que tienes los permisos necesarios para gestionar grupos.
En la Google Cloud consola, ve a la página Grupos.
Haz clic en Crear.
Rellena los detalles del grupo.
Para añadir miembros al grupo, haz clic en Añadir miembro, introduce la dirección de correo del miembro y elige su rol de Grupos de Google.
Cuando hayas terminado, haz clic en Enviar para crear el grupo.
La configuración de los grupos solo se puede gestionar en Grupos de Google. Para configurar los ajustes del grupo, haz clic en Gestionar este grupo en Grupos de Google. Para seleccionar quién puede unirse al grupo, en el menú Quién puede unirse al grupo, selecciona Solo los usuarios de la organización.
Haz clic en Crear grupo.
Dar acceso al grupo a un Google Cloud proyecto
- En la Google Cloud consola, en la página del selector de proyectos, selecciona o crea un Google Cloud proyecto.
Abre Cloud Shell:
Ejecuta el siguiente comando para dar acceso de lector al proyecto al grupo:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=group:GROUP_EMAIL --role=roles/viewer
Haz los cambios siguientes:
GROUP_EMAIL
: la dirección de correo del grupo que has creadoPROJECT_ID
: el ID de tu Google Cloud proyecto
Probar el proceso de solicitud de acceso de los usuarios de tu organización
En el siguiente procedimiento, se utiliza una cuenta de usuario de prueba para mostrar los pasos que deben seguir los usuarios de tu organización para solicitar acceso a un grupo de Google.
- Inicia sesión en Grupos de Google como usuario sin permisos de administrador. El grupo que has creado en Crear un grupo de Google de ejemplo aparece en Todos los grupos. Si no aparece el grupo, usa la función de búsqueda para encontrarlo.
Para solicitar acceso al grupo, haz clic en Solicitar participar en el grupo.
Una vez que se haya concedido el acceso, la cuenta de usuario no administrador que hayas usado para hacer la solicitud debería poder ver el proyecto Google Cloud
PROJECT_ID
al que el grupo tiene acceso de lector.
Dar acceso limitado en el tiempo a los recursos de Google Cloud
Puede haber situaciones en las que los usuarios de tu empresa necesiten acceso temporal y a corto plazo a los recursos de Google Cloud . El acceso a corto plazo es útil cuando los desarrolladores necesitan acceso temporal a los recursos de Google Cloud para realizar determinadas tareas. El acceso a corto plazo también ofrece las siguientes ventajas:
- Reducir la sobrecarga administrativa.
- Asegurarse de que se sigue el principio de mínimos accesos y de que se concede el acceso a tiempo.
Poder conceder este tipo de acceso es útil para los administradores cuando los usuarios necesitan acceder a recursos en situaciones de emergencia que requieren una intervención rápida y directa. Sin embargo, puede ser difícil hacer un seguimiento manual de los permisos de acceso a corto plazo y asegurarse de que se retiren a tiempo. Las políticas de acceso condicional de gestión de identidades y accesos te permiten definir el acceso temporal (con fecha de vencimiento) a los recursos de Google Cloud mediante enlaces de roles condicionales, lo que ayuda a reducir esta carga de trabajo para los administradores.
Usar vinculaciones de roles condicionales y caducidad de la pertenencia a grupos
Puede añadir vinculaciones de roles condicionales a políticas de gestión de identidades y accesos nuevas o ya creadas para controlar aún más el acceso a los Google Cloud recursos. Estos son algunos ejemplos de situaciones en las que puedes usar las vinculaciones de roles condicionales para dar acceso temporal a un usuario o a un grupo:
- Acceso a un proyecto que caduca después de un tiempo determinado.
- Acceso a un proyecto que se repite cada mes o cada trimestre.
- Acceso a instancias de Compute Engine para administrar tareas, como detener instancias.
Cuando usas Grupos de Google para dar acceso a los recursos a los usuarios, puedes usar la función de vencimiento de la pertenencia a grupos para definir vencimientos de la pertenencia a grupos mediante la API Groups de Cloud Identity. Google Cloud Cuando haya transcurrido el tiempo que hayas especificado, los usuarios se retirarán del grupo automáticamente.
Implementación
Puedes usar una vinculación de rol condicional para dar a los desarrolladores acceso temporal para administrar una instancia de Compute Engine específica. En este ejemplo, el enlace de rol se ha configurado para que caduque el 31 de diciembre del 2021.
En Cloud Shell, define las siguientes variables:
export INSTANCE=create example-instance-1 export ZONE=us-west1-b export USER=USER_ID_TO_GIVE_TEMPORARY_ACCESS_TO
Sustituye
USER_ID_TO_GIVE_TEMPORARY_ACCESS_TO
por el nombre de usuario del usuario de tu organización al que quieras dar acceso temporal.Crea una instancia de Compute Engine de ejemplo:
gcloud compute instances create $INSTANCE \ --zone $ZONE \ --machine-type g1-small
En los siguientes pasos, darás acceso temporal a esta instancia a un usuario de tu organización.
Concede acceso temporal al usuario que has seleccionado:
gcloud compute instances add-iam-policy-binding $INSTANCE \ --zone=$ZONE \ --member="user:$USER" \ --role='roles/compute.instanceAdmin.v1' \ --condition='expression=request.time < timestamp("2022-01-01T00:00:00Z"),title=expires_end_of_2021,description=Expires at midnight on 2021-12-31'
Conserva la instancia de Compute Engine que crees. Usarás esta instancia más adelante en este documento, en la sección Gestionar el acceso privilegiado.
También puede eliminar la instancia de
example-instance-1
ejecutando el siguiente comando:gcloud compute instances delete $INSTANCE
Registrar eventos del ciclo de vida relacionados con la identidad
Si necesitas revisar eventos del ciclo de vida de gestión de identidades y accesos, como cambios en las políticas, creación de cuentas de servicio y asignaciones de cuentas de servicio, para realizar auditorías, Registros de auditoría de Cloud puede ayudarte. Los administradores pueden usar Cloud Audit Logs para consultar datos históricos con fines forenses y de análisis. Analizar los registros de auditoría puede ayudarte a comprender los patrones y las anomalías de acceso. El análisis de los registros de auditoría también puede ser importante en los siguientes casos:
- Analizar los permisos y el acceso a los recursos durante una brecha de seguridad de los datos.
- Analizar problemas de producción causados por un cambio en la política de IAM, sobre todo si quieres verificar qué usuario o qué proceso ha realizado el cambio.
Registros de auditoría de Cloud almacena información sobre las acciones que realizan los usuarios, dónde se produce la actividad y cuándo. Los registros de auditoría se clasifican de la siguiente manera:
- Registros de auditoría de la actividad del administrador
- Registros de auditoría de acceso a datos
- Registros de auditoría de eventos del sistema
- Registros de auditoría de denegación de acceso por infracción de las políticas
Te recomendamos que utilices los siguientes registros de auditoría para el registro administrativo relacionado con la identidad y el acceso:
- Registros de auditoría de la actividad administrativa
- Registros de auditoría de denegación de acceso por infracción de las políticas
Los registros de auditoría de actividad de administrador almacenan los cambios realizados en los Google Cloud recursos como proyectos, instancias de Compute Engine y cuentas de servicio. A continuación, se muestran ejemplos de eventos que almacenan los registros de auditoría de la actividad del administrador:
- La creación de una cuenta de servicio.
- Un cambio en una política de gestión de identidades y accesos.
- La descarga de una clave de cuenta de servicio.
Los registros de auditoría de acceso denegado por la política registran cuándo se deniega el acceso a un servicio a un usuario o a una cuenta de servicio debido a una infracción de la política de seguridad. Google Cloud
Configurar registros de auditoría de Cloud para eventos del ciclo de vida de la identidad
Puedes ver los registros de auditoría en la Google Cloud consola o consultar los registros mediante la API de Cloud Logging o la interfaz de línea de comandos.
Todos los registros de auditoría tienen un periodo de conservación. Si tu empresa necesita almacenar registros de auditoría durante más tiempo que el periodo de conservación predeterminado, debes exportarlos a BigQuery u otros destinos de receptor creando un receptor de registro. Al exportar registros a BigQuery, puede ver un subconjunto de columnas de datos y datos seleccionados (a lo largo del tiempo o de otras dimensiones) y hacer análisis agregados.
Implementación
En el siguiente ejemplo se muestra cómo consultar los registros de Google Cloud project para comprobar si se ha producido alguno de los siguientes eventos:
- Se han producido cambios en la política de gestión de identidades y accesos.
- Se han creado nuevas cuentas de servicio.
- Se han generado nuevas claves de cuenta de servicio.
Ver los cambios en las políticas de gestión de identidades y accesos
- En la Google Cloud consola, ve a la página Logging > Explorador de registros.
- En la página Explorador de registros, selecciona un Google Cloud proyecto.
Pega la siguiente consulta en el creador de consultas:
logName="projects/<PROJECT>/logs/cloudaudit.googleapis.com%2Factivity" AND (resource.type="project" OR resource.type="service_account") AND resource.labels.project_id="<PROJECT>" AND (protoPayload.methodName="SetIamPolicy" OR protoPayload.methodName="google.iam.admin.v1.CreateServiceAccount" OR protoPayload.methodName="google.iam.admin.v1.CreateServiceAccountKey")
Sustituye
PROJECT
por el ID de tu proyecto. Google CloudHaz clic en Realizar una consulta.
Ver los cambios en la pertenencia a grupos
Los cambios en la pertenencia a grupos de Google se registran en los registros de actividad. Para saber cómo acceder a estos registros, consulta Ver registros de cambios en la pertenencia a grupos.
Certificación de acceso
El Analizador de políticas puede ayudar a tu empresa a verificar que los usuarios tienen los derechos de acceso adecuados a los recursos de forma periódica o en un momento determinado. Google Cloud Esta verificación es importante por motivos de cumplimiento y auditoría. También es útil para que el personal de seguridad y los auditores revisen qué usuarios tienen acceso a qué recursos y con qué capacidad. Analizador de políticas te ayuda a identificar qué identidades o entidades principales (usuarios, cuentas de servicio, grupos y dominios) tienen acceso a qué recursos de la jerarquía de recursos de tu organización. Google Cloud También ayuda a identificar el tipo de acceso. Estas son algunas de las preguntas que puedes responder con el Analizador de políticas:
- Qué usuarios pueden acceder a una cuenta de servicio.
- Qué usuarios pueden leer datos en un conjunto de datos de BigQuery que contiene información personal identificable (IPI).
Policy Analyzer se puede usar con los siguientes métodos:
- Con la Google Cloud consola.
- Usar APIs.
- Exportar datos de políticas de IAM a BigQuery para realizar análisis asíncronos.
Usar Analizador de políticas para comprobar el acceso de los usuarios
Las siguientes consultas de ejemplo muestran el tipo de información valiosa que puede obtener sobre el acceso de los usuarios con Analizador de políticas:
- Qué roles o permisos tiene una entidad principal (usuario, cuenta de servicio, grupo y dominio). Por ejemplo, puedes comprobar a qué tiene acceso un antiguo empleado en tu proyecto de producción.
- A qué recursos tiene acceso un usuario. Por ejemplo, el acceso que tiene un antiguo empleado a los recursos de tu proyecto de producción.
- Qué entidades principales tienen un determinado nivel de acceso a un recurso. Por ejemplo, qué cubos puede eliminar un usuario específico en un proyecto.
Implementación
En el siguiente procedimiento de ejemplo, se usa el Analizador de políticas para verificar los permisos que tiene un usuario.
En Cloud Shell, habilita la API Cloud Asset en el proyecto:
Introduce el siguiente comando para saber a qué recursos puede acceder un usuario:
gcloud asset analyze-iam-policy --organization="YOUR_ORG_ID" \ --identity="user:USERNAME_TO_CERTIFY"
Haz las siguientes sustituciones:
YOUR_ORG_ID
: tu Google Cloud ID de organizaciónUSERNAME_TO_CERTIFY
: el nombre de usuario del usuario cuyos permisos de acceso quieras verificar. Google Cloud
Extrae los datos de la política de gestión de identidades y accesos a BigQuery. Para obtener más información, consulta Escribir análisis de políticas en BigQuery.
Gestionar el acceso privilegiado
Es posible que algunos usuarios de tu organización necesiten acceso privilegiado a determinados Google Cloud recursos para llevar a cabo tareas administrativas. Por ejemplo, estos usuarios pueden necesitar gestionar proyectos específicos, configurar la facturación y los presupuestos de los proyectos, o administrar instancias de Compute Engine. Google Cloud
En lugar de conceder a los usuarios acceso privilegiado a los recursos de forma permanente, puedes permitir que soliciten acceso privilegiado justo a tiempo. Usar la gestión de accesos privilegiados just-in-time puede ayudarte a hacer lo siguiente:
- Reduce el riesgo de que alguien modifique o elimine recursos por error. Por ejemplo, si los usuarios tienen acceso privilegiado solo cuando es necesario, se les impide ejecutar secuencias de comandos en otros momentos que afecten sin querer a recursos que no deberían poder cambiar.
- Crea un registro de auditoría que indique por qué se activaron los privilegios.
- Realizar auditorías y revisiones para analizar la actividad anterior.
También puedes conceder acceso privilegiado a una cuenta de servicio y permitir que los usuarios suplanten la identidad de la cuenta de servicio.
Conceder acceso con privilegios a los usuarios
En general, la gestión del acceso privilegiado de los usuarios de empresa enGoogle Cloud se puede resumir de la siguiente manera:
- Permitir que los usuarios de la empresa soliciten acceso privilegiado.
- Revisar los registros de auditoría de Cloud para analizar las solicitudes de acceso privilegiado y los patrones de acceso. Los administradores pueden revisar los patrones de acceso privilegiado y detectar anomalías mediante estos registros. Recomendamos que las empresas exporten estos registros para conservarlos el tiempo necesario y adecuado con fines de auditoría.
- Asegurarse de que el acceso con privilegios caduque automáticamente o se revise periódicamente.
Habilita la verificación en dos pasos (también llamada autenticación multifactor) para todos los usuarios que tengan acceso privilegiado a los recursos. También puedes crear controles de acceso pormenorizados y basados en atributos con Administrador de contextos de acceso, que aplica una capa de seguridad adicional cuando se usa el acceso con privilegios. Por ejemplo, puedes tener un nivel de acceso que especifique que los usuarios deben estar en la red corporativa cuando usen el acceso privilegiado a los recursos.
Implementación
En este procedimiento de ejemplo, tú (como administrador) creas un grupo de Google para conceder acceso privilegiado a las instancias de Compute Engine. Crea una cuenta de servicio en Google Cloud a la que se le da acceso para administrar instancias de Compute Engine. Asocia el grupo a la cuenta de servicio para que los miembros del grupo puedan suplantar la identidad de la cuenta de servicio durante el periodo en el que pertenezcan al grupo con privilegios.
Crear un grupo de Google para el acceso privilegiado
Como Google Cloud administrador, selecciona o crea un Google Cloud proyecto.
Habilita la facturación de tu proyecto. Habilitar facturación
Sigue los pasos que se indican en Permitir que los usuarios soliciten acceso a recursos para crear un grupo de Google.
Asigna al grupo el siguiente nombre:
elevated-compute-access
.
Crea una Google Cloud cuenta de servicio
En Cloud Shell, habilita la API de credenciales de cuenta de servicio de IAM en el proyecto que has creado en Crear un grupo de Google para el acceso privilegiado.
Define las siguientes variables:
export PROJECT_ID=$DEVSHELL_PROJECT_ID export PRIV_SERVICE_ACCOUNT_NAME=elevated-compute-access export DELEGATE_GROUP=GROUP_EMAIL_ADDRESS
Sustituye
GROUP_EMAIL_ADDRESS
por el nombre completo del grupo de Google que has creado.Crea la cuenta de servicio:
gcloud IAMservice-accounts create $PRIV_SERVICE_ACCOUNT_NAME \ --description="Elevated compute access" \ --display-name="Elevated compute access"
Asigna el rol de administrador de Compute a la cuenta de servicio:
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member="serviceAccount:$PRIV_SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/compute.admin"
Da al grupo de Google que has creado acceso de consumidor de uso de servicios a tu proyecto:
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member="group:$DELEGATE_GROUP" \ --role="roles/serviceusage.serviceUsageConsumer"
Este permiso permite que los miembros del grupo de Google actúen en nombre de la cuenta de servicio que has creado.
Concede al grupo de Google la capacidad de suplantar la identidad de la cuenta de servicio que has creado:
gcloud IAMservice-accounts add-iam-policy-binding $PRIV_SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com --member="group :$DELEGATE_GROUP" --role="roles/iam.serviceAccountTokenCreator"
Sáltate este paso si has creado y conservado una instancia de Compute Engine de ejemplo para el procedimiento de Conceder acceso limitado a recursos Google Cloud . Puedes usar la instancia de ejemplo para seguir los pasos de este ejemplo.
También puedes usar el siguiente comando para crear una instancia de Compute Engine de ejemplo:
gcloud compute instances create example-instance-1 \ --zone us-west1-b \ --machine-type g1-small
En este ejemplo, se usan las instancias para validar que los usuarios a los que se les ha concedido la pertenencia al grupo con privilegios pueden acceder a la instancia.
Habilitar registros de auditoría
Los administradores de tu empresa pueden habilitar los registros de auditoría de Cloud para asegurarse de que el acceso con privilegios se registre y esté disponible para su revisión y análisis. En el procedimiento de esta sección se explica cómo habilitar el registro de auditoría.
Obtén las políticas de gestión de identidades y accesos actuales del proyecto:
gcloud projects get-iam-policy $PROJECT_ID > /tmp/policy.yaml
Modifica el archivo de política para habilitar los registros de acceso a datos de la API Compute Engine:
cat <<EOF >> /tmp/policy.yaml auditConfigs: - auditLogConfigs: - logType: ADMIN_READ - logType: DATA_READ - logType: DATA_WRITE service: compute.googleapis.com EOF
Define la nueva política:
gcloud projects set-iam-policy $PROJECT_ID /tmp/policy.yaml
Probar la suplantación con la cuenta de usuario sin permisos de administrador
Puedes usar la cuenta de usuario no administrativa para probar la configuración solicitando ser miembro del grupo y suplantando la cuenta de servicio una vez que se te haya concedido la membresía.
En el procedimiento de esta sección se explica cómo pueden solicitar los usuarios de empresa acceso privilegiado a los recursos de Google Cloud . En este procedimiento de ejemplo, los Google Cloud recursos son las instancias de Compute Engine de unGoogle Cloud proyecto. Para mostrar cómo pueden suplantar la identidad de una cuenta de servicio los usuarios de tu organización una vez que se les haya concedido la pertenencia al grupo, debes solicitar la pertenencia a los grupos de Google pertinentes.
- Inicia sesión en Grupos de Google con la cuenta de usuario que no tiene derechos de administrador y solicita ser miembro del grupo
elevated-compute-access
. Usa la misma cuenta para iniciar sesión en Google Cloud. Deberías tener acceso al grupo una vez que un administrador apruebe la solicitud. En este procedimiento de ejemplo, se da por hecho que tu solicitud de pertenencia a un grupo se ha aprobado.
En Cloud Shell, ejecuta el siguiente comando para definir el proyecto predeterminado:
gcloud config set project PROJECT_ID
Sustituye
PROJECT_ID
por el ID del proyecto que has creado anteriormente en la sección Crear un grupo de Google para el acceso privilegiado.Intenta enumerar las instancias de Compute Engine de este proyecto:
gcloud compute instances list
Aparece un mensaje de error que indica que tu Google Cloud usuario no tiene permiso para acceder a los recursos de Compute Engine.
Ejecuta el siguiente comando:
gcloud compute instances list --impersonate-service-account=elevated-compute-access@$PROJECT_ID.iam.gserviceaccount.com
Este comando muestra las instancias de Compute Engine del proyecto suplantando la cuenta de servicio a la que obtuviste acceso cuando se te concedió la pertenencia al grupo de Google
elevated-compute-access
.Verás la instancia de
example-instance-1
Compute Engine que has creado con tu cuenta de administrador.
Consultar registros de auditoría
Como Google Cloud administrador, puedes acceder a los registros de auditoría generados y revisarlos.
Inicia sesión en la Google Cloud consola con una cuenta de usuario que tenga privilegios de administrador para acceder a los registros de auditoría.
En Cloud Logging, introduce la siguiente consulta para revisar los registros de acceso a los datos:
logName="projects/<PROJECT_ID>/logs/cloudaudit.googleapis.com%2Fdata_access" AND protoPayload.authenticationInfo.principalEmail="elevated-compute-access@PROJECT_ID.iam.gserviceaccount.com"
Sustituye
PROJECT_ID
por el ID de tu proyecto y, a continuación, ejecuta la consulta.Esta consulta muestra qué usuario del grupo de Google ha suplantado la cuenta de servicio para acceder a la instancia de Compute Engine. También se muestran otros detalles relevantes, como cuándo se suplantó la cuenta de servicio y los detalles de los encabezados de solicitud.
Revisa la carga útil del registro de auditoría, en concreto el
protoPayload.authenticationInfo
objeto de la carga útil. El nombre de usuario del usuario que ha suplantado la cuenta de servicio se registra como el valor de la claveprincipalEmail
del objetofirstPartyPrincipal
.Como administrador, también puedes consultar los resultados de las amenazas de eventos en el panel de control de Security Command Center. Para obtener más información sobre Security Command Center, consulta el artículo Usar Event Threat Detection.
Siguientes pasos
- Consulta información sobre la confianza cero.
- Descubre cómo Policy Intelligence ofrece un control de acceso inteligente para tus Google Cloud recursos.
- Consulta cómo solucionar problemas de políticas y de acceso en Google Cloud.
- Consulta las prácticas recomendadas para crear y gestionar Google Cloud cuentas de servicio.
- Para ver más arquitecturas de referencia, diagramas y prácticas recomendadas, consulta el centro de arquitectura de Cloud.