Otorga permisos restringidos para importación y exportación

En esta página, se documentan los permisos de IAM de privilegios mínimos que debes aplicar a una cuenta de usuario para que puedan importar o exportar copias de seguridad de RDB. Debes usar estos permisos de privilegios mínimos en situaciones en las que no quieras otorgar funciones amplias de IAM y sus permisos asociados a una cuenta de usuario.

Si quieres permisos simples que habiliten la importación y la exportación, aplica la función Administrador de Redis para Cloud Memorystore y la función Administrador de almacenamiento a la cuenta del usuario que necesita importar o exportar.

Permisos mínimos necesarios para importar y exportar

A continuación, se enumeran los permisos que debes agregar a una función personalizada que se otorga a una cuenta de usuario para importar y exportar con privilegios mínimos. Para aprender a crear una función personalizada, consulta Crea una función personalizada.

Además, debes crear una función personalizada adicional para la cuenta de servicio de tu instancia y aplicarla a los permisos a nivel de depósito de tu bucket de Cloud Storage.

Para encontrar la cuenta de servicio de tu instancia, ejecuta el siguiente comando y toma nota de la cuenta de servicio que aparece en persistenceIamIdentity:

gcloud redis instances describe [INSTANCE_ID] --region=[REGION]

La cuenta de servicio tendrá el formato “xxxxxxxxxxxx-compute@developer.gserviceaccount.com”.

Permisos para la cuenta de servicio

Ten en cuenta que solo debes otorgar permisos de almacenamiento a la cuenta de servicio a nivel de bucket, no a todo el proyecto. Para obtener instrucciones, consulta Agrega un miembro a una política a nivel de bucket.

Una vez que otorgas permisos a nivel de bucket de cuenta de servicio, puedes ignorar el mensaje que dice “Memorystore no puede verificar si la cuenta de servicio xxxxxxxxxxxx-compute@developer.gserviceaccount.com tiene los permisos necesarios para importar y exportar. Si necesitas ayuda para verificar o actualizar los permisos, comunícate con el administrador de tu proyecto. Para conocer los permisos necesarios, consulta la documentación de permisos de importación y exportación”. Si aplicas los permisos que se indican a continuación a las funciones personalizadas para la cuenta de usuario y la cuenta de servicio, la importación o exportación se realizará de forma correcta.

Permisos para una función personalizada de la cuenta de servicio Importar con gcloud Exportar con gcloud Importar con Cloud Console Exportar con Cloud Console
storage.buckets.get
storage.objects.get X X
storage.objects.create X X
storage.objects.delete X Opcional.
(Otorga permiso para reemplazar el archivo RDB existente).
X Opcional.
(Otorga permiso para reemplazar el archivo RDB existente).

Permisos para la cuenta de usuario

Permisos para funciones personalizadas de cuentas de usuario Importar con gcloud Exportar con gcloud Importar con Cloud Console Exportar con Cloud Console
resourcemanager.projects.get X X
redis.instances.get
redis.instances.list X X X X
redis.instances.import X X
redis.instances.export X X
redis.operations.get X X
redis.operations.list X X
redis.operations.cancel
storage.buckets.list X X
storage.buckets.get X X
storage.objects.list X X
storage.objects.get X X

Qué sigue