Neste documento, descrevemos como configurar as permissões do Google Cloud e do Cloud Storage em detalhes, incluindo:
- Como preparar o bucket do Cloud Storage.
- Preparar uma chave do Cloud Key Management Service para proteger seus dados.
- Fornecer à equipe do Transfer Appliance os dados de configuração do bucket do Cloud Storage.
Antes de começar
Verifique se você tem um e-mail da equipe do Transfer Appliance intitulado Google Permissões do Transfer Appliance. Este e-mail contém:
Os nomes das contas de serviço necessárias para a transferência.
Um ID de sessão necessário para configurar seu dispositivo.
Um formulário que você vai preencher depois de configurar sua conta.
Prepare as permissões no bucket do Cloud Storage
Usamos duas contas de serviço para transferir seus dados. As contas de serviço são contas especiais usadas por um aplicativo, não uma pessoa, para fazer o trabalho. Nesse caso, as contas de serviço permitem que o Transfer Appliance use recursos do Cloud Storage em seu nome para transferir dados entre o Cloud Storage e o dispositivo. Você concede a essas contas os papéis necessários para transferir dados.
Para preparar o bucket do Cloud Storage, siga estas etapas:
Em um e-mail intitulado Permissões do Google Transfer Appliance, a equipe do Transfer Appliance fornece a você o serviço a seguir contas:
uma conta de serviço de sessão vinculada a essa transferência específica; Esta é a aparência do exemplo a seguir:
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
Neste exemplo,
SESSION_ID
é o ID da sessão para esta transferência específica.Um agente de serviço vinculado à Serviço de transferência de dados no local, que usamos para transferir dados entre o Cloud Storage e o dispositivo. O resultado será semelhante a este:
project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com
Neste exemplo,
TENANT_IDENTIFIER
é um número gerado específico para este projeto específico.
Observe as contas de serviço para as próximas etapas.
As contas de serviço permitem que o Transfer Appliance manipule recursos do Google Cloud em seu nome, ou seja, para transferir dados entre o Cloud Storage e o dispositivo. Você concede a essas contas os papéis necessários para transferir dados entre o Cloud Storage e o dispositivo.
Os buckets do Cloud Storage estão vinculados a projetos do Google Cloud. O bucket que você selecionados devem estar no mesmo projeto usado para solicitar o dispositivo.
Para conceder permissão às contas de serviço do Transfer Appliance para usar seu bucket do Cloud Storage, faça o seguinte:
Console do Google Cloud
- No Console do Google Cloud, acesse a página Buckets do Cloud Storage.
Clique no menu flutuante bucket () associado ao bucket para o qual você está concedendo ao principal um papel.
Selecione Editar permissões do bucket.
Clique no botão + Adicionar principais.
No campo Novos principais, insira as seguintes identidades:
A conta de serviço da sessão. Esta é a aparência do exemplo a seguir:
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
Neste exemplo,
SESSION_ID
é o ID da sessão para essa transferência específica.O agente de serviço de transferência de dados locais. É semelhante ao seguinte exemplo:
project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com
Neste exemplo,
TENANT_IDENTIFIER
é um número gerado específico para esse projeto.
No menu suspenso Selecionar um papel, selecione o papel Administrador do Storage.
Os papéis selecionados são exibidos no painel com uma breve descrição das permissões que eles concedem.
Clique em Save.
Linha de comando
Use o 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
Neste exemplo:
BUCKET_NAME
: o nome do bucket que você está criando.SESSION_ID
: o ID da sessão dessa transferência específica;TENANT_IDENTIFIER
: um número gerado específico para esse projeto.
- No Console do Google Cloud, acesse a página Buckets do Cloud Storage.
Preparar a chave do Cloud KMS
O Transfer Appliance protege os dados no dispositivo ao e criptografam os dados. Uma chave pública do Cloud Key Management Service (Cloud KMS) é usada para criptografar dados no Transfer Appliance, e uma chave privada é usada. para descriptografar seus dados.
Usamos a conta de serviço da sessão do artigo Preparar as permissões no bucket do Cloud Storage para fazer o upload dos dados do bucket do Cloud Storage para o dispositivo.
Você tem a seguinte opção para gerenciar chaves de criptografia:
- Crie e gerencie chaves de criptografia você mesmo. Você cria e gerencia as chaves de criptografia usadas para sua transferência seguindo as instruções abaixo. Prepare uma chave de descriptografia assimétrica do Cloud KMS e adicione a conta de serviço da sessão à chave.
Para preparar as chaves do Cloud KMS, faça o seguinte:
Se você não tiver um keyring do Cloud Key Management Service, siga estas etapas para criar um:
Console do Google Cloud
Acesse a página Chaves criptográficas no console do Google Cloud.
Clique em Criar keyring.
No campo Nome do keyring, digite o nome do seu keyring.
Na lista suspensa Local do keyring, selecione um local como
"us-east1"
.Clique em Criar.
Linha de comando
gcloud kms keyrings create KEY_RING --location=LOCATION --project=PROJECT_ID
Neste exemplo:
LOCATION
: o local do Cloud Key Management Service para o keyring. Por exemplo,global
.KEY_RING
: o nome do keyring.PROJECT_ID
: o ID do projeto do Google Cloud em que seu bucket de armazenamento está localizado.
Crie uma chave de descriptografia assimétrica da seguinte maneira:
Console do Google Cloud
Acesse a página Chaves criptográficas no console do Google Cloud.
Clique no nome do keyring em que você quer criar a chave.
Clique em Criar chave.
Na seção Qual tipo de chave você quer criar?, selecione Chave gerada.
No campo Nome da chave, insira o nome da sua chave.
Clique na lista suspensa Nível de proteção e selecione Software.
Clique na lista suspensa Finalidade e selecione Descriptografia assimétrica.
Clique na lista suspensa Algoritmo e selecione RSA de 4096 bits - Padding OAEP - Resumo SHA256.
Clique em Criar.
Linha de comando
Execute o seguinte comando para criar uma chave de descriptografia assimétrica:
gcloud kms keys create KEY --keyring=KEY_RING \ --location=LOCATION --purpose=asymmetric-encryption \ --default-algorithm=rsa-decrypt-oaep-4096-sha256 \ --project=PROJECT_ID
Neste exemplo:
KEY
: o nome da chave do Cloud Key Management Service. Por exemplo,ta-key
.KEY_RING
: o nome do keyring.LOCATION
: o local do Cloud Key Management Service para o keyring. Por exemplo,global
.PROJECT_ID
: o ID do projeto do Google Cloud em que seu bucket de armazenamento está localizado.
Adicione a conta de serviço da sessão como principal à chave assimétrica da seguinte maneira:
Console do Google Cloud
Acesse a página Chaves criptográficas no console do Google Cloud.
Clique no keyring que contém a chave assimétrica.
Marque a caixa de seleção da chave.
No painel de informações, clique em Adicionar principal.
A opção Adicionar principais é exibida.
No campo Novos principais, insira a conta de serviço da sessão fornecida pela equipe do Transfer Appliance. Esta é a aparência do exemplo a seguir:
ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com
Neste exemplo,
SESSION_ID
é o ID da sessão para essa transferência específica.No campo Selecionar um papel, adicione o Cloud KMS CryptoKey Public Leitor de chaves.
Clique em Salvar.
Linha de comando
Execute o seguinte comando para conceder à conta de serviço da sessão o papel
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
Neste exemplo:
KEY
: o nome da chave do Cloud Key Management Service. Por exemplo,ta-key
.KEY_RING
: o nome do keyring.LOCATION
: o local do Cloud Key Management Service para o keyring. Por exemplo,global
.SESSION_ID
: o ID da sessão dessa transferência específica;
Veja o caminho da chave assimétrica fazendo o seguinte:
Console do Google Cloud
Acesse a página Chaves criptográficas no console do Google Cloud.
Clique no keyring que contém a chave de descriptografia assimétrica.
Clique no nome da chave de descriptografia assimétrica.
Selecione a versão da chave que você quer e clique em Mais more_vert.
Clique em Copiar nome do recurso.
Veja um exemplo do formato de chave:
projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER
Neste exemplo:
PROJECT_ID
: o ID do projeto do Google Cloud em que seu bucket de armazenamento está localizado.LOCATION
: o local do Cloud Key Management Service para o keyring.KEY_RING
: o nome do keyring.KEY
: o nome da chave do Cloud Key Management Service.VERSION_NUMBER
: o número da versão da chave.
A equipe do Transfer Appliance requer todo o caminho da chave, incluindo o número da versão, para que possa aplicar a chave correta aos dados.
Linha de comando
Execute o seguinte comando para listar o caminho completo da chave assimétrica, incluindo o número da versão:
gcloud kms keys versions list --keyring=KEY_RING \ --key=KEY --location=LOCATION \ --project=PROJECT_ID
Neste exemplo:
KEY_RING
: o nome do keyringKEY
: o nome da chave assimétrica.LOCATION
: o local do keyring do Google Cloud.PROJECT_ID
: o ID do projeto do Google Cloud em que seu bucket de armazenamento está localizado.
A resposta de exemplo a seguir é parecida com a saída retornada:
NAME STATE projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY/cryptoKeyVersions/VERSION_NUMBER ENABLED
Neste exemplo:
PROJECT_ID
: o ID do projeto do Google Cloud em que seu bucket de armazenamento está localizado.LOCATION
: o local do Cloud Key Management Service para o keyring.KEY_RING
: o nome do keyring.KEY
: o nome da chave do Cloud Key Management Service.VERSION_NUMBER
: o número da versão da chave.
A equipe do Transfer Appliance requer a string em
NAME
que termina em/cryptoKeyVersions/VERSION_NUMBER
, em queVERSION_NUMBER
é o número da versão da chave.
Fornecer os dados de configuração do bucket para a equipe do Transfer Appliance
Enviamos um e-mail com o título Permissões do Google Transfer Appliance para coletar informações sobre seu bucket do Cloud Storage. Usamos o informações que você fornece para configurar os dados de transferência entre o Cloud Storage e o Transfer Appliance.
No formulário vinculado a esse e-mail, digite as seguintes informações:
- O ID do projeto do Google Cloud.
- Escolha sua opção para Criptografia:
- Chave de criptografia gerenciada pelo cliente, selecione a chave de criptografia no Selecione uma chave de criptografia gerenciada pelo cliente.
- O nome do bucket do Google Cloud Storage usado para durante a transferência.
A seguir
Configure as portas de rede IP para que o Transfer Appliance funcione na sua rede.