En este documento, se describe la configuración de los permisos de Google Cloud y Cloud Storage paso a paso, lo que incluye lo siguiente:
- Prepara tu bucket de Cloud Storage.
- Prepara una clave de Cloud Key Management Service para proteger tus datos.
- Proporcionar al equipo de Transfer Appliance los datos de configuración del bucket de Cloud Storage
Antes de comenzar
Asegúrate de tener un correo electrónico del equipo de Transfer Appliance titulado Permisos de Google Transfer Appliance. Este correo electrónico contiene lo siguiente:
Los nombres de las cuentas de servicio necesarias para la transferencia
Un ID de sesión que necesitarás para configurar el dispositivo.
Un formulario que completarás una vez que hayas configurado tu cuenta.
Prepara los permisos del bucket de Cloud Storage
Usamos dos cuentas de servicio para transferir tus datos. Las cuentas de servicio son cuentas especiales que usa una aplicación, no una persona, para realizar tareas. En este caso, las cuentas de servicio permiten que Transfer Appliance use los recursos de Cloud Storage en tu nombre para transferir datos entre Cloud Storage y el dispositivo. Otorga a estas cuentas los roles necesarios para transferir datos.
Para preparar el bucket de Cloud Storage, sigue estos pasos:
En un correo electrónico titulado Google Transfer Appliance Permissions, el equipo de Transfer Appliance te proporcionará las siguientes cuentas de servicio:
Una cuenta de servicio de sesión vinculada a esta transferencia en particular. Se ve como el siguiente ejemplo:
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
En este ejemplo,
SESSION_ID
es el ID de sesión para esta transferencia en particular.Un agente de servicio vinculado al Servicio de transferencia de datos locales, que usamos para transferir datos entre Cloud Storage y el dispositivo. Se ve parecido al siguiente ejemplo:
project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com
En este ejemplo,
TENANT_IDENTIFIER
es un número generado específico para este proyecto en particular.
Toma nota de las cuentas de servicio para los próximos pasos.
Las cuentas de servicio permiten que Transfer Appliance manipule recursos de Google Cloud en tu nombre, es decir, que transfiera datos entre Cloud Storage y el dispositivo. Otorga a estas cuentas los roles necesarios para transferir datos entre Cloud Storage y el dispositivo.
Los buckets de Cloud Storage están vinculados a los proyectos de Google Cloud. El bucket que selecciones debe estar en el mismo proyecto que se usó para pedir el dispositivo.
Para otorgar permiso a las cuentas de servicio de Transfer Appliance para usar tu bucket de Cloud Storage, haz lo siguiente:
Consola de Google Cloud
- En la consola de Google Cloud, ve a la página Buckets de Cloud Storage.
Haz clic en el menú Ampliado del bucket () asociado al bucket en el que le asignarás un rol al principal.
Elige Editar permisos de depósito.
Haz clic en el botón Agregar principales.
En el campo Principales nuevas, ingresa las siguientes identidades:
La cuenta de servicio de la sesión. Se ve como el siguiente ejemplo:
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
En este ejemplo,
SESSION_ID
es el ID de sesión de esta transferencia en particular.El agente del servicio de transferencia de datos locales Se verá parecido al siguiente ejemplo:
project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com
En este ejemplo,
TENANT_IDENTIFIER
es un número generado específico de este proyecto en particular.
En el menú desplegable Selecciona un rol, selecciona el rol Administrador de almacenamiento.
Las funciones que seleccionas aparecen en el panel con una descripción breve del permiso que otorgan.
Haga clic en Save.
Línea de comandos
Usa el comando
gcloud storage buckets add-iam-policy-binding
:gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \ --member=serviceAccount:ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com \ --role=roles/storage.admin
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \ --member=serviceAccount:project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com \ --role=roles/storage.admin
En este ejemplo:
BUCKET_NAME
: Es el nombre del bucket que crearás.SESSION_ID
: Es el ID de la sesión para esta transferencia en particular.TENANT_IDENTIFIER
: Es un número generado específico para este proyecto en particular.
- En la consola de Google Cloud, ve a la página Buckets de Cloud Storage.
Prepara la clave de Cloud KMS
Transfer Appliance protege tus datos en el dispositivo mediante la encriptación. Se usa una clave pública de Cloud Key Management Service (Cloud KMS) para encriptar tus datos en Transfer Appliance, y una clave privada para desencriptarlos.
Usamos la cuenta de servicio de sesión de Prepara los permisos en el bucket de Cloud Storage para subir los datos del bucket de Cloud Storage al dispositivo.
Tienes la siguiente opción para administrar las claves de encriptación:
- Crea y administra las claves de encriptación por tu cuenta. Para crear y administrar las claves de encriptación que se usan en la transferencia, sigue las instrucciones que se indican a continuación. Preparas una clave de desencriptación asimétrica de Cloud KMS y agregas la cuenta de servicio de la sesión a la clave.
Para preparar las claves de Cloud KMS, haz lo siguiente:
Si no tienes un llavero de Cloud Key Management Service, haz lo siguiente para crear uno:
Consola de Google Cloud
Ve a la página Claves criptográficas en la consola de Google Cloud.
Haz clic en Crear llavero de claves.
En el campo Nombre del llavero de claves, ingresa el nombre de tu llavero de claves.
En el menú desplegable Ubicación del llavero de claves, selecciona una ubicación, como
"us-east1"
.Haga clic en Crear.
Línea de comandos
gcloud kms keyrings create KEY_RING --location=LOCATION --project=PROJECT_ID
En este ejemplo:
LOCATION
: Es la ubicación de Cloud Key Management Service para el llavero. Por ejemplo,global
KEY_RING
: Es el nombre del llavero de claves.PROJECT_ID
: El ID del proyecto de Google Cloud en el que se encuentra tu bucket de almacenamiento.
Sigue estos pasos para crear una clave de desencriptación asimétrica:
Consola de Google Cloud
Ve a la página Claves criptográficas en la consola de Google Cloud.
Haz clic en el nombre del llavero de claves para el que deseas crear una clave.
Haz clic en Crear clave.
En la sección ¿Qué tipo de clave quieres crear?, elige Clave generada.
Ingresa el nombre en el campo Nombre de la clave.
Haz clic en el menú desplegable Nivel de protección y selecciona Software.
Haz clic en el menú desplegable Propósito y selecciona Desencriptación asimétrica.
Haz clic en el menú desplegable Algoritmo y selecciona RSA de 4,096 bits - Relleno OAEP - Resumen SHA256
Haz clic en Crear.
Línea de comandos
Ejecuta el siguiente comando para crear una clave de desencriptación asimétrica:
gcloud kms keys create KEY --keyring=KEY_RING \ --location=LOCATION --purpose=asymmetric-encryption \ --default-algorithm=rsa-decrypt-oaep-4096-sha256 \ --project=PROJECT_ID
En este ejemplo:
KEY
: Es el nombre de la clave de Cloud Key Management Service. Por ejemplo,ta-key
KEY_RING
: Es el nombre del llavero de claves.LOCATION
: Es la ubicación de Cloud Key Management Service para el llavero. Por ejemplo,global
PROJECT_ID
: El ID del proyecto de Google Cloud en el que se encuentra tu bucket de almacenamiento.
Para agregar la cuenta de servicio de la sesión como principal a la clave asimétrica, haz lo siguiente:
Consola de Google Cloud
Ve a la página Claves criptográficas en la consola de Google Cloud.
Haz clic en el llavero de claves que contiene tu clave asimétrica.
Selecciona la casilla de verificación de la clave que deseas.
En el panel de información, haz clic en Agregar principal.
Aparecerá Agregar principales.
En el campo Principales nuevas, ingresa la cuenta de servicio de sesión que proporcionó el equipo de Transfer Appliance. Se ve como el siguiente ejemplo:
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
En este ejemplo,
SESSION_ID
es el ID de sesión de esta transferencia en particular.En el campo Selecciona un rol, agrega el rol de Visualizador de claves públicas de CryptoKey de Cloud KMS.
Haz clic en Guardar.
Línea de comandos
Ejecuta el siguiente comando para otorgar a la cuenta de servicio de la sesión el rol
roles/cloudkms.publicKeyViewer
:gcloud kms keys add-iam-policy-binding KEY \ --keyring=KEY_RING --location=LOCATION \ --member=serviceAccount:ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com \ --role=roles/cloudkms.publicKeyViewer
En este ejemplo:
KEY
: Es el nombre de la clave de Cloud Key Management Service. Por ejemplo,ta-key
KEY_RING
: Es el nombre del llavero de claves.LOCATION
: Es la ubicación de Cloud Key Management Service para el llavero de claves. Por ejemplo,global
SESSION_ID
: El ID de la sesión para esta transferencia en particular.
Para obtener la ruta de acceso de tu clave asimétrica, haz lo siguiente:
Consola de Google Cloud
Ve a la página Claves criptográficas en la consola de Google Cloud.
Haz clic en el llavero de claves que contiene tu clave de desencriptación asimétrica.
Haz clic en el nombre de la clave de desencriptación asimétrica.
Selecciona la versión de clave que quieras y haz clic en Más more_vert.
Haz clic en Copiar nombre del recurso.
Un ejemplo del formato de clave es el siguiente:
projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER
En este ejemplo:
PROJECT_ID
: El ID del proyecto de Google Cloud en el que se encuentra tu bucket de almacenamiento.LOCATION
: Es la ubicación de Cloud Key Management Service para el llavero de claves.KEY_RING
: Es el nombre del llavero de claves.KEY
: Es el nombre de la clave de Cloud Key Management Service.VERSION_NUMBER
: Es el número de versión de la clave.
El equipo de Transfer Appliance requiere toda la ruta de acceso a la clave, incluido el número de versión, para poder aplicar la clave correcta a tus datos.
Línea de comandos
Ejecuta el siguiente comando para mostrar la ruta de acceso completa de tu clave asimétrica, incluido el número de versión:
gcloud kms keys versions list --keyring=KEY_RING \ --key=KEY --location=LOCATION \ --project=PROJECT_ID
En este ejemplo:
KEY_RING
: Es el nombre del llavero de claves.KEY
: Es el nombre de tu clave asimétrica.LOCATION
: Es la ubicación de Google Cloud del anillo de claves.PROJECT_ID
: El ID del proyecto de Google Cloud en el que se encuentra tu bucket de almacenamiento.
El resultado muestra una respuesta similar al siguiente ejemplo:
NAME STATE projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER ENABLED
En este ejemplo:
PROJECT_ID
: El ID del proyecto de Google Cloud en el que se encuentra tu bucket de almacenamiento.LOCATION
: Es la ubicación de Cloud Key Management Service para el llavero de claves.KEY_RING
: Es el nombre del llavero de claves.KEY
: Es el nombre de la clave de Cloud Key Management Service.VERSION_NUMBER
: Es el número de versión de la clave.
El equipo de Transfer Appliance requiere la cadena de
NAME
que finaliza en/cryptoKeyVersions/VERSION_NUMBER
, en la queVERSION_NUMBER
es el número de versión de tu clave.
Proporciona al equipo de Transfer Appliance datos sobre la configuración del bucket
Te enviamos un correo electrónico titulado Permisos de Google Transfer Appliance para recopilar información sobre tu bucket de Cloud Storage. Usamos la información que proporcionas para configurar los datos de transferencia entre Cloud Storage y Transfer Appliance.
En el formulario vinculado desde ese correo electrónico, ingresa la siguiente información:
- El ID del proyecto de Google Cloud
- Selecciona tu opción de encriptación:
- Clave de encriptación administrada por el cliente, selecciona la clave de encriptación en el menú desplegable Selecciona una clave de encriptación administrada por el cliente.
- El nombre del bucket de Google Cloud Storage que se usa para esta transferencia.
Próximos pasos
Configura los puertos de red IP para que Transfer Appliance funcione en tu red.