Neste documento, explicamos como criar e gerenciar tags seguras para políticas de firewall. Antes de usar tags seguras em políticas de firewall ou vinculá-las a recursos, é preciso criá-las.
Neste documento, discutimos os seguintes tópicos:
- Conceder as permissões adequadas para gerenciar e usar tags
- Como criar chaves e valores de tags
- Criar políticas e regras de firewall que usam tags seguras
- Vinculação de tags seguras a instâncias de máquina virtual (VM)
- Como usar tags seguras em redes com peering
Para mais informações sobre tags seguras e como elas funcionam, consulte Tags seguras para firewalls.
Conceder permissões para tags seguras
Um administrador da organização pode conceder papéis no nível da organização, e um proprietário do projeto pode conceder papéis no nível do projeto.
Conceder o papel de administrador de tags
Com a função de administrador de tags (roles/resourcemanager.tagAdmin), é possível criar, atualizar e excluir tags seguras.
Console
Para conceder ao usuário o papel de administrador de tags (roles/resourcemanager.tagAdmin), faça o seguinte:
No console do Google Cloud , acesse a página IAM.
Na lista do seletor de projetos, selecione a organização ou o projeto a que você quer conceder o papel.
Clique em Conceder acesso.
No campo Novos principais, insira o endereço de e-mail do usuário. Por exemplo,
my-user@example.com.Na lista Selecionar um papel, digite Tag no campo Filtro e selecione Administrador de tags.
Clique em Salvar.
gcloud
Para conceder o papel de administrador de tags (roles/resourcemanager.tagAdmin)
a um principal do IAM na política do IAM
de uma organização, use o
comando gcloud organizations add-iam-policy-binding:
gcloud organizations add-iam-policy-binding ORGANIZATION_ID \
--member=user:EMAIL_ADDRESS \
--role=roles/resourcemanager.tagAdmin
Substitua:
ORGANIZATION_ID: ID da sua organizaçãoEMAIL_ADDRESS: o endereço de e-mail do usuário.
Conceder o papel de usuário da tag
Com o papel de usuário da tag (roles/resourcemanager.tagUser), é possível acessar a lista de tags seguras e gerenciar as associações delas com os recursos.
Console
Para conceder o papel de Usuário da tag (roles/resourcemanager.tagUser) ao usuário, faça o seguinte:
No console do Google Cloud , acesse a página IAM.
Na lista do seletor de projetos, selecione a organização ou o projeto a que você quer conceder o papel.
Clique em Conceder acesso.
No campo Novos principais, insira o endereço de e-mail do usuário. Por exemplo,
my-user@example.com.Na lista Selecionar um papel, digite Tag no campo Filtro e selecione Usuário da tag.
Opcional: adicione uma condição ao papel.
Clique em Salvar.
gcloud
Para conceder o papel de usuário da tag (
roles/resourcemanager.tagUser) a um usuário em uma tag específica, use o comandogcloud resource-manager tags keys add-iam-policy-binding:gcloud resource-manager tags keys add-iam-policy-binding ORGANIZATION_ID/TAG_KEY \ --member=user:EMAIL_ADDRESS \ --role=roles/resourcemanager.tagUserSubstitua:
ORGANIZATION_ID: ID da sua organizaçãoTAG_KEY: a chave de tag segura.EMAIL_ADDRESS: o endereço de e-mail do usuário.
Para conceder o papel de usuário da tag (
roles/resourcemanager.tagUser) a um principal do IAM para que ele possa usar todos os valores de tag de cada chave de tag na organização, use o comandogcloud organizations add-iam-policy-binding:gcloud organizations add-iam-policy-binding ORGANIZATION_ID \ --member=user:EMAIL_ADDRESS \ --role=roles/resourcemanager.tagUserSubstitua:
ORGANIZATION_ID: ID da sua organizaçãoEMAIL_ADDRESS: o endereço de e-mail do usuário.
Para conceder o papel de usuário da tag (
roles/resourcemanager.tagUser) a um principal do IAM para que ele possa usar um valor de tag específico de uma chave de tag cujo pai é a organização, use o comandogcloud resource-manager tags values add-iam-policy-binding:gcloud resource-manager tags values add-iam-policy-binding ORGANIZATION_ID/TAG_KEY/TAG_VALUE \ --member=user:EMAIL_ADDRESS \ --role=roles/resourcemanager.tagUserSubstitua:
ORGANIZATION_ID: ID da sua organizaçãoTAG_KEY: a chave de tag segura.TAG_VALUE: o valor da tag segura.EMAIL_ADDRESS: o endereço de e-mail do usuário.
Para conceder o papel Usuário de tag (
roles/resourcemanager.tagUser) a um principal do IAM para que ele possa usar todos os valores de tag de cada chave de tag em um projeto, use o comandogcloud projects add-iam-policy-binding:gcloud projects add-iam-policy-binding PROJECT_NAME \ --member=user:EMAIL_ADDRESS \ --role=roles/resourcemanager.tagUserSubstitua:
PROJECT_NAME: nome do projetoEMAIL_ADDRESS: o endereço de e-mail do usuário.
Papéis personalizados para gerenciar tags seguras
Com a função de administrador de tags (roles/resourcemanager.tagAdmin), é possível criar, atualizar e excluir tags seguras.
Se você precisar de alguns desses recursos, crie um papel personalizado do Identity and Access Management (IAM) com as permissões relevantes e conceda o novo papel ao usuário de destino. Para conferir a lista de permissões relevantes, consulte Papéis do IAM.
As tags seguras usadas em políticas de firewall precisam ser designadas com uma finalidade GCE_FIREWALL. A finalidade GCE_FIREWALL é necessária para que a tag segura seja
usada em recursos de rede, mas você pode usar a tag segura para outras ações.
Criar chaves e valores de tags seguras
Antes de associar tags seguras às políticas de firewall, crie as chaves e os valores de tag seguros.
Depois que a chave de tag é criada, ela não pode ser alterada e precisa ser exclusiva no mesmo namespace.
Console
Para criar uma chave e valores de tags seguros, faça o seguinte:
No console do Google Cloud , acesse a página Tags.
Na lista do seletor de projetos, selecione a organização ou o projeto em que você quer criar uma chave de tag.
Clique em Criar.
No campo Chave de tag, insira o nome de exibição da sua chave de tag. Isso se torna parte do nome de namespace da tag.
Opcional: no campo Descrição da chave de tag, insira uma descrição da chave.
Em Finalidade da tag, selecione Para uso com o Cloud NGFW.
Para criar uma tag segura, faça o seguinte:
Se os dados de finalidade especificarem uma rede, selecione Restringir o escopo a uma única rede.
Se os dados de finalidade especificarem uma organização, desmarque Restringir o escopo a uma única rede.
Na guia Seleção de rede, selecione a organização ou o projeto em que você quer criar uma chave de tag segura.
Na lista Rede, selecione a rede.
Se você quiser adicionar valores de tag a essa chave, clique em Adicionar valor para cada valor de tag que quiser criar.
No campo Valor da tag, insira o nome de exibição do valor da tag. Isso se torna parte do nome de namespace da tag.
Opcional: no campo Descrição do valor da tag, insira uma descrição do valor da tag.
Quando terminar de adicionar valores de tag, clique em Criar tag.
gcloud
Depois de receber as permissões necessárias, crie a chave de tag segura no nível da organização ou do projeto.
Para criar uma chave de tag segura para uma organização, use o comando
gcloud resource-manager tags keys create:gcloud resource-manager tags keys create TAG_KEY \ --parent organizations/ORGANIZATION_ID \ --purpose GCE_FIREWALL \ --purpose-data organization=autoSubstitua:
TAG_KEY: a chave de tag segura.ORGANIZATION_ID: ID da sua organização
Para criar uma chave de tag segura para um projeto principal ou uma organização cujo propósito de dados identifica uma única rede VPC, use o comando
gcloud resource-manager tags keys create:gcloud resource-manager tags keys create TAG_KEY \ --parent organizations/ORGANIZATION_ID \ --purpose GCE_FIREWALL \ --purpose-data network=PROJECT_ID/NETWORKSubstitua:
TAG_KEY: a chave de tag segura.ORGANIZATION_ID: ID da sua organizaçãoPROJECT_ID: o ID do projetoNETWORK: o nome da rede
Para adicionar os valores de tag segura relevantes às chaves de tag segura, use o comando
gcloud resource-manager tags values create:gcloud resource-manager tags values create TAG_VALUE \ --parent ORGANIZATION_ID/TAG_KEYSubstitua:
TAG_VALUE: o valor a ser atribuído à chave de tag segura.ORGANIZATION_ID: ID da sua organizaçãoTAG_KEY: a chave de tag segura.
Execute o comando várias vezes para adicionar vários valores. Cada valor de tag segura adicionado à chave de tag segura precisa ser único.
Criar uma política de firewall
É possível usar chaves de tag segura em políticas de firewall depois de criá-las. É possível usar chaves de tag seguras definidas no nível da organização em políticas hierárquicas de firewall ou de rede. Só é possível usar tags seguras definidas no nível da rede em políticas de firewall de rede.
Criar uma política de firewall hierárquica
É possível criar uma política em qualquer recurso (organização ou pasta) da hierarquia da organização.
Console
No console do Google Cloud , acesse a página Políticas de firewall.
Na lista do seletor de projetos, selecione o ID da organização ou uma pasta na organização.
Clique em Criar política de firewall.
No campo Nome da política, insira o nome.
Se você quiser criar regras para sua política, clique em Continuar > Criar regra de firewall.
Para mais detalhes, consulte Criar uma regra de política de firewall hierárquica com tags seguras.
Se você quiser associar a política a um recurso, clique em Continuar > Adicionar.
Para mais detalhes, consulte Associar uma política à organização ou pasta.
Clique em Continuar > Criar.
gcloud
Para criar uma política hierárquica de firewall, use o
comando gcloud compute firewall-policies create:
gcloud compute firewall-policies create \
[--organization ORGANIZATION_ID] | [--folder FOLDER_ID] \
--short-name SHORT_NAME
Substitua:
ORGANIZATION_ID: ID da sua organizaçãoEspecifique esse ID se você estiver criando a política no nível da organização. Esse ID indica apenas em que local a política está. Ele não associa automaticamente a política ao recurso da organização.
FOLDER_ID: o ID de uma pastaEspecifique esse ID se estiver criando a política em uma determinada pasta. Esse ID indica apenas em que local a política está. Ele não associa automaticamente a política a essa pasta.
SHORT_NAME: um nome para a política.Uma política criada usando a Google Cloud CLI tem dois nomes: um gerado pelo sistema e um curto fornecido por você. Ao usar a Google Cloud CLI para atualizar uma política, é possível fornecer o nome gerado pelo sistema ou o nome curto e o ID da organização. Ao usar a API para atualizar a política, é preciso informar o nome gerado pelo sistema.
Criar uma política de firewall de rede global
Depois de criar uma tag segura, você poderá usá-la nas regras de uma política de firewall de rede global.
Console
No console do Google Cloud , acesse a página Políticas de firewall.
Na lista do seletor de projetos, selecione seu projeto na organização.
Clique em Criar política de firewall.
No campo Nome da política, insira o nome.
Em Escopo da implantação, selecione Global.
Se você quiser criar regras para sua política, clique em Continuar > Criar regra de firewall.
Para mais detalhes, consulte Criar uma regra de política de firewall de rede com tags seguras.
Se quiser associar a política a uma rede, clique em Continuar > Associar.
Para detalhes, consulte Associar uma política à rede.
Clique em Continuar > Criar.
gcloud
Para criar uma política de firewall de rede, use o
comando gcloud compute network-firewall-policies create:
gcloud compute network-firewall-policies create \
NETWORK_FIREWALL_POLICY_NAME \
--description DESCRIPTION \
--global
Substitua:
NETWORK_FIREWALL_POLICY_NAME: um nome para a política.DESCRIPTION: uma descrição da política.
Criar uma regra de política de firewall com tags seguras
Depois de criar uma tag segura e uma política de firewall, você pode criar uma regra de política de firewall com os valores específicos da tag de origem e da tag de destino para permitir o tráfego escolhido entre as VMs com as tags de origem e de destino.
Criar uma regra de política de firewall hierárquica com tags seguras
Só é possível criar uma regra de política de firewall hierárquica com as chaves e os valores de origem e destino específicos se você tiver criado uma política de firewall hierárquica. Para mais informações, consulte Criar uma política hierárquica de firewall.
Console
No console do Google Cloud , acesse a página Políticas de firewall.
Na lista do seletor de projetos, selecione o ID da organização ou a pasta que contém a política.
Clique no nome da política e em Criar regra de firewall.
Insira a prioridade da regra.
Especifique a direção do tráfego.
Em Ação se houver correspondência, escolha uma configuração.
Em Registros, escolha Ativado ou Desativado.
Em Destino, selecione Tags seguras e clique em Selecionar escopo das tags.
Na página Selecionar um recurso, escolha a organização ou o projeto em que você quer criar tags seguras.
Insira os pares de chave-valor a que a regra será aplicada.
Para adicionar mais pares de chave-valor, clique em Adicionar tag.
Na seção Origem, em Tags, clique em Selecionar escopo das tags.
Na página Selecionar um recurso, escolha a organização ou pasta que contém as chaves de tag segura.
Clique em Criar.
gcloud
Para criar uma regra de política hierárquica de firewall, use o
comando gcloud compute firewall-policies rules create:
gcloud compute firewall-policies rules create \
--firewall-policy FIREWALL_POLICY_NAME \
--src-secure-tags ORGANIZATION_ID/TAG_KEY/TAG_VALUE \
--target-secure-tags ORGANIZATION_ID/TAG_KEY/TAG_VALUE \
--direction DIRECTION \
--action ACTION \
--layer4-configs tcp:PORT
Substitua:
FIREWALL_POLICY_NAME: o nome da política de firewall hierárquicaORGANIZATION_ID: ID da sua organizaçãoTAG_KEY: a chave de tag segura.TAG_VALUE: o valor a ser atribuído à chave de tag segura.DIRECTION: indica se a regra éingressouegress.ACTION: uma das seguintes ações:allow: permite conexões que correspondem à regradeny: nega conexões que correspondem à regragoto_next: transmite a avaliação da conexão para o próximo nível da hierarquia, seja uma pasta ou a rede
PORT: o número da porta para acessar o recurso
Criar uma regra de política de firewall de rede com tags seguras
É possível criar uma regra de política de firewall de rede com os valores específicos de tag de origem e de destino que permitem o tráfego escolhido entre as VMs com as tags de origem e de destino. Para mais informações, consulte Criar uma política global de firewall de rede.
Console
No console do Google Cloud , acesse a página Políticas de firewall.
Na lista do seletor de projetos, selecione seu projeto ou a pasta que contém a política.
Clique no nome da política e em Criar regra de firewall.
Insira a prioridade da regra.
Especifique a direção do tráfego.
Em Ação se houver correspondência, escolha uma configuração.
Em Registros, escolha Ativado ou Desativado.
Em Destino, selecione Tags seguras e clique em Selecionar escopo das tags.
Na página Selecionar um recurso, escolha a organização ou o projeto em que você quer criar tags seguras.
Insira os pares de chave-valor a que a regra será aplicada.
Para adicionar mais pares de chave-valor, clique em Adicionar tag.
Na seção Origem, em Tags, clique em Selecionar escopo das tags.
Na página Selecionar um recurso, escolha a organização ou pasta que contém as chaves de tag segura.
Clique em Criar.
gcloud
Para criar uma regra de política de firewall de rede, use o
comando gcloud compute network-firewall-policies rules create:
gcloud compute network-firewall-policies rules create \
--firewall-policy FIREWALL_POLICY_NAME \
--src-secure-tags ORGANIZATION_ID/TAG_KEY/TAG_VALUE \
--target-secure-tags ORGANIZATION_ID/TAG_KEY/TAG_VALUE \
--direction DIRECTION \
--action ACTION \
--layer4-configs tcp:PORT \
--global-firewall-policy
Substitua:
FIREWALL_POLICY_NAME: o nome da nova política de firewall de rede globalORGANIZATION_ID: ID da sua organizaçãoTAG_KEY: a chave de tag.TAG_VALUE: o valor a ser atribuído à chave de tag.DIRECTION: indica se a regra éingressouegress.ACTION: uma das seguintes ações:allow: permite conexões que correspondem à regradeny: nega conexões que correspondem à regragoto_next: transmite a avaliação da conexão para o próximo nível da hierarquia, seja uma pasta ou a rede
PORT: o número da porta para acessar o recurso
Vincular tags seguras
Para entender como a vinculação de tags seguras funciona em políticas de firewall de rede e políticas hierárquicas de firewall, consulte Vincular tags seguras.
Antes de começar
Verifique se você tem o papel de administrador de tags (
roles/resourcemanager.tagAdmin). Como administrador de tags, você pode vincular as tags seguras a instâncias de VM individuais.Se você não tiver o papel de administrador de tags (
roles/resourcemanager.tagAdmin), peça ao administrador da organização para conceder a você o papel de usuário de tags (roles/resourcemanager.tagUser). Para mais informações, consulte Conceder permissões a tags seguras.Verifique se você tem o papel de usuário da tag (
roles/resourcemanager.tagUser) nos recursos a que as tags estão vinculadas. Para mais informações sobre como conceder a função de usuário de tag (roles/resourcemanager.tagUser) nos recursos a que as tags serão vinculadas, consulte Conceder permissões para proteger tags.Verifique se você criou as chaves e valores de tags seguras e a regra de política de firewall com tags seguras.
Verifique se você criou uma instância de VM. Para mais informações, consulte Criar e iniciar uma instância do Compute Engine.
Vincular tags seguras a instâncias de VM
É possível anexar tags atuais a determinados recursos. Depois que o recurso for criado, anexe tags a ele seguindo as instruções abaixo.
Console
Para vincular as tags seguras a instâncias de VM, faça o seguinte:
No console do Google Cloud , acesse a página Instâncias de VM.
Selecione o projeto e clique em Continuar.
Na coluna Nome, clique no nome da VM em que você quer adicionar tags.
Na página Detalhes da VM, siga estas etapas:
- Clique em Editar.
- Na seção Informações básicas, clique em Gerenciar tags e adicione as tags que você quer na instância.
- Clique em Salvar.
gcloud
Para saber como usar essas flags, leia Como anexar tags a recursos na documentação do Resource Manager.
Por exemplo, o comando a seguir anexa uma tag a uma VM:
gcloud resource-manager tags bindings create \
--location=LOCATION_NAME \
--tag-value=tagValues/TAGVALUE_ID \
--parent=FULL_RESOURCE_NAME
Substitua:
LOCATION_NAME: a zona em que a instância está localizada. Para um recurso global, omita a flag--location.TAGVALUE_ID: o ID numérico do valor da tagFULL_RESOURCE_NAME: o nome completo do recurso do recurso de destino. Neste exemplo, o nome completo do recurso da instância de VM://compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/INSTANCE_ID
Substitua:
PROJECT_NUMBER: o ID numérico do projeto que contém o recurso de destinoZONE: a zona que contém a instânciaINSTANCE_ID: o ID da instância de VM
REST
Para anexar uma tag a um recurso, primeiro crie uma representação JSON de uma vinculação de tags que inclua o ID permanente ou o nome com namespace do valor da tag e o ID permanente do recurso. Para mais informações sobre o formato de uma vinculação de tags, consulte a referência de tagBindings.
Para anexar a tag a um recurso zonal, como uma instância de VM, use o método tagBindings.create com o endpoint regional em que o recurso está localizado. Exemplo:
POST https://LOCATION_NAME-cloudresourcemanager.googleapis.com/v3/tagBindings
O corpo da solicitação pode ser uma das duas opções a seguir:
{
"parent": "FULL_RESOURCE_NAME",
"tagValue": "tagValue/TAGVALUE_ID"
}
{
"parent": "FULL_RESOURCE_NAME",
"tagValueNamespacedName": TAGVALUE_NAMESPACED_NAME
}Substitua:
LOCATION_NAME: o local zonal ou regional do recurso. Para uma instância de VM, especifique a zona. Para um recurso global, omita o parâmetroLOCATION_NAME-.FULL_RESOURCE_NAME: o nome completo do recurso do recurso de destino. Neste exemplo, o nome completo do recurso da instância de VM://compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/INSTANCE_ID
Substitua:
PROJECT_NUMBER: o ID numérico do projeto que contém o recurso de destinoZONE: a zona que contém a instânciaINSTANCE_ID: o ID da instância de VM
TAGVALUE_ID: o ID permanente do valor da tag anexado; por exemplo:4567890123TAGVALUE_NAMESPACED_NAME: o nome do namespace do valor da tag anexado e tem o formato:parentNamespace/tagKeyShortName/tagValueShortName
Adicionar tags seguras a uma instância de VM durante a criação da VM
Em determinados cenários, convém incluir tags nos recursos durante a criação deles, e não depois.
Console
Dependendo do tipo de recurso, as etapas específicas podem variar. As etapas a seguir são para uma VM:
No console do Google Cloud , acesse a página Instâncias de VM.
Selecione o projeto e clique em Continuar.
Clique em Criar instância. A página Criar uma instância aparece e mostra o painel Configuração da máquina.
No menu de navegação, clique em Avançado. No painel Avançado que aparece, faça o seguinte:
- Abra a seção Gerenciar tags e rótulos.
- Clique em Adicionar tags.
- No painel Tags que é aberto, siga as instruções para adicionar uma tag à instância.
- Clique em Salvar.
Especifique outras opções de configuração para sua instância. Para mais informações, consulte Opções de configuração durante a criação da instância.
Para criar e iniciar a VM, clique em Criar.
gcloud
Para anexar uma tag a um recurso durante a criação dele, adicione a flag --resource-manager-tags com o respectivo comando create. Por exemplo, para anexar uma tag a uma VM, use o seguinte comando:
gcloud compute instances create INSTANCE_NAME \
--zone=ZONE \
--resource-manager-tags=tagKeys/TAGKEY_ID=tagValues/TAGVALUE_IDSubstitua:
INSTANCE_NAME: o nome da instância de VMZONE: a zona que contém a instância de VMTAGKEY_ID: o ID numérico do número da chave da tagTAGVALUE_ID: o ID numérico permanente do valor da tag anexado; por exemplo:4567890123
Especifique várias tags separando-as por vírgula, por exemplo, TAGKEY1=TAGVALUE1,TAGKEY2=TAGVALUE2.
REST
Faça uma solicitação POST para o seguinte URL:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances
Inclua o corpo da solicitação JSON a seguir:
{
"name": INSTANCE_NAME,
"params": {
"resourceManagerTags": {
"tagKeys/TAGKEY_ID": "tagValues/TAGVALUE_ID",
},
}
// other fields omitted
}Substitua:
INSTANCE_NAME: o nome da instância de VMTAGKEY_ID: o ID numérico do número da chave da tagTAGVALUE_ID: o ID numérico permanente do valor da tag anexado; por exemplo:4567890123
Usar tags seguras em redes com peering
É possível usar tags seguras no peering de rede VPC. Suponha que as redes conectadas sejam server e client. Para usar tags seguras em duas redesGoogle Cloud conectadas, conclua as tarefas a seguir na ordem especificada.
Atribua a função de administrador de tags (
roles/resourcemanager.tagAdmin) ao usuário. Um administrador da organização concede o papel de administrador de tags (roles/resourcemanager.tagAdmin) aos usuários no nível da organização, e um proprietário do projeto pode conceder o papel de administrador de tags (roles/resourcemanager.tagAdmin) no nível do projeto. Para mais informações, consulte Conceder permissões para tags seguras.Crie uma chave e um valor de tag segura na rede
server. Para informações sobre como criar chaves e valores de tags seguras, consulte Criar chaves e valores de tags seguras.Crie uma regra de política de firewall na rede
serverpara permitir o tráfego de entrada da tag segura criada na etapa anterior. Para mais informações, consulte Criar uma regra de política de firewall com tags seguras.Conceda as permissões necessárias ao usuário
clientpara proteger tags nas duas redes VPC. Para mais informações, consulte Conceder permissões para tags seguras.Na rede
client, vincule as tags seguras a uma instância de VM. Para mais informações, consulte Vincular tags seguras. Agora a VMclientabre conexões com a VMserver.A regra da política de firewall do servidor permite o tráfego porque ele vem das tags seguras a que estão vinculadas. A regra também permite o pacote de resposta porque o tráfego de saída é permitido por padrão.