Uso compartido y colaboración

En este documento, se presentan situaciones comunes de uso compartido de datos y colaboración. Incluye cómo configurar tu proyecto y las políticas de administración de identidades y accesos (IAM) del depósito y la Lista de control de acceso (LCA) de tu objeto para implementar las situaciones.

Almacenamiento y mantenimiento de datos privados

En esta situación, una analista de mercado de una empresa quiere usar Cloud Storage para realizar una copia de seguridad de las predicciones de ingresos y los datos de proyección de ventas confidenciales. Solo la analista de marketing debe poder acceder a los datos. El departamento de TI de la empresa supervisa y administra la cuenta de Cloud Storage de la empresa. Sus responsabilidades administrativas principales incluyen crear y compartir depósitos a fin de que varios departamentos de la empresa tengan acceso a Cloud Storage.

A fin de cumplir con las necesidades de confidencialidad y privacidad de la analista de mercado, los permisos del depósito y del objeto deben permitir al personal de TI mantener el depósito en el que se almacenan las hojas de cálculo. Sin embargo, también deben garantizar que estos no puedan ver o descargar los datos almacenados en el depósito. Para esto, crea un depósito llamado finance-marketing y otorgas las funciones siguientes de los recursos enumerados a los miembros específicos:

Función Recurso Miembro Descripción
roles/storage.legacyBucketOwner El depósito finance-marketing Personal de TI Otorgar la función roles/storage.legacyBucketOwner del depósito al personal de TI les permite realizar tareas de administración del depósito comunes, como borrar objetos y cambiar la política de IAM del depósito. También les permite hacer una lista de los contenidos del depósito finance-marketing, pero no pueden verlo o descargarlo.
roles/storage.objectCreator El depósito finance-marketing Analista de mercado Otorgar la función roles/storage.objectCreator para el depósito a la analista de mercado le permite subir objetos al depósito. Cuando lo hace, se vuelve propietaria del objeto cargado y puede verlo, actualizarlo y borrarlo.

Con estas funciones, nadie puede ver o descargar los objetos que la analista de mercado agrega al depósito, a excepción de ella. Sin embargo, ella puede otorgar acceso a otros usuarios si cambia la LCA del objeto. El personal de TI aún puede realizar una lista de los contenidos del depósito finance-marketing y pueden borrar y reemplazar los archivos almacenados en el depósito de ser necesario.

Implementa esta situación

Tus acciones

A fin de implementar la situación, deberías realizar las acciones siguientes:

  1. Crea un depósito llamado finance-marketing. Para obtener instrucciones paso a paso, consulta Crea un depósito.

  2. Otorga a cada miembro del personal de TI la función roles/storage.legacyBucketOwner para el depósito. A fin de obtener instrucciones paso a paso, consulta Agrega un miembro a una política de nivel de depósito.

Acciones del personal de TI

A fin de implementar la situación, el personal de TI debería realizar las acciones siguientes:

  1. Otorgar roles/storage.objectCreator a la analista de mercado para el depósito. A fin de obtener instrucciones paso a paso, consulta Agrega un miembro a una política de nivel de depósito.

Buzón del proveedor

En esta situación, una empresa constructora trabaja con varias firmas de diseño arquitectónico a fin de entregar planos de construcción para varios proyectos. La empresa constructora quiere configurar un buzón para las firmas proveedoras a fin de que puedan subir los planos arquitectónicos en varios eventos importantes del proyecto. En el buzón, se debe garantizar la privacidad de los clientes de la empresa constructora, lo que significa que no se puede permitir que los proveedores vean los trabajos de otros. A fin de lograr esto, debes crear un depósito diferente para cada firma de arquitectura y otorgar las funciones siguientes de los recursos enumerados a los miembros específicos:

Función Recurso Miembro Descripción
roles/owner Proyecto general Administradora de la empresa constructora Otorgar a la administradora de la empresa constructora la función roles/owner a nivel de proyecto le permite crear depósitos para cada proveedor.
roles/storage.objectViewer Proyecto general Administradora de la empresa constructora roles/storage.objectViewer permite a la administradora de la empresa constructora descargar los objetos que suben los proveedores.
roles/storage.legacyBucketOwner Cada depósito del proveedor Administradora de la empresa constructora La función roles/storage.legacyBucketOwner permite a la administradora de la empresa constructora crear una lista de los contenidos de cada depósito y borrar los objetos cuando finaliza cada evento importante del proyecto.
roles/storage.objectAdmin Cada depósito del proveedor El proveedor asociado con el depósito Otorgar roles/storage.objectAdmin a cada proveedor para sus depósitos les da control completo sobre los objetos en su depósito, incluida la habilidad de subir y enumerar objetos en el depósito y controlar quién puede acceder a cada uno. No les permite cambiar o ver los metadatos, como las funciones en el depósito, ni enumerar o ver otros depósitos en el proyecto, lo que mantiene la privacidad entre los proveedores.

Implementa esta situación

Tus acciones

A fin de implementar la situación, deberías realizar las acciones siguientes:

  1. Otorgar a la administradora de la empresa constructora las funciones roles/owner y roles/storage.objectViewer para el proyecto. A fin de obtener instrucciones paso a paso, consulta Agrega un miembro a una política a nivel de proyecto.

Acciones de la administradora de la empresa constructora

A fin de implementar la situación, la administradora de la empresa constructora debería realizar las acciones siguientes:

  1. Crear un depósito diferente para cada proveedor. Para obtener instrucciones paso a paso, consulta Crea un depósito.

    Debido a que la administradora de la constructora cuenta con la función roles/owner, obtiene la función roles/storage.legacyBucketOwner de forma automática para cada depósito que crea.

  2. Otorgar roles/storage.objectAdmin a cada proveedor en su respectivo depósito. A fin de obtener instrucciones paso a paso, consulta Agrega un miembro a una política de nivel de depósito.

  3. Si algún proveedor desea usar Google Cloud Platform Console, proporciónales un vínculo a su depósito con el formato siguiente:

    console.cloud.google.com/storage/browser/[BUCKET_NAME]

    donde [BUCKET_NAME] es el nombre del depósito del proveedor.

Acciones del proveedor

A fin de implementar la situación, cada proveedor debería realizar las acciones siguientes:

  1. Subir objetos al depósito asignado. La forma más fácil de lograrlo es con Google Cloud Platform Console. Otros métodos, como la herramienta de línea de comandos de gsutil, requieren una configuración adicional previa. Para obtener instrucciones paso a paso, consulta Sube un objeto.

Descargas autenticadas del navegador

En esta situación, un cliente quiere que ciertos archivos estén disponibles para ciertas personas a través de descargas del navegador. Puedes hacerlo con la autenticación basada en cookies de Cloud Storage. A fin de usar esta característica, debes otorgar permiso a un usuario para acceder a un objeto y, luego, dar una URL especial al objeto. Cuando el usuario hace clic en la URL, Cloud Storage les solicita que accedan a su Cuenta de Google (si aún no lo hicieron) y el objeto se descarga a su computadora. Estos usuarios podrán descargar el objeto:

Los demás usuarios verán un error 403 Forbidden (access denied).

Implementa esta situación

Puedes implementar la autenticación basada en cookies con los cuatro pasos generales siguientes:

  1. Crea un depósito. Para obtener instrucciones paso a paso, consulta Crea un depósito.

    Si creas un depósito en un proyecto del que eres propietario, obtienes permisos de forma automática que te permiten subir objetos al depósito y cambiar quién puede acceder a este.

  2. Sube el objeto que deseas compartir. Para obtener instrucciones paso a paso, consulta Sube un objeto.

    Cuando subes un objeto, te conviertes en su propietario. Esto significa que puedes modificar todas sus LCA.

  3. Permite que los usuarios accedan al objeto. Para esto, puedes usar uno de estos métodos:

    1. Modificar la política de IAM del depósito para otorgar a cada usuario deseado la función roles/storage.objectViewer, que se aplica a todos los objetos del depósito. A fin de obtener instrucciones paso a paso, consulta Agrega un miembro a una política de nivel de depósito.

    2. Modifica las LCA del objeto para otorgar a cada usuario deseado el permiso READ en cada objeto individual. Para obtener instrucciones paso a paso, consulta Establece las LCA.

  4. Proporciona a los usuarios una URL especial al objeto.

    Las descargas autenticadas del navegador acceden a Cloud Storage a través de un extremo URL específico. Usa la URL siguiente y reemplaza [VALUES_IN_BRACKETS] con los valores apropiados:

    https://storage.cloud.google.com/[BUCKET_NAME]/[OBJECT_NAME]

    Ya que solo los usuarios con permisos LCA o IAM apropiados pueden verla, no importa cómo establezcas la disponibilidad de esta URL. Puedes enviársela de forma directa o publicarla en una página web.

Usa un grupo para controlar el acceso

En esta situación, deseas que los objetos estén disponibles para usuarios específicos, como los usuarios invitados a probar un software nuevo. Además, deseas invitar muchos usuarios, pero no quieres configurar los permisos para cada uno de forma individual. Al mismo tiempo, no quieres que los objetos sean legibles de forma pública y enviar vínculos a los clientes invitados para acceder a los objetos, ya que existe el riesgo de que los vínculos se envíen a usuarios no invitados.

Una forma de resolver esta situación es con el uso de los Grupos de Google. Puedes crear un grupo y agregar solo usuarios invitados. Luego, al grupo puedes otorgarle acceso a los objetos.

Función Recurso Miembro Descripción
roles/storage.objectViewer Tu depósito incluido en la lista blanca Grupo de Google Si le otorgas la función roles/storage.objectViewer del depósito al Grupo de Google, permites que cualquier cliente que es parte del Grupo de Google vea los objetos del depósito. Nadie por fuera del grupo tiene acceso a los objetos.

Implementa esta situación

  1. Crea un Grupo de Google y agrega clientes. Para obtener instrucciones paso a paso, consulta Crea un grupo.

  2. Crea un depósito. Para obtener instrucciones paso a paso, consulta Crea un depósito.

  3. Sube objetos a tu depósito. Para obtener instrucciones paso a paso, consulta Sube un objeto.

  4. Al Grupo de Google, otorga acceso a los objetos.

    • Puedes usar la función de IAM storage.objectViewer para dar acceso de visualización a todos los objetos en tu depósito. A fin de obtener instrucciones paso a paso, consulta Agrega un miembro a una política de nivel de depósito.

    • Si solo quieres otorgar acceso a algunos de los objetos en el depósito, establece la LCA de Lector en esos objetos individuales. Para obtener instrucciones paso a paso, consulta Establece las LCA.

¿Te sirvió esta página? Envíanos tu opinión:

Enviar comentarios sobre…

¿Necesitas ayuda? Visita nuestra página de asistencia.