Segurança do Private Service Connect

Esta página oferece uma vista geral da segurança do Private Service Connect.

O Private Service Connect oferece vários controlos para gerir o acesso aos recursos do Private Service Connect. Pode controlar quem pode implementar recursos do Private Service Connect, se é possível estabelecer ligações entre consumidores e produtores, e que tráfego de rede tem autorização para aceder a essas ligações.

Estes controlos são implementados através dos seguintes elementos:

A Figura 1 descreve como estes controlos interagem nos lados do consumidor e do produtor de uma ligação do Private Service Connect.

Figura 1. As autorizações da IAM, as políticas da organização, as listas de autorizações e rejeições, e as regras de firewall da VPC funcionam em conjunto para ajudar a proteger os lados do consumidor e do produtor de uma ligação do Private Service Connect (clique para aumentar).

IAM

Recursos: todos

Cada recurso do Private Service Connect é regido por uma ou mais autorizações do IAM. Estas autorizações permitem que os administradores apliquem os principais do IAM que podem implementar recursos do Private Service Connect.

O IAM não rege que principais do IAM podem estabelecer ligação ou usar uma ligação do Private Service Connect. Para controlar que pontos finais ou back-ends podem estabelecer uma ligação com um serviço, use políticas organizacionais ou listas de aceitação de consumidores. Para controlar que clientes podem enviar tráfego para recursos do Private Service Connect, use firewalls de VPC ou políticas de firewall.

Para mais informações sobre as autorizações de IAM, consulte o artigo Autorizações de IAM.

Para obter informações sobre as autorizações necessárias para criar um ponto final, consulte o artigo Crie um ponto final.

Para obter informações sobre as autorizações necessárias para criar uma associação de serviço, consulte o artigo Publique um serviço com aprovação explícita.

Estados da ligação

Recursos: pontos finais, back-ends e anexos de serviços

Os pontos finais, os back-ends e as associações de serviços do Private Service Connect têm estados de ligação que descrevem o estado das respetivas ligações. Os recursos de consumidor e produtor que formam os dois lados de uma associação têm sempre o mesmo estado. Pode ver os estados da ligação quando vê os detalhes do ponto final, descreve um back-end ou vê os detalhes de um serviço publicado.

A tabela seguinte descreve os estados possíveis.

Estado da ligação Descrição
Aceite A ligação do Private Service Connect está estabelecida. As duas redes VPC têm conetividade e a ligação está a funcionar normalmente.
Pendente

A ligação do Private Service Connect não está estabelecida e o tráfego de rede não pode viajar entre as duas redes. Uma associação pode ter este estado pelos seguintes motivos:

As ligações bloqueadas por estes motivos permanecem no estado pendente indefinidamente até que o problema subjacente seja resolvido.

Rejeitado

A ligação do Private Service Connect não está estabelecida. O tráfego de rede não pode viajar entre as duas redes. Uma associação pode ter este estado pelos seguintes motivos:

Requer atenção Existe um problema do lado do produtor da ligação. Algum tráfego pode fluir entre as duas redes, mas algumas ligações podem não funcionar. Por exemplo, a sub-rede NAT do produtor pode estar esgotada e não conseguir atribuir endereços IP para novas ligações.
Fechado

A associação do serviço foi eliminada e a ligação do Private Service Connect foi fechada. O tráfego de rede não pode viajar entre as duas redes.

Uma ligação fechada é um estado terminal. Para restaurar a ligação, tem de recriar o anexo de serviço e o ponto final ou o back-end.

Configuração da associação do serviço

Pode controlar os consumidores que podem estabelecer ligação a uma associação de serviço através das seguintes funcionalidades.

Preferência de ligação

Recursos: pontos finais e backends

Cada anexo de serviço tem uma preferência de ligação que controla se as ligações são aceites automaticamente.

  • Aceitar automaticamente todas as ligações. A associação de serviço aceita automaticamente todos os pedidos de ligação de entrada de qualquer consumidor.
  • Aceitar explicitamente ligações de consumidores selecionados. O anexo de serviço só aceita pedidos de ligação de entrada se o consumidor estiver na lista de aceitação de consumidores do anexo de serviço. Pode especificar consumidores por projeto, rede VPC ou ponto final do Private Service Connect individual (Pré-visualização). Não pode incluir diferentes tipos de consumidores na mesma lista de aceitação ou rejeição de consumidores.

Para qualquer preferência de ligação, as ligações aceites podem ser substituídas e rejeitadas por uma política da organização que bloqueia as ligações recebidas.

Recomendamos que aceite explicitamente as associações para consumidores selecionados. Aceitar automaticamente todas as ligações pode ser adequado se controlar o acesso dos consumidores por outros meios e quiser ativar o acesso permissivo ao seu serviço.

Listas de aceitação e rejeição

Recursos: pontos finais e backends

As listas de aceitação de consumidores e as listas de rejeição de consumidores são uma funcionalidade de segurança dos anexos de serviços. Estas listas permitem que os produtores de serviços especifiquem que consumidores podem estabelecer ligações do Private Service Connect aos respetivos serviços. Quando um anexo de serviço está configurado para aprovação explícita, só é aceite uma nova ligação se o consumidor estiver na lista de aceitação e não na lista de rejeição. As atualizações às listas de consumidores só afetam novas associações, a menos que a opção Conciliação de associações esteja ativada.

As listas de aceitação e rejeição de consumidores permitem-lhe especificar consumidores de uma das seguintes formas:

  • Projeto
  • Rede da VPC
  • Ponto final do Private Service Connect (pré-visualização)

    Este método não se aplica a back-ends do Private Service Connect.

Se adicionar o mesmo consumidor às listas de aceitação e rejeição, esse consumidor fica bloqueado e não pode estabelecer ligação ao anexo de serviço. A especificação de consumidores por pasta não é suportada.

Ambas as listas de consumidores de uma associação de serviço têm de conter o mesmo tipo de consumidor. Por exemplo, se adicionar um projeto a uma lista de aceitação, não pode adicionar uma rede VPC nem um URI de ponto final a nenhuma das listas, a menos que substitua o projeto na lista de aceitação pelo novo tipo de consumidor.

Se quiser publicar um serviço que aceite diferentes tipos de consumidores, pode criar vários anexos de serviços que se ligam ao mesmo serviço. Cada anexo de serviço pode ser configurado com a sua própria preferência de ligação e listas de consumidores.

Pode alterar o tipo de consumidor em listas de consumidores sem interromper as associações, mas tem de fazer a alteração numa única atualização. Caso contrário, a operação falha.

Existem limites para o número de consumidores que pode adicionar às listas de aceitação e rejeição:

  • Pode adicionar um máximo de 5000 valores à lista de aceitação de consumidores.
  • Pode adicionar um máximo de 64 valores à lista de rejeição de consumidores.

As listas de consumidores controlam se um ponto final ou um back-end pode estabelecer ligação a um serviço publicado, mas não controlam quem pode enviar pedidos para esse ponto final. Por exemplo, suponhamos que um consumidor tem uma rede de VPC partilhada com dois projetos de serviço associados. Se um serviço publicado tiver service-project1 na lista de aceitação de consumidores e service-project2 na lista de rejeição de consumidores, aplica-se o seguinte:

  • Um consumidor em service-project1 pode criar um ponto final que se liga ao serviço publicado.
  • Um consumidor em service-project2 não pode criar um ponto final que se ligue ao serviço publicado.
  • Um cliente em service-project2 pode enviar pedidos para o ponto final em service-project1, se não existirem regras ou políticas de firewall que impeçam esse tráfego.

Quando atualiza uma lista de aceitação ou rejeição de consumidores, o efeito nas associações existentes varia consoante a reconciliação de associações esteja ativada ou não. Para mais informações, consulte o artigo Conciliação de associações.

Para ver informações sobre como criar uma nova associação de serviço com listas de aceitação ou rejeição de consumidores, consulte o artigo Publique um serviço com aprovação explícita do projeto.

Para ver informações sobre como atualizar as listas de aceitação ou rejeição de consumidores, consulte o artigo Faça a gestão dos pedidos de acesso a um serviço publicado.

Limites de ligação

Recursos: pontos finais e backends

As listas de aceitação de consumidores têm limites de associação. Estes limites definem o número total de ligações de back-end e de pontos finais do Private Service Connect que uma associação de serviço pode aceitar do projeto consumidor ou da rede VPC especificados. A especificação de limites de ligação para listas de aceitação baseadas em pontos finais do Private Service Connect não tem efeito, porque apenas um ponto final pode corresponder a um determinado URI.

Os produtores podem usar limites de ligação para impedir que os consumidores individuais esgotem os endereços IP ou as quotas de recursos na rede VPC do produtor. Cada ligação do Private Service Connect aceite é subtraída ao limite configurado para um projeto ou uma rede VPC do consumidor. Os limites são definidos quando cria ou atualiza listas de aceitação de consumidores. Pode ver as associações de um anexo de serviço quando descreve um anexo de serviço.

As associações propagadas não contam para estes limites.

Por exemplo, considere um caso em que um anexo de serviço tem uma lista de aceitação de consumidores que inclui project-1 e project-2, ambos com um limite de uma ligação. O projeto project-1 pede duas associações, o projeto project-2 pede uma associação e o projeto project-3 pede uma associação. Uma vez que o project-1 tem um limite de uma ligação, a primeira ligação é aceite e a segunda permanece pendente. A ligação de project-2 é aceite e a ligação de project-3 permanece pendente. A segunda associação de project-1 pode ser aceite aumentando o limite para project-1. Se project-3 for adicionado à lista de aceitação do consumidor, essa associação passa de pendente para aceite.

Políticas da organização

As políticas da organização permitem-lhe controlar de forma abrangente que projetos podem estabelecer ligação a redes VPC ou organizações através do Private Service Connect.

As políticas organizacionais descritas nesta página podem bloquear ou rejeitar novas ligações do Private Service Connect, mas não afetam as ligações existentes.

Uma política da organização aplica-se aos descendentes do recurso ao qual se refere de acordo com a avaliação da hierarquia. Por exemplo, uma política da organização que restringe o acesso a uma organização também se aplica às pastas, aos projetos e aos recursos subordinados da organização. Google Cloud Da mesma forma, listar uma organização como um valor permitido também permite o acesso aos elementos secundários dessa organização.

Para mais informações acerca das políticas de organização, consulte o artigo Políticas de organização.

Políticas da organização do lado do consumidor

Pode usar restrições de listas para controlar a implementação de pontos finais e backends. Se um ponto final ou um back-end for bloqueado por uma política da organização do consumidor, a criação do recurso falha.

  • Use a restrição de lista restrictPrivateServiceConnectProducer para controlar a que pontos finais e back-ends de anexos de serviços se podem ligar com base na organização produtora.
  • Use a restrição de lista disablePrivateServiceConnectCreationForConsumers para controlar a implementação de pontos finais com base no tipo de ligação do ponto final. Pode bloquear a implementação de pontos finais que se ligam às APIs Google ou bloquear a implementação de pontos finais que se ligam a serviços publicados.

Impedir que os pontos finais ou os backends se liguem a organizações produtoras

Recursos: pontos finais e backends

As políticas da organização que usam a restrição de lista com valores permitidos impedem que os pontos finais e os back-ends se liguem a anexos de serviços, a menos que os anexos de serviços estejam associados a um dos valores permitidos da política.restrictPrivateServiceConnectProducer Uma política deste tipo bloqueia as ligações, mesmo que sejam permitidas pela lista de aceitação de consumidores do anexo de serviço.

Por exemplo, a seguinte política da organização aplica-se a uma organização denominada Org-A:

name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectProducer
spec:
  rules:
    – values:
        allowedValues:
        - under:organizations/ORG_A_NUMBER
        - under:organizations/433637338589

A Figura 2 mostra o resultado desta política de organização. A política tem valores permitidos para Org-A (ORG_A_NUMBER) e Google-org (433637338589). Os pontos finais e os back-ends criados em Org-A podem comunicar com anexos de serviços em Org-A, mas não com anexos de serviços em Org-B.

Figura 2. Uma política de organização permite que o ponto final psc-1 se ligue à associação de serviço sa-1 e bloqueia a ligação de psc-3 a associações de serviço em Org-B. Os pontos finais e os back-ends em Org-A podem estabelecer ligação a associações de serviços pertencentes à Google (clique para aumentar).

Pode permitir que instâncias dos seguintes tipos de recursos criem pontos finais com a restrição compute.restrictPrivateServiceConnectProducer:

  • Organizações
  • Pastas
  • Projetos

Para obter informações sobre como criar uma política da organização que usa a restrição compute.restrictPrivateServiceConnectProducer, consulte o artigo Bloqueie a ligação de pontos finais e back-ends a anexos de serviços não autorizados.

Bloqueie a criação de pontos finais por tipo de ligação

Recursos afetados: pontos finais

Pode usar a restrição disablePrivateServiceConnectCreationForConsumers list para bloquear a criação de pontos finais com base no facto de estarem a estabelecer ligação às APIs Google ou a serviços publicados (associações de serviços).

Para obter informações sobre como criar uma política da organização que use a restrição disablePrivateServiceConnectCreationForConsumers, consulte o artigo Impedir que os consumidores implementem pontos finais por tipo de ligação.

Políticas da organização do lado do produtor

Recursos afetados: pontos finais e backends

Pode usar políticas da organização com a compute.restrictPrivateServiceConnectConsumer restrição de lista para controlar que pontos finais e back-ends se podem ligar a associações de serviços do Private Service Connect numa organização ou num projeto do produtor. Se um ponto final ou um back-end for rejeitado por uma política da organização do produtor, a criação do recurso é bem-sucedida, mas a ligação entra no estado de rejeição.

O controlo do acesso desta forma é semelhante à utilização de listas de aceitação e rejeição, exceto que as políticas da organização aplicam-se a todas as associações de serviços num projeto ou numa organização, em vez de a uma associação de serviços individual.

Pode usar políticas da organização e listas de aceitação em conjunto, com as políticas da organização a aplicar o acesso a um serviço gerido de forma abrangente e as listas de aceitação a controlar o acesso a anexos de serviços individuais.

As políticas de organização que usam a restrição compute.restrictPrivateServiceConnectConsumer rejeitam ligações de pontos finais e back-ends, a menos que o ponto final ou o back-end esteja associado a um dos valores permitidos da política. Uma política deste tipo rejeita as ligações, mesmo que sejam permitidas por uma lista de permissões.

Por exemplo, a seguinte política da organização aplica-se a uma organização denominada Org-A:

name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectConsumer
spec:
  rules:
    - values:
        allowedValues:
        - under:organizations/ORG_A_NUMBER

A Figura 3 mostra o resultado desta política de organização. A política tem um valor permitido para Org-A (ORG_A_NUMBER). Os pontos finais noutras redes VPC em Org-A podem ligar-se a anexos de serviços em Org-A. Os pontos finais no Org-B que tentam estabelecer ligação são rejeitados.

Figura 3. Uma política organizacional permite que o psc-1 se ligue ao sa-1, ao mesmo tempo que impede que o psc-2 se ligue (clique para ampliar).

Uma política da organização aplica-se aos descendentes do recurso ao qual se refere de acordo com a avaliação da hierarquia. Por exemplo, uma política da organização que restringe o acesso a uma organização também se aplica às pastas, aos projetos e aos recursos subordinados da organização. Google Cloud Da mesma forma, listar uma organização como um valor permitido também permite o acesso aos elementos secundários dessa organização.

Pode permitir que instâncias dos seguintes tipos de recursos criem pontos finais com a restrição restrictPrivateServiceConnectConsumer:

  • Organizações
  • Pastas
  • Projetos

Para mais informações sobre a utilização de políticas de organização com produtores de serviços, consulte o artigo Políticas de organização do produtor.

Interação entre as listas de aceitação de consumidores e as políticas da organização

As listas de aceitação de consumidores e as políticas da organização controlam se é possível estabelecer uma ligação entre dois recursos do Private Service Connect. As ligações são bloqueadas se uma lista de aceitação ou uma política da organização negar a ligação.

Por exemplo, uma política com a restrição restrictPrivateServiceConnectConsumer pode ser configurada para bloquear ligações de fora da organização do produtor. Mesmo que um anexo de serviço esteja configurado para aceitar automaticamente todas as ligações, a política da organização continua a bloquear as ligações provenientes de fora da organização do produtor. Recomendamos que use as listas de aceitação e as políticas da organização em conjunto para ajudar a fornecer segurança em camadas.

Firewalls

Recursos: todos

Pode usar regras de firewall e políticas de firewall da VPC para controlar o acesso ao nível da rede aos recursos do Private Service Connect.

Para mais informações sobre as regras de firewall da VPC em geral, consulte o artigo Regras de firewall da VPC.

Para mais informações sobre a utilização de regras da firewall da VPC para limitar o acesso a pontos finais ou back-ends numa rede VPC de consumidor, consulte o artigo Utilize regras da firewall para limitar o acesso a pontos finais ou back-ends.