Nesta página, você verá como criar um perímetro de serviço.
Antes de começar
Leia sobre a configuração de perímetros de serviço.
Leia sobre o gerenciamento de redes VPC em perímetros de serviço.
Saiba mais sobre como conceder acesso ao VPC Service Controls.
Se você quiser configurar o acesso externo aos serviços protegidos quando estiver criando o perímetro, primeiro defina um ou mais níveis de acesso.
Criar um perímetro de serviço
Nesta seção, descrevemos como criar um perímetro de serviço, adicionar projetos ou redes VPC ao perímetro e proteger os serviços.
Quando você cria um perímetro de serviço, há a opção de permitir o acesso a serviços protegidos de fora do perímetro e especificar quais deles são acessíveis para outros serviços e usuários dentro do perímetro. Se preferir, defina essas configurações depois de criar um perímetro.
Depois de criar um perímetro de serviço ou atualizar um perímetro de serviço atual, pode levar até
30 minutos para que as alterações sejam propagadas e entrem em vigor. Durante esse período,
o perímetro pode bloquear solicitações com a seguinte mensagem de erro: Error 403: Request is prohibited by organization's policy.
Console
No menu de navegação do console do Google Cloud, clique em Segurança e depois em VPC Service Controls.
Se solicitado, selecione a organização, a pasta ou o projeto.
Selecione uma política de acesso atual ou crie uma nova política de acesso. Verifique se o escopo da política de acesso inclui todos os projetos e as redes VPC que você quer adicionar ao perímetro.
Na página VPC Service Controls, selecione um modo de aplicação de perímetro. Por padrão, o Modo restrito está selecionado. Se você quiser criar um perímetro do modo de teste, clique em Modo de teste.
Perímetros restritos impedem ativamente o acesso a serviços protegidos. Os perímetros de teste registram violações do perímetro como se os serviços fossem protegidos, mas não impedem o acesso a eles. Para mais informações sobre os modos restrito e de teste, veja esta página sobre os perímetros de serviço.
Clique em Novo perímetro.
Na página Criar um perímetro de serviço, no campo Título, insira um nome para o perímetro.
O nome do perímetro pode ter no máximo 50 caracteres, precisa começar com uma letra e pode conter apenas letras latinas ASCII (a-z, A-Z), números (0-9) ou sublinhados (
_
). O nome do perímetro diferencia maiúsculas de minúsculas e precisa ser exclusivo em uma política de acesso.Opcional: no campo Descrição, insira uma descrição para o perímetro.
Em Tipo de perímetro, selecione Regular.
Em Modo de aplicação obrigatória, selecione um modo de aplicação obrigatória do perímetro. As opções disponíveis são Teste e Obrigatório.
Clique em Continuar.
Para adicionar projetos ou redes VPC que você quer proteger no perímetro, faça o seguinte:
Para adicionar projetos ao perímetro, clique em Adicionar projetos.
No painel Adicionar projetos, selecione os projetos que você quer proteger.
Clique em Adicionar projetos selecionados. Os projetos adicionados aparecem na seção Projetos.
Para adicionar redes VPC ao perímetro, clique em Adicionar redes.
Na lista de projetos, clique naquele que contém as redes VPC.
No painel Adicionar redes VPC, selecione as redes VPC que você quer proteger.
Clique em Adicionar redes selecionadas. As redes adicionadas aparecem na seção Redes VPC.
Clique em Continuar.
Para selecionar os serviços que você quer proteger no perímetro, faça o seguinte:
No painel Serviços restritos, clique em Adicionar serviços.
No painel Adicionar serviços, selecione os serviços que você quer proteger.
Clique em Adicionar serviços selecionados.
Clique em Continuar.
Opcional: se você quiser definir quais serviços podem ser acessados de endpoints de rede dentro de um perímetro, selecione uma das opções disponíveis no painel Serviços acessíveis pela VPC:
Todos os serviços: essa opção permite todos os serviços Google Cloud .
Nenhum serviço: essa opção não permite nenhum dos Google Cloud serviços.
Todos os serviços restritos: essa opção permite apenas os Google Cloud serviços que você protegeu neste perímetro.
Serviços selecionados: essa opção permite apenas os Google Cloud serviços selecionados.
Clique em Adicionar serviços.
No painel Adicionar serviços, selecione os serviços que você quer permitir.
Clique em Adicionar serviços selecionados.
Para incluir todos os serviços restritos que o perímetro protege aos serviços selecionados, clique no botão Incluir todos os serviços restritos para ativar a opção.
Clique em Continuar.
Também há a opção de adicionar serviços acessíveis depois da criação de um perímetro.
Para mais informações, consulte Serviços acessíveis por VPC.
Opcional: para permitir o acesso a recursos protegidos de fora do perímetro usando níveis de acesso, faça o seguinte:
No painel Níveis de acesso, clique em Adicionar níveis de acesso.
Também é possível adicionar níveis de acesso após a criação de um perímetro.
Marque as caixas de seleção correspondentes aos níveis de acesso que você quer aplicar ao perímetro de serviço.
Clique em Adicionar os níveis de acesso selecionados.
Clique em Continuar.
Para permitir o acesso a recursos em um perímetro de clientes de API fora do perímetro, faça o seguinte:
No painel Regras de entrada, clique em Adicionar uma regra de entrada.
No campo Título, insira um título para a regra de entrada.
Na seção De, especifique as origens de fora do perímetro que exigem acesso. É possível especificar projetos, níveis de acesso e redes VPC como origens.
Na seção Para, especifique os recursos dentro do perímetro que as origens podem acessar.
Clique em Continuar.
Para conferir a lista de atributos de regras de entrada, consulte Referência de regras de entrada.
Para permitir o acesso que envolve um cliente de API ou os recursos dentro do perímetro a recursos de fora de um perímetro, faça o seguinte:
No painel Regras de saída, clique em Adicionar uma regra de saída.
No campo Título, insira um título para a regra de saída.
Na seção De, especifique as origens dentro do perímetro que exigem acesso.
Na seção Para, especifique os recursos fora do perímetro que as origens podem acessar.
Para a lista de atributos de regra de saída, consulte Referência de regras de saída.
Clique em Criar.
gcloud
Para criar um novo perímetro no modo restrito, use
o comando gcloud access-context-manager perimeters create
.
gcloud access-context-manager perimeters create NAME \ --title=TITLE \ --resources=RESOURCES \ --restricted-services=RESTRICTED-SERVICES \ --ingress-policies=INGRESS-FILENAME.yaml \ --egress-policies=EGRESS-FILENAME.yaml \ [--access-levels=LEVELS] \ [--enable-vpc-accessible-services] \ [--vpc-allowed-services=ACCESSIBLE-SERVICES] \ --policy=POLICY_NAME
Para criar um novo perímetro no modo de teste, use
o comando
gcloud access-context-manager perimeters dry-run create
.
gcloud access-context-manager perimeters dry-run create NAME \ --perimeter-title=TITLE \ --perimeter-type=TYPE \ --perimeter-resources=RESOURCES \ --perimeter-restricted-services=RESTRICTED-SERVICES \ --perimeter-ingress-policies=INGRESS-FILENAME.yaml \ --perimeter-egress-policies=EGRESS-FILENAME.yaml \ [--perimeter-access-levels=LEVELS] \ [--perimeter-enable-vpc-accessible-services] \ [--perimeter-vpc-allowed-services=ACCESSIBLE-SERVICES] \ --policy=POLICY_NAME
Substitua:
NAME é o nome do perímetro.
O nome do perímetro pode ter no máximo 50 caracteres, precisa começar com uma letra e pode conter apenas letras latinas ASCII (a-z, A-Z), números (0-9) ou sublinhados (
_
). O nome do perímetro diferencia maiúsculas de minúsculas e precisa ser exclusivo em uma política de acesso.TITLE é o título legível do perímetro.
TYPE é o tipo do perímetro. Por exemplo, um perímetro "regular" ou uma "ponte".
RESOURCES é uma lista separada por vírgulas de um ou mais números de projeto ou nomes de rede VPC. Por exemplo,
projects/12345
ou//compute.googleapis.com/projects/my-project/global/networks/vpc1
. Somente projetos e redes VPC são permitidos. Formato do projeto:projects/project_number
. Formato VPC://compute.googleapis.com/projects/project-id/global/networks/network_name
. Se você especificar projetos, somente números de projeto poderão ser usados. Não é possível usar o nome ou ID do projeto.RESTRICTED-SERVICES é uma lista separada por vírgulas de um ou mais serviços. Por exemplo,
storage.googleapis.com
oustorage.googleapis.com,bigquery.googleapis.com
.INGRESS-FILENAME é um arquivo JSON ou YAML que contém os valores de atributos de origem, identidade, projeto e serviço. Para conferir a lista de atributos de regra de entrada, consulte Referência de regras de entrada.
EGRESS-FILENAME é um arquivo JSON ou YAML que contém os valores de atributos de identidade, projeto e serviço. Para a lista de atributos de regra de saída, consulte Referência de regras de saída.
POLICY_NAME é o nome numérico da política de acesso da sua organização. Por exemplo,
330193482019
. Você precisará incluir o nome da política apenas se não tiver definido uma opção de acesso padrão.
Outras opções:
--access-levels
ou--perimeter-access-levels
serão necessários apenas se você quiser adicionar níveis de acesso ao criar o perímetro. LEVELS é uma lista separada por vírgulas de um ou mais níveis de acesso que você quer aplicar ao perímetro de serviço.Também é possível adicionar níveis de acesso depois da criação do perímetro.
--enable-vpc-accessible-services
e--vpc-allowed-services
ou--perimeter-enable-vpc-accessible-services
e--perimeter-vpc-allowed-services
são obrigatórios apenas se você quiser adicionar serviços acessíveis da VPC ao criar o perímetro. ACCESSIBLE-SERVICES é uma lista separada por vírgulas de um ou mais serviços com uma permissão de acesso que você quer conceder às redes que estão dentro do perímetro. O acesso a qualquer serviço não incluído nessa lista está impedido.Será possível tornar um serviço acessível apenas se você também protegê-lo quando configurar o perímetro.
Para incluir rapidamente todos os serviços protegidos por um perímetro, especifique
RESTRICTED-SERVICES
na lista para ACCESSIBLE-SERVICES. Por exemplo,--perimeter-vpc-allowed-services=RESTRICTED-SERVICES
.Também é possível definir serviços acessíveis da VPC depois da criação do perímetro.
Por exemplo, o comando a seguir cria um novo perímetro do modo de simulação chamado
ProdPerimeter
, que inclui projetos example-project
e
example-project2
, além de restringir as APIs do Cloud Storage e
do BigQuery.
gcloud access-context-manager perimeters \ dry-run create ProdPerimeter --perimeter-title="Production Perimeter" \ --perimeter-type="regular" \ --perimeter-resources=projects/12345,projects/67890 \ --perimeter-restricted-services=storage.googleapis.com,bigquery.googleapis.com \ --perimeter-ingress-policies=ingress.yaml \ --perimeter-egress-policies=egress.yaml \ --policy=330193482019
API
Para criar um perímetro de serviço, chame accessPolicies.servicePerimeters.create
.
POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/servicePerimeters
Em que:
- POLICY_NAME é o nome numérico da política de acesso da sua
organização. Por exemplo,
330193482019
.
Corpo da solicitação
O corpo da solicitação precisa incluir um recursoServicePerimeter
que define o perímetro de serviço.
No recurso ServicePerimeter
, especifique PERIMETER_TYPE_REGULAR
para perimeterType
.
Modo de teste
É necessário incluir o perímetro proposto como spec
e definir
useExplicitDryRunSpec
como "verdadeiro".
Corpo da resposta
Caso a chamada seja bem-sucedida, o corpo da resposta incluirá um recurso de Operation
que fornece detalhes sobre a operação POST
.
A seguir
- Saiba como testar o impacto de um perímetro de serviço pelo modo de teste.
- Saiba como gerenciar os perímetros de serviço atuais.
- Saiba como resolver problemas comuns do VPC Service Controls.
- Conclua este codelab para aprender a proteger projetos e os serviços deles usando o VPC Service Controls.