Funciones predefinidas
En la siguiente tabla, se describen las funciones de administración de identidades y accesos (IAM) asociadas con Cloud Storage y se enumeran los permisos que contiene cada función. A menos que se indique lo contrario, estas funciones se pueden aplicar a proyectos enteros o depósitos específicos.
Función | Descripción | Permisos |
---|---|---|
Creador de objetos de almacenamiento (roles/storage.objectCreator ) |
Permite a los usuarios crear objetos. No otorga permisos para ver, borrar ni reemplazar objetos. | resourcemanager.projects.get resourcemanager.projects.list storage.objects.create |
Visualizador de objetos de almacenamiento (roles/storage.objectViewer ) |
Otorga acceso para ver los objetos y sus metadatos, sin incluir las LCA. También se pueden enumerar los objetos de un bucket. |
resourcemanager.projects.get resourcemanager.projects.list storage.objects.get storage.objects.list |
Administrador de objetos de almacenamiento (roles/storage.objectAdmin ) |
Otorga control total sobre los objetos, lo que incluye permisos para enumerarlos, crearlos, verlos y borrarlos. | resourcemanager.projects.get resourcemanager.projects.list storage.objects.* |
Administrador de claves HMAC de almacenamiento (roles/storage.hmacKeyAdmin ) |
Otorga control total de las claves HMAC en un proyecto. Esta función solo se puede aplicar a un proyecto. | storage.hmacKeys.* |
Administrador de almacenamiento (roles/storage.admin ) |
Otorga control total sobre los depósitos y objetos. Cuando se aplica en un depósito individual, el control solo se aplica al depósito especificado y a los objetos que contiene. |
firebase.projects.get resourcemanager.projects.get resourcemanager.projects.list storage.buckets.* storage.objects.* |
Funciones básicas
Las funciones básicas son funciones que existían antes de IAM. Estas funciones tienen características únicas:
Las funciones básicas solo se pueden otorgar a un proyecto completo, no a depósitos individuales dentro del proyecto. Al igual que las otras funciones que se otorgan a un proyecto, las funciones básicas se aplican a todos los depósitos y objetos del proyecto.
Las funciones básicas contienen permisos adicionales para otros servicios de Google Cloud que no se tratan en esta sección. Consulta las funciones básicas para ver un análisis general de los permisos que otorgan estas funciones.
Cada función básica tiene un valor de conveniencia que te permite usar la función básica como si fuera un grupo. Cuando se usa de esta manera, cualquier miembro que tenga la función básica se considerará parte del grupo. Todos los integrantes del grupo obtienen acceso adicional para los recursos según el acceso que tiene el valor de conveniencia.
Los valores de conveniencia se pueden usar cuando se otorgan funciones para buckets.
Los valores de conveniencia se pueden usar cuando se configuran las LCA en objetos.
Las funciones básicas no proporcionan de forma intrínseca acceso completo a los recursos de Cloud Storage que implican sus nombres. En cambio, proporcionan una parte del acceso esperado de forma intrínseca y el resto del acceso esperado mediante el uso de valores de conveniencia. Debido a que los valores de conveniencia se pueden agregar o quitar de forma manual como cualquier otro miembro de IAM, es posible revocar el acceso que los miembros podrían esperar.
Para ver un análisis del acceso adicional que los miembros de las funciones básicas suelen obtener debido a los valores de conveniencia, consulta comportamiento modificable.
Permisos intrínsecos
En la siguiente tabla, se describen los permisos de Cloud Storage que siempre están asociados con cada función básica.
Función | Descripción | Permisos de Cloud Storage |
---|---|---|
Visualizador (roles/viewer ) |
Otorga permiso para enumerar los bucket s del proyecto, ver los metadatos del bucket durante la enumeración (sin incluir las LCA), y enumerar y obtener las claves HMAC del proyecto. | storage.buckets.list storage.hmacKeys.get storage.hmacKeys.list |
Editor (roles/editor ) |
Otorga el permiso para crear, enumerar y borrar los bucket s en el proyecto, ver los metadatos del bucket durante la enumeración (sin incluir las LCA), y controlar las claves HMAC del proyecto. | storage.buckets.create storage.buckets.delete storage.buckets.list storage.hmacKeys.* |
Propietario (roles/owner ) |
Otorga el permiso para crear, enumerar y borrar los bucket s en el proyecto, ver los metadatos del bucket durante la enumeración (sin incluir las LCA), y controlar las claves HMAC del proyecto. En general, en Google Cloud, los miembros con esta función pueden realizar tareas administrativas, como cambiar las funciones de los miembros del proyecto o cambiar la facturación. |
storage.buckets.create storage.buckets.delete storage.buckets.list storage.hmacKeys.* |
Comportamiento modificable
En la siguiente tabla, se describe el acceso adicional a Cloud Storage que suele asociarse con cada función básica debido a valores de conveniencia. Este acceso adicional se otorga en el momento de la creación del bucket, pero luego puedes editar tus políticas de IAM del bucket y las LCA de tu objeto para quitarlas o modificarlas.
Función | Acceso adicional obtenido debido a los valores de conveniencia |
---|---|
Visualizador (roles/viewer ) |
|
Editor (roles/editor ) |
|
Propietario (roles/owner ) |
|
Funciones heredadas predefinidas
En la siguiente tabla, se enumeran las funciones de IAM que son equivalentes a los permisos de Lista de control de acceso (LCA). Puedes otorgar funciones heredadas solo para depósitos individuales, no para proyectos.
Función | Descripción | Permisos |
---|---|---|
Lector de objetos heredados de almacenamiento (roles/storage.legacyObjectReader ) |
Otorga permiso para ver los objetos y sus metadatos, sin incluir las LCA. | storage.objects.get |
Propietario de objetos heredados de almacenamiento (roles/storage.legacyObjectOwner ) |
Otorga permiso para ver y editar objetos y sus metadatos, incluidas las LCA. | storage.objects.get storage.objects.update storage.objects.setIamPolicy storage.objects.getIamPolicy |
Lector de depósitos heredados de almacenamiento (roles/storage.legacyBucketReader ) |
Otorga permiso para enumerar el contenido y leer los metadatos de un bucket, sin incluir las políticas de IAM. También otorga permiso para leer metadatos de objeto cuando se enumeran objetos (sin incluir las políticas de IAM).
El uso de esta función también se refleja en las LCA del depósito. Consulta la relación de la IAM con las LCA para obtener más información. |
storage.buckets.get storage.objects.list |
Escritor de depósitos heredados de almacenamiento (roles/storage.legacyBucketWriter ) |
Otorga permiso para crear, reemplazar y borrar objetos; enumerar objetos en un bucket ; leer los metadatos de objetos cuando se los enumera (excepto las políticas de IAM); y leer los metadatos del bucket, excepto las políticas de IAM. El uso de esta función también se refleja en las LCA del depósito. Consulta la relación de la IAM con las LCA para obtener más información. |
storage.buckets.get storage.objects.list storage.objects.create storage.objects.delete |
Propietario de depósitos heredados de almacenamiento (roles/storage.legacyBucketOwner ) |
Otorga permiso para crear, reemplazar y borrar objetos; enumerar objetos en un bucket ; leer los metadatos de objetos cuando se los enumera (excepto las políticas de IAM); y leer y editar los metadatos del bucket, incluidas las políticas de IAM. El uso de esta función también se refleja en las LCA del depósito. Consulta la relación de la IAM con las LCA para obtener más información. |
storage.buckets.get storage.buckets.update storage.buckets.setIamPolicy storage.buckets.getIamPolicy storage.objects.list storage.objects.create storage.objects.delete |
Funciones personalizadas
Es posible que desees definir tus propias funciones que contengan paquetes de permisos específicos. Para ello, IAM ofrece funciones personalizadas.
¿Qué sigue?
Usa los permisos de IAM para controlar el acceso a los depósitos y objetos.
Obtén información sobre cada permiso de IAM para Cloud Storage.
Obtén información sobre qué permisos de IAM permiten a los usuarios realizar acciones con Cloud Console, con gsutil, con la API de JSON y con la API de XML.
Para obtener una referencia de otras funciones de Google Cloud, consulta la página Comprende las funciones.