Solo política del depósito

En esta página, se analiza la función Solo política del depósito, que te permite controlar de manera uniforme el acceso a tus recursos de Cloud Storage. Cuando se habilita en un depósito, solo los permisos de nivel de depósito de Cloud Identity and Access Management (Cloud IAM) otorgan acceso a ese depósito y a los objetos que contiene; las Listas de control de acceso (LCA) están inhabilitadas y el acceso otorgado por las LCA se revoca. Para obtener una guía y poder usar esta función, consulta cómo usar Solo política del depósito.

Descripción general

Cloud Storage ofrece dos sistemas para otorgarles permiso a los usuarios a fin de acceder a tus depósitos y objetos: Cloud Identity and Access Management (Cloud IAM) y las Listas de control de acceso (LCA). Estos sistemas actúan en paralelo: para que un usuario acceda a un recurso de Cloud Storage, solo uno de los sistemas debe otorgarle permiso. Cloud IAM se usa mediante de Google Cloud Platform (GCP) y te permite otorgar permisos específicos en los niveles de depósito y proyecto. Solamente Cloud Storage usa las LCA que tienen menos opciones de permiso, pero te permiten otorgar permisos por objeto.

Para admitir un sistema de permisos uniforme, Cloud Storage tiene la función Solo política del depósito. El uso de esta función inhabilita las LCA para todos los recursos de Cloud Storage: el acceso a los recursos de Cloud Storage se otorga exclusivamente mediante Cloud IAM.

¿Debes usar la función Solo política del depósito?

Usa la función Solo política del depósito si se cumplen las siguientes condiciones:

  • Deseas controlar el acceso a los recursos de Cloud Storage mediante un sistema único de permisos.

  • Deseas tener una experiencia de control de acceso coherente en todos tus recursos de GCP.

  • Tienes muchos objetos en tu depósito y no deseas administrar el acceso a cada uno de ellos de manera individual.

  • Deseas utilizar las funciones de seguridad de GCP, como los registros de auditoría de Cloud y el uso compartido restringido al dominio, que solo realizan un seguimiento del acceso otorgado mediante las políticas de Cloud IAM, no de las LCA.

  • No deseas que quien sube un objeto siempre tenga el control total del objeto.

No uses la función Solo política del depósito si se cumplen las siguientes condiciones:

  • Deseas otorgar acceso a objetos específicos en un depósito mediante LCA heredadas.

  • Deseas que quien sube un objeto tenga control total sobre ese objeto, pero menos acceso a otros objetos en tu depósito.

Restricciones

La siguiente restricción se aplica cuando se utiliza la función Solo política del depósito:

  • Determinados servicios de GCP que se exportan a Cloud Storage no se pueden exportar a depósitos que tengan la función Solo política del depósito habilitada. Entre estos servicios, se incluyen los siguientes:

    Stackdriver, registros de auditoría de Cloud y Cloud Datastore.

  • No puedes usar la API de XML para verificar el estado, habilitar o inhabilitar la función Solo política del depósito.

  • No puedes usar la API de XML a fin de ver o configurar permisos para depósitos con la función Solo política del depósito habilitada.

  • El valor de Cache-Control está configurado en private de forma predeterminada para los objetos de acceso público en los depósitos habilitados en la función Solo política del depósito, a menos que establezcas el valor explícitamente en public.

Cómo es el comportamiento cuando está habilitada

Puedes habilitar la función Solo política del depósito cuando crees un depósito nuevo o cuando habilites explícitamente la función Solo política del depósito en un depósito existente.

Una vez habilitada, cesa la siguiente funcionalidad de LCA:

  • Las solicitudes para establecer, leer o modificar las LCA de depósitos y objetos fallan con errores 400 Bad Request.

  • Las solicitudes a la API de JSON realizadas con los métodos BucketAccessControls, DefaultObjectAccessControls y ObjectAccessControls fallan con errores 400 Bad Request.

  • Las solicitudes a la API de JSON para una proyección completa de metadatos de objetos o depósitos incluyen una lista de LCA vacía como parte de la respuesta.

  • Los comandos gsutil cp -p, mv -p, y rsync -p fallan (cuando el depósito de Solo política del depósito es la fuente y cuando es el destino).

  • La propiedad individual del objeto ya no existe; el acceso que se otorga desde dicha propiedad se revoca, y las solicitudes de metadatos de depósitos y objetos ya no contienen un campo owner.

Además, si habilitas la función Solo política del depósito como parte de la creación de un depósito nuevo, el depósito recibe automáticamente funciones adicionales de Cloud IAM. Con este comportamiento, se mantienen los permisos que los objetos heredaron de las LCA de objetos predeterminadas del depósito. Si habilitas la función Solo política del depósito en un depósito existente, debes aplicar dichas funciones de forma manual; es posible que desees aplicar un conjunto diferente de funciones si cambiaste las LCA de objetos predeterminadas del depósito.

Cómo es el comportamiento cuando se revierte

Para admitir la capacidad de inhabilitar la función Solo política del depósito y volver a usar LCA, Cloud Storage guarda las LCA existentes durante 90 días. Si inhabilitas la función Solo política del depósito durante este tiempo, sucede lo siguiente:

  • Los objetos recuperan sus LCA guardadas.

  • Cualquier objeto que se agregue al depósito después de habilitar la función Solo política del depósito obtendrá LCA de acuerdo con las LCA de objetos predeterminadas que utiliza el depósito.

Consideraciones para migrar un depósito existente

Cuando habilitas la función Solo política del depósito en un depósito existente, debes asegurarte de que los usuarios y servicios que anteriormente dependían de las LCA para acceder tengan sus permisos migrados a Cloud IAM. En esta sección, se describen algunos pasos que debes seguir para migrar un depósito a Solo política del depósito. Ten en cuenta que como las LCA y Cloud IAM están sincronizados para los permiso de depósitos, tus consideraciones se enfocan específicamente en el acceso a objetos dentro de tu depósito y no en el acceso al depósito.

Considera si un permiso de IAM de nivel de depósito sobreexpone los datos

Antes de asignar equivalentes de Cloud IAM a tus LCA, ten en cuenta los siguientes factores:

  • Un permiso de Cloud IAM aplicado en el nivel de depósito se aplica a todos los objetos en el depósito, mientras que las LCA de objetos pueden variar de un objeto a otro.

Si hay acceso que deseas aplicar a algunos objetos, pero no a otros, debes agrupar los objetos en depósitos separados. Cada agrupación debe contener aquellos objetos que tienen los mismos permisos.

Comprueba el uso de LCA de objetos

Cuando migras a Solo política del depósito, debes comprobar si se accede a los objetos del depósito mediante las LCA que se les aplicaron. Para comprobar esto, Stackdriver tiene una métrica que hace un seguimiento del uso de LCA. Si esta métrica indica que los usuarios o servicios confían en las LCA para acceder a tus objetos, debes asignar equivalentes de Cloud IAM al depósito antes de habilitar la función Solo política del depósito. Para obtener una guía y poder comprobar el uso de LCA en Stackdriver, consulta cómo comprobar el uso de LCA.

Usa esta métrica para determinar si habilitar la función Solo política del depósito interrumpiría su flujo de trabajo:

Métrica Descripción
storage.googleapis.com/authz/acl_operations_count El número de operaciones de LCA que se inhabilitarán una vez que se habilite la función Solo política del depósito, desglosado por tipo de operación de LCA y depósito.

Una operación importante de LCA para examinar es OBJECT_ACCESS_REQUIRED_OBJECT_ACL:

  • Si este número es cero, no se requirieron LCA de nivel de objeto para acceder a los objetos en las últimas 6 semanas. Las políticas de Cloud IAM cubren los permisos necesarios a nivel de depósito o de proyecto.

  • Si este número es mayor que cero, hubo solicitudes de acceso a objetos en las últimas 6 semanas que requirieron permisos de LCA de objetos. Debes asignar políticas de Cloud IAM equivalentes antes de habilitar la función Solo política del depósito

Para obtener más información sobre las métricas de Stackdriver, consulta Métricas, series temporales y recursos.

Comprueba la LCA de objetos predeterminada del depósito

Todos los depósitos tienen una LCA de objetos predeterminada asociada a ellos. Los objetos nuevos agregados a un depósito tienen esta LCA de objetos predeterminada aplicada a ellos, a menos que se suministre explícitamente una LCA en el momento en que el objeto se agrega al depósito.

Antes de habilitar la función Solo política del depósito, comprueba la LCA de objetos predeterminada que tiene tu depósito. Considera si deseas otorgar los permisos asociados con la LCA de objetos predeterminada después de habilitar la función Solo política del depósito. De ser así, asigna equivalentes de Cloud IAM al depósito.

Asigna equivalentes de Cloud IAM para LCA de objetos

Las LCA de objetos pueden otorgar el acceso que Cloud IAM actualmente no otorga. Para garantizar que los usuarios existentes no pierdan el acceso a los objetos cuando habilites la función Solo política del depósito, usa la siguiente tabla y asigna a los usuarios afectados las funciones adecuadas de Cloud IAM.

Permiso para LCA de objetos Función equivalente de Cloud IAM
READER roles/storage.legacyObjectReader
OWNER roles/storage.legacyObjectOwner

Qué sigue

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Si necesitas ayuda, visita nuestra página de asistencia.