Ce document décrit la configuration détaillée des autorisations Google Cloud et de Cloud Storage, y compris :
- Préparer le bucket Cloud Storage de destination
- Préparer une clé Cloud Key Management Service pour sécuriser vos données.
- Fournir à l'équipe Transfer Appliance les données de configuration du bucket Cloud Storage
Avant de commencer
Assurez-vous de recevoir un e-mail de l'équipe Transfer Appliance intitulé Google Transfer Appliance Préparation des autorisations et stockage. Cette adresse e-mail contient:
Noms des comptes de service requis pour le transfert.
ID de session dont vous avez besoin pour configurer votre appareil.
Formulaire que vous devrez remplir une fois votre compte configuré.
Préparer le bucket Cloud Storage de destination
Pour stocker vos données dans Cloud Storage, vous devez préparer un bucket. Les buckets sont les conteneurs de base dans lesquels sont stockées vos données dans Cloud Storage.
Nous utilisons deux comptes de service pour déplacer vos données depuis un serveur Transfer Appliance vers le bucket Cloud Storage de destination que vous préparez. Les comptes de service sont des comptes particuliers qui sont utilisés par une application, et non par une personne, pour effectuer des tâches. Dans le cas présent, les comptes de service autorisent Transfer Appliance à utiliser des ressources Cloud Storage en votre nom pour copier des données depuis le serveur vers votre bucket Cloud Storage. Ensuite, vous accordez à ces comptes les rôles nécessaires pour copier les données depuis le serveur vers votre bucket Cloud Storage.
Pour préparer le bucket Cloud Storage de destination, procédez comme suit :
Dans un e-mail intitulé Préparation du bucket de destination Google Transfer Appliance, l'équipe Transfer Appliance vous fournit les comptes de service suivants :
Un compte de service de session lié à ce transfert. En voici un exemple :
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
Dans cet exemple,
SESSION_ID
correspond à l'ID de session de ce transfert particulier.Un agent de service lié au service de transfert des données sur site, que nous utilisons pour transférer des données du serveur vers votre bucket Cloud Storage : Voici un exemple :
project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com
Dans cet exemple,
TENANT_IDENTIFIER
est un numéro généré spécifique à ce projet.
Notez les comptes de service pour les étapes suivantes.
Les comptes de service permettent à Transfer Appliance de manipuler les ressources Google Cloud en votre nom, à savoir copier des données du serveur vers Cloud Storage. Vous accordez à ces comptes les rôles nécessaires pour copier les données depuis le serveur vers votre bucket Cloud Storage.
Les buckets Cloud Storage sont associés à des projets Google Cloud. Le bucket que vous sélectionnez doit se trouver dans le même projet que celui utilisé pour commander l'appareil.
Si vous n'avez pas de bucket Cloud Storage, créez-en un :
Console Google Cloud
Ouvrez la page "Buckets Cloud Storage" dans la console Google Cloud.
Cliquez sur Créer un bucket pour ouvrir le formulaire de création de bucket.
Saisissez les informations de votre bucket et cliquez sur Continuer à chaque étape :
Remplissez le champ Name (Nom) conformément aux exigences concernant les noms de buckets.
Sélectionnez la Default storage class (classe de stockage par défaut) du bucket. La classe de stockage par défaut est attribuée par défaut à tous les objets importés dans le bucket. Sélectionnez ensuite une zone pour les données du bucket.
Sélectionnez un modèle de contrôle des accès pour déterminer comment contrôler l'accès aux objets du bucket.
Vous pouvez éventuellement ajouter étiquettes de buckets et choisissez une méthode de chiffrement.
Ne définissez pas de règle de conservation sur le bucket.
Cliquez sur OK.
Ligne de commande
Exécutez la commande
gcloud storage buckets create
:gcloud storage buckets create gs://BUCKET_NAME --uniform-bucket-level-access --location=LOCATION --project=PROJECT_ID
Dans cet exemple :
BUCKET_NAME
: nom du bucket que vous créez, selon les exigences de dénomination des bucketsLOCATION
: zone du bucket Cloud Storage souhaitée.PROJECT_ID
: ID du projet dans lequel créer votre bucket.
Ne définissez pas de règle de conservation sur le bucket.
Pour autoriser les comptes de service Transfer Appliance à utiliser votre bucket Cloud Storage, procédez comme suit :
Console Google Cloud
- Dans la console Google Cloud, accédez à la page Buckets Cloud Storage.
Cliquez sur le menu à développer du bucket () associé au bucket pour lequel vous attribuez un rôle au compte principal.
Choisissez Modifier les autorisations relatives au bucket.
Cliquez sur le bouton + Ajouter des comptes principaux.
Dans le champ Nouveaux comptes principaux, saisissez les identités suivantes :
Le compte de service de session. En voici un exemple :
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
Dans cet exemple,
SESSION_ID
correspond à l'ID de session de ce transfert particulier.L'agent de service du service de transfert des données sur site. Voici un exemple :
project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com
Dans cet exemple,
TENANT_IDENTIFIER
est un numéro généré spécifique à ce projet particulier.
Dans le menu déroulant Sélectionner un rôle, sélectionnez le rôle Administrateur de l'espace de stockage.
Les rôles sélectionnés apparaissent dans le volet et sont accompagnés d'une brève description des autorisations auxquelles ils correspondent.
Cliquez sur Enregistrer.
Ligne de commande
Exécutez la commande
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
Dans cet exemple :
BUCKET_NAME
: nom du bucket que vous créez.SESSION_ID
: ID de session pour ce transfert particulier.TENANT_IDENTIFIER
: nombre généré spécifique à ce projet.
- Dans la console Google Cloud, accédez à la page Buckets Cloud Storage.
Préparer la clé Cloud KMS
Transfer Appliance sécurise vos données sur le serveur en les chiffrant avant que vous nous renvoyiez le serveur. Une clé publique Cloud KMS (Key Management Service) permet de chiffrer les données sur Transfer Appliance, tandis qu'une clé privée est utilisée pour les déchiffrer.
Nous utilisons le compte de service de session évoqué dans la section Préparer le bucket Cloud Storage de destination pour importer les données du serveur dans votre bucket Cloud Storage.
Vous disposez des options suivantes pour gérer les clés de chiffrement :
Clés de chiffrement gérées par Google Vous pouvez nous demander de créer et gérer les clés Cloud KMS pour vous. Si vous souhaitez utiliser cette méthode, vous avez terminé de configurer votre projet Google Cloud et vous pouvez suivre les étapes décrites dans la section Recevoir votre appareil.
Créer et gérer vous-même les clés de chiffrement Vous pouvez créer et gérer les clés de chiffrement utilisées pour votre transfert en suivant les instructions ci-dessous. Vous préparez une clé de déchiffrement asymétrique Cloud KMS et ajoutez-y le compte de service de session. Le compte de service de session utilise la clé de déchiffrement asymétrique pour déchiffrer et copier vos données dans Cloud Storage.
Pour préparer des clés Cloud KMS, procédez comme suit :
Si vous n'avez pas de trousseau de clés Cloud Key Management Service, procédez comme suit pour en créer un :
Console Google Cloud
Accédez à la page Clés cryptographiques console Google Cloud.
Cliquez sur Créer un trousseau.
Dans le champ Key ring name (Nom du trousseau), saisissez le nom du trousseau de clés.
Dans la liste déroulante Key ring location (Emplacement du trousseau), sélectionnez un emplacement tel que
"us-east1"
.Cliquez sur Create (Créer).
Ligne de commande
gcloud kms keyrings create KEY_RING --location=LOCATION --project=PROJECT_ID
Dans cet exemple :
LOCATION
: emplacement Cloud Key Management Service du trousseau de clés Exemple :global
KEY_RING
: nom du trousseau de clésPROJECT_ID
: ID du projet Google Cloud dans lequel se trouve votre bucket de stockage
Créez une clé de déchiffrement asymétrique en procédant comme suit :
Console Google Cloud
Accédez à la page Clés de chiffrement dans la console Google Cloud.
Cliquez sur le nom du trousseau de clés pour lequel vous souhaitez créer une clé.
Cliquez sur Créer une clé.
Dans la section Quel type de clé souhaitez-vous créer ?, sélectionnez Clé générée.
Dans le champ Key name (Nom de la clé), saisissez le nom de votre clé.
Cliquez sur le menu déroulant Niveau de protection, puis sélectionnez Logiciel.
Cliquez sur le menu déroulant Objectif et sélectionnez Déchiffrement asymétrique.
Cliquez sur le menu déroulant Algorithme et sélectionnez RSA 4 096 bits - Remplissage OAEP - Condensé SHA256.
Cliquez sur Create (Créer).
Ligne de commande
Exécutez la commande suivante pour créer une clé de déchiffrement asymétrique :
gcloud kms keys create KEY --keyring=KEY_RING \ --location=LOCATION --purpose=asymmetric-encryption \ --default-algorithm=rsa-decrypt-oaep-4096-sha256 \ --project=PROJECT_ID
Dans cet exemple :
KEY
: nom de la clé Cloud Key Management Service Exemple :ta-key
KEY_RING
: nom du trousseau de clésLOCATION
: emplacement Cloud Key Management Service du trousseau de clés Exemple :global
PROJECT_ID
: ID du projet Google Cloud dans lequel se trouve votre bucket de stockage
Pour ajouter le compte de service de session en tant que compte principal à la clé asymétrique, procédez comme suit :
Console Google Cloud
Accédez à la page Clés de chiffrement dans la console Google Cloud.
Cliquez sur le trousseau contenant votre clé asymétrique.
Cochez la case correspondant à la clé souhaitée.
Dans le panneau d'informations, cliquez sur Ajouter un compte principal.
Ajouter des comptes principaux s'affiche.
Dans le champ Nouveaux comptes principaux, saisissez le compte de service de session fourni par l'équipe Transfer Appliance. En voici un exemple :
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
Dans cet exemple,
SESSION_ID
correspond à l'ID de session de ce transfert particulier.Dans le champ Sélectionnez un rôle, ajoutez la clé publique CryptoKey Cloud KMS Lecteur de clé.
Cliquez sur Ajouter un autre rôle.
Dans le champ Sélectionner un rôle, ajoutez le rôle Déchiffreur de clé de chiffrement Cloud KMS.
Cliquez sur Enregistrer.
Ligne de commande
Exécutez la commande suivante pour attribuer le rôle
roles/cloudkms.cryptoKeyDecrypter
au compte de service de session :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.cryptoKeyDecrypter
Dans cet exemple :
KEY
: nom de la clé Cloud Key Management Service Exemple :ta-key
KEY_RING
: nom du trousseau de clésLOCATION
: emplacement Cloud Key Management Service du trousseau de clés Exemple :global
SESSION_ID
: ID de session pour ce transfert particulier.
Exécutez la commande suivante pour attribuer le rôle
roles/cloudkms.publicKeyViewer
au compte de service de session :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
Dans cet exemple :
KEY
: nom de la clé Cloud Key Management Service Exemple :ta-key
KEY_RING
: nom du trousseau de clésLOCATION
: emplacement Cloud Key Management Service du trousseau de clés Exemple :global
SESSION_ID
: ID de session pour ce transfert particulier.
Obtenez le chemin d'accès de votre clé asymétrique en procédant comme suit :
Google Cloud Console
Accédez à la page des clés de chiffrement dans la console Google Cloud.
Cliquez sur le trousseau contenant votre clé de déchiffrement asymétrique.
Cliquez sur le nom de la clé de déchiffrement asymétrique.
Sélectionnez la version de clé de votre choix, puis cliquez sur Plus more_vert.
Cliquez sur Copier le nom de la ressource.
Voici un exemple de format de clé :
projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER
Dans cet exemple :
PROJECT_ID
: ID du projet Google Cloud dans lequel se trouve votre bucket de stockageLOCATION
: emplacement Cloud Key Management Service du trousseau de clésKEY_RING
: nom du trousseau de clésKEY
: nom de la clé Cloud Key Management ServiceVERSION_NUMBER
: numéro de version de la clé
L'équipe Transfer Appliance a besoin du chemin d'accès complet de la clé, y compris du numéro de version, pour pouvoir appliquer la clé correcte à vos données.
Ligne de commande
Exécutez la commande suivante pour répertorier le chemin d'accès complet de votre clé asymétrique, y compris son numéro de version :
gcloud kms keys versions list --keyring=KEY_RING \ --key=KEY --location=LOCATION \ --project=PROJECT_ID
Dans cet exemple :
KEY_RING
: nom de votre trousseau de clés.KEY
: nom de votre clé asymétrique.LOCATION
: emplacement Google Cloud du trousseau.PROJECT_ID
: ID du projet Google Cloud dans lequel se trouve votre bucket de stockage.
L'exemple de réponse suivant ressemble au résultat renvoyé :
NAME STATE projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER ENABLED
Dans cet exemple :
PROJECT_ID
: ID du projet Google Cloud dans lequel se trouve votre bucket de stockageLOCATION
: emplacement Cloud Key Management Service du trousseau de clésKEY_RING
: nom du trousseau de clésKEY
: nom de la clé Cloud Key Management ServiceVERSION_NUMBER
: numéro de version de la clé
L'équipe Transfer Appliance a besoin de la chaîne sous
NAME
, qui se termine par/cryptoKeyVersions/VERSION_NUMBER
, oùVERSION_NUMBER
est le numéro de version de votre clé.
Fournir à l'équipe Transfer Appliance les données de configuration du bucket
Nous envoyons un e-mail intitulé Google Transfer Appliance Prepare Permissions and Storage pour collecter des informations sur votre bucket Cloud Storage. Nous utilisons les informations que vous fournissez pour configurer le transfert de Transfer Appliance vers Cloud Storage.
Dans le formulaire dont le lien figure dans l'e-mail, saisissez les informations suivantes:
- ID de projet Google Cloud.
- Sélectionnez une option de chiffrement :
- Clé de chiffrement gérée par Google, si vous avez choisi de laisser Google gérer votre clé de chiffrement.
- Clé de chiffrement gérée par le client, si vous avez choisi de gérer votre propre clé de chiffrement. Sélectionnez la clé de chiffrement souhaitée dans le menu déroulant Sélectionner une clé de chiffrement gérée par le client.
- Nom du bucket de destination Google Cloud Storage utilisé pour ce transfert.
- Facultatif : Un préfixe d'objet. Sans préfixe d'objet, les objets sont transférés vers Cloud Storage avec le chemin de la source, à l'exclusion du chemin racine, avant le nom du fichier sur le système de fichiers. Par exemple, si vous disposez des fichiers suivants :
/source_root_path/file1.txt
/source_root_path/dirA/file2.txt
/source_root_path/dirA/dirB/file3.txt
file1.txt
dirA/file2.txt
dirA/dirB/file3.txt
/
du nom du bucket de destination et avant tout nom de chemin d'accès à partir duquel l'objet a été transféré, à l'exclusion du chemin racine de la source. Cela peut vous aider à faire la distinction entre les objets transférés et d'autres tâches de transfert. Le tableau suivant présente plusieurs exemples de préfixes d'objet et de noms d'objet résultant dans Cloud Storage, si le chemin de l'objet source est/source_root_path/sub_folder_name/object_name
:Préfixe Nom de l'objet de destination Aucun /destination_bucket/sub_folder_name/object_name
prefix/
/destination_bucket/prefix/sub_folder_name/object_name
Étape suivante
Configurez les ports réseau IP pour que Transfer Appliance fonctionne sur votre réseau.