Configurazione dettagliata delle autorizzazioni di Google Cloud e Cloud Storage

Questo documento descrive la configurazione dettagliata delle autorizzazioni di Google Cloud e Cloud Storage, tra cui:

  • Preparazione del bucket Cloud Storage di destinazione.
  • Prepara una chiave Cloud Key Management Service per proteggere i tuoi dati.
  • Fornire al team di Transfer Appliance la configurazione del bucket Cloud Storage e i dati di Google Cloud.

Prima di iniziare

Assicurati di aver ricevuto un'email dal team di Transfer Appliance intitolata Autorizzazioni e spazio di archiviazione per la preparazione di Google Transfer Appliance. Questa email contiene:

  • I nomi degli account di servizio richiesti per il trasferimento.

  • Un ID sessione necessario per configurare l'appliance.

  • Un modulo da compilare dopo aver configurato l'account.

Prepara il bucket Cloud Storage di destinazione

Per archiviare i dati in Cloud Storage, devi preparare una bucket. I bucket sono i container di base che contengono i tuoi dati all'interno di Cloud Storage.

Utilizziamo due account di servizio per spostare i dati da Transfer Appliance al bucket Cloud Storage di destinazione che prepari. Gli account di servizio sono account speciali utilizzati da un'applicazione, non da una persona, per svolgere attività. In questo caso, gli account di servizio consenti a Transfer Appliance di utilizzare le risorse Cloud Storage per tuo conto per copiare i dati dall'appliance al tuo bucket Cloud Storage. Concedi a questi account i ruoli necessari per copiare i dati dall'appliance al tuo bucket Cloud Storage.

Per preparare il bucket Cloud Storage di destinazione, segui questi passaggi:

  1. In un'email intitolata Google Transfer Appliance Prepare Destination Bucket, il team di Transfer Appliance ti fornisce i seguenti account di servizio:

    • Un account di servizio di sessione collegato a questo trasferimento specifico. L'esempio riportato è il seguente:

      ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com

      In questo esempio, SESSION_ID è l'ID sessione per questo trasferimento specifico.

    • Un agente di servizio associato al servizio Transfer Service for On Premises Data, che utilizziamo per trasferire i dati dall'appliance al tuo bucket Cloud Storage. È simile al seguente esempio:

      project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com

      In questo esempio, TENANT_IDENTIFIER è un numero generato specifico per questo progetto specifico.

    Prendi nota degli account di servizio per i passaggi successivi.

    Gli account di servizio consentono a Transfer Appliance di manipolare le risorse Google Cloud per tuo conto, ovvero di copiare i dati dall'appliance a Cloud Storage. Concede a questi account le necessarie per copiare i dati dall'appliance al bucket Cloud Storage.

  2. I bucket Cloud Storage sono collegati ai progetti Google Cloud. Il bucket che select deve trovarsi nello stesso progetto utilizzato per ordinare l'appliance.

    Se non hai un bucket Cloud Storage, creane uno:

    Google Cloud Console

    1. Apri la pagina Bucket Cloud Storage nella console Google Cloud.

      Apri la pagina Bucket Cloud Storage

    2. Fai clic su Crea bucket per aprire il modulo di creazione del bucket.

    3. Inserisci le informazioni sul bucket e fai clic su Continua per completarle. passaggio:

    4. Fai clic su Fine.

    Riga di comando

    Utilizza il comando gcloud storage buckets create:

    gcloud storage buckets create gs://BUCKET_NAME --uniform-bucket-level-access --location=LOCATION --project=PROJECT_ID
    

    In questo esempio:

    Non impostare un criterio di conservazione sul bucket.

  3. Per concedere agli account di servizio Transfer Appliance l'autorizzazione per utilizzare il bucket Cloud Storage, procedi nel seguente modo:

    Google Cloud Console

    1. Nella console Google Cloud, vai alla pagina Bucket in Cloud Storage.

      Vai a Bucket

    2. Fai clic sul menu Extra del bucket () associato al bucket a cui stai concedendo un ruolo all'entità.

    3. Scegli Modifica autorizzazioni bucket.

    4. Fai clic sul pulsante + Aggiungi entità.

    5. Nel campo Nuove entità, inserisci le seguenti identità:

      • L'account di servizio per la sessione. L'esempio riportato è il seguente:

        ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com

        In questo esempio, SESSION_ID è il di sessione per questo particolare trasferimento.

      • L'agente di servizio Transfer Service for On Premises Data. È simile al seguente esempio:

        project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com

        In questo esempio, TENANT_IDENTIFIER è un numero generato specifico per questo progetto specifico.

    6. Dal menu a discesa Seleziona un ruolo, seleziona il ruolo Amministratore Storage.

      I ruoli selezionati vengono visualizzati nel riquadro con una breve descrizione delle autorizzazioni concesse.

    7. Fai clic su Salva.

    Riga di comando

    Utilizza il 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
    

    In questo esempio:

    • BUCKET_NAME: il nome del bucket che stai è in fase di creazione.
    • SESSION_ID: l'ID sessione per questo particolar trasferimento.
    • TENANT_IDENTIFIER: un numero generato specifico per questo progetto.

Prepara la chiave Cloud KMS

Transfer Appliance protegge i dati sull'appliance criptandoli prima che tu ce la rispedisca. Un Cloud Key Management Service Viene utilizzata una chiave pubblica (Cloud KMS) per criptare i tuoi dati su Transfer Appliance e una chiave privata utilizzati per decriptare i dati.

Utilizziamo l'account del servizio di sessione di Prepara il bucket Cloud Storage di destinazione per caricare i dati dall'appliance nel tuo bucket Cloud Storage.

Per gestire le chiavi di crittografia hai a disposizione le seguenti opzioni:

  • Chiavi di crittografia gestite da Google. Puoi richiedere che sia Google a creare e gestire le chiavi Cloud KMS per te. Se vuoi utilizzare questo metodo, hai completato la configurazione del progetto Google Cloud e puoi proseguire con i passaggi descritti in Ricevere l'appliance.

  • Crea e gestisci autonomamente le chiavi di crittografia. Devi creare e gestire le chiavi di crittografia utilizzate per il trasferimento seguendo le istruzioni riportate di seguito. Prepara una chiave di decrittografia asimmetrica Cloud KMS e aggiungi l'account di servizio della sessione alla chiave. L'account di servizio per la sessione utilizza chiave di decrittografia asimmetrica per decriptare e copiare i dati su di archiviazione ideale in Cloud Storage.

Per preparare le chiavi Cloud KMS, segui questi passaggi:

  1. Se non hai un keyring di Cloud Key Management Service, procedi nel seguente modo per crearne uno:

    Google Cloud Console

    1. Vai alla pagina Chiavi crittografiche nella console Google Cloud.

      Vai alla pagina Chiavi di crittografia

    2. Fai clic su Crea keyring.

    3. Nel campo Nome del keyring, inserisci il nome che vuoi assegnare al keyring.

    4. Dal menu a discesa Posizione keyring, seleziona una posizione, ad esempio "us-east1".

    5. Fai clic su Crea.

    Riga di comando

    gcloud kms keyrings create KEY_RING --location=LOCATION --project=PROJECT_ID
    

    In questo esempio:

    • LOCATION: la località di Cloud Key Management Service per il keyring. Ad esempio, global.
    • KEY_RING: nome del keyring.
    • PROJECT_ID: l'ID progetto Google Cloud di cui fa parte il bucket di archiviazione.
  2. Per creare una chiave di decriptazione asimmetrica:

    Google Cloud Console

    1. Vai alla pagina Chiavi di crittografia nel nella console Google Cloud.

      Vai alla pagina Chiavi crittografiche

    2. Fai clic sul nome del keyring per cui vuoi creare una chiave.

    3. Fai clic su Crea chiave.

    4. Nella sezione Che tipo di chiave vuoi creare?, scegli Chiave generata.

    5. Nel campo Nome chiave, inserisci il nome della chiave.

    6. Fai clic sul menu a discesa Livello di protezione e seleziona Software.

    7. Fai clic sul menu a discesa Finalità e seleziona Decriptazione asimmetrica.

    8. Fai clic sul menu a discesa Algoritmo e seleziona RSA a 4096 bit - Padding OAEP - Digest SHA256

    9. Fai clic su Crea.

    Riga di comando

    Esegui il seguente comando per creare una chiave di decriptazione asimmetrica:

    gcloud kms keys create KEY --keyring=KEY_RING \
    --location=LOCATION --purpose=asymmetric-encryption \
    --default-algorithm=rsa-decrypt-oaep-4096-sha256 \
    --project=PROJECT_ID
    

    In questo esempio:

    • KEY: il nome della chiave Cloud Key Management Service. Ad esempio, ta-key.
    • KEY_RING: nome del keyring.
    • LOCATION: la posizione di Cloud Key Management Service per il portachiavi. Ad esempio, global.
    • PROJECT_ID: l'ID del progetto Google Cloud in cui si trova il bucket Cloud Storage.
  3. Aggiungi l'account di servizio della sessione come entità alla chiave asimmetrica svolgendo quanto segue:

    Google Cloud Console

    1. Vai alla pagina Chiavi crittografiche nella console Google Cloud.

      Vai alla pagina Chiavi crittografiche

    2. Fai clic sul keyring che contiene la chiave asimmetrica.

    3. Seleziona la casella di controllo per la chiave asimmetrica.

    4. Nel riquadro Informazioni, fai clic su Aggiungi entità.

      Viene visualizzato Aggiungi entità.

    5. Nel campo Nuove entità, inserisci l'account di servizio della sessione fornito dal team di trasferimento dell'appliance. È simile al seguente esempio:

      ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com

      In questo esempio, SESSION_ID è l'ID sessione per questo trasferimento specifico.

    6. Nel campo Seleziona un ruolo, aggiungi il ruolo Cloud KMS CryptoKey Public Key Viewer.

    7. Fai clic su Aggiungi un altro ruolo.

    8. Nel campo Seleziona un ruolo, aggiungi il ruolo Decrittatore CryptoKey Cloud KMS.

    9. Fai clic su Salva.

    Riga di comando

    1. Esegui il seguente comando per concedere all'account di servizio della sessione il ruolo roles/cloudkms.cryptoKeyDecrypter:

      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
      

      In questo esempio:

      • KEY: il nome della chiave Cloud Key Management Service. Ad esempio, ta-key.
      • KEY_RING: nome del keyring.
      • LOCATION: la posizione di Cloud Key Management Service per il portachiavi. Ad esempio, global.
      • SESSION_ID: l'ID sessione per un determinato trasferimento.
    2. Esegui questo comando per concedere l'account di servizio della sessione Il ruolo 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
      

      In questo esempio:

      • KEY: il nome della chiave Cloud Key Management Service. Ad esempio, ta-key.
      • KEY_RING: il nome del keyring.
      • LOCATION: località di Cloud Key Management Service per il keyring. Ad esempio, global.
      • SESSION_ID: l'ID sessione per un determinato trasferimento.
  4. Per ottenere il percorso della chiave asimmetrica, procedi nel seguente modo:

    Google Cloud Console

    1. Vai alla pagina Chiavi crittografiche nella console Google Cloud.

      Vai alla pagina Chiavi di crittografia

    2. Fai clic sul keyring contenente la chiave di decriptazione asimmetrica.

    3. Fai clic sul nome della chiave di decrittografia asimmetrica.

    4. Seleziona la versione della chiave che preferisci e fai clic su Altro.

    5. Fai clic su Copia nome risorsa.

      Un esempio di formato della chiave è:

      projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER

      In questo esempio:

      • PROJECT_ID: l'ID del progetto Google Cloud del bucket Cloud Storage.
      • LOCATION: la posizione di Cloud Key Management Service per il portachiavi.
      • KEY_RING: il nome del keyring.
      • KEY: il nome della chiave Cloud Key Management Service.
      • VERSION_NUMBER: il numero di versione della chiave.

      Il team di Transfer Appliance richiede l'intero percorso della chiave, compreso il numero di versione, in modo da applicare la chiave corretta ai tuoi dati.

    Riga di comando

    Esegui questo comando per elencare il percorso completo della chiave asimmetrica: incluso il numero di versione:

    gcloud kms keys versions list --keyring=KEY_RING \
    --key=KEY --location=LOCATION \
    --project=PROJECT_ID
    

    In questo esempio:

    • KEY_RING: il nome del keyring.
    • KEY: il nome della chiave asimmetrica.
    • LOCATION: la località Google Cloud della chiave suonano.
    • PROJECT_ID: l'ID progetto Google Cloud che del bucket Cloud Storage.

    La seguente risposta di esempio è simile all'output restituito:

    NAME STATE
    projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER
    ENABLED
    

    In questo esempio:

    • PROJECT_ID: l'ID del progetto Google Cloud del bucket Cloud Storage.
    • LOCATION: la posizione di Cloud Key Management Service per il portachiavi.
    • KEY_RING: il nome del keyring.
    • KEY: il nome della chiave Cloud Key Management Service.
    • VERSION_NUMBER: il numero di versione della chiave.

    Il team di Transfer Appliance richiede la stringa sotto NAME che termina con /cryptoKeyVersions/VERSION_NUMBER, dove VERSION_NUMBER è il numero di versione della chiave.

Fornisci al team di Transfer Appliance i dati di configurazione del bucket

Ti invieremo un'email intitolata Autorizzazioni e archiviazione per la preparazione di Google Transfer Appliance per raccogliere informazioni sul tuo bucket Cloud Storage. Utilizziamo le informazioni che fornisci per configurare il trasferimento da Transfer Appliance a Cloud Storage.

Nel modulo collegato all'email, inserisci le seguenti informazioni:

  • L'ID progetto Google Cloud.
  • Seleziona la tua scelta per la crittografia:
    • Chiave di crittografia gestita da Google, se hai scelto di lasciare che sia Google a gestire la chiave di crittografia.
    • Chiave di crittografia gestita dal cliente, se hai scelto di gestire la tua chiave di crittografia. Seleziona la chiave di crittografia che ti interessa dal menu a discesa Seleziona una chiave di crittografia gestita dal cliente.
  • Il nome del bucket di destinazione Google Cloud Storage utilizzato per questo trasferimento.
  • (Facoltativo) Un prefisso oggetto. Senza un prefisso dell'oggetto, gli oggetti vengono trasferiti in Cloud Storage con il percorso dell'origine, escluso il percorso principale, prima del nome del file nel file system. Ad esempio, se hai i seguenti file:
    • /source_root_path/file1.txt
    • /source_root_path/dirA/file2.txt
    • /source_root_path/dirA/dirB/file3.txt
    I nomi degli oggetti in Cloud Storage sono:
    • file1.txt
    • dirA/file2.txt
    • dirA/dirB/file3.txt
    Il prefisso dell'oggetto viene aggiunto al nome della destinazione dell'oggetto in Cloud Storage, dopo il carattere / del nome del bucket di destinazione e prima di eventuali nomi dei percorsi da cui è stato trasferito l'oggetto, senza includere il percorso di radice della fonte. In questo modo puoi distinguere gli oggetti trasferiti da altri job di trasferimento.

    La tabella seguente mostra diversi esempi di prefissi oggetto e dei relativi nomi risultanti in Cloud Storage, se il percorso dell'oggetto di origine è /source_root_path/sub_folder_name/object_name:
    Prefisso Nome oggetto di destinazione
    Nessuno /destination_bucket/sub_folder_name/object_name
    prefix/ /destination_bucket/prefix/sub_folder_name/object_name

Passaggi successivi

Configura le porte di rete IP per far funzionare l'appliance di trasferimento sulla tua rete.