Esta página descreve como configurar políticas de autorização para o Secure Web Proxy.
Antes de começar
Consulte as páginas Visão geral do Secure Web Proxy e Visão geral da política de autorização.
-
- API Network Security
- API Network Services
- API Certificate Manager
Você precisa ter uma instância ativa do Secure Web Proxy implantada e associada a uma
GatewaySecurityPolicy. Para mais informações, consulte Implantar uma instância do Secure Web Proxy.Para configurar políticas de autorização do Secure Web Proxy, é necessário ativar uma política de inspeção TLS policy.
Criar uma política de autorização
Esta seção explica como criar diferentes tipos de políticas de autorização anexadas a uma instância do Secure Web Proxy.
Para criar uma política de autorização para o Secure Web Proxy, faça o seguinte:
- Configure um arquivo YAML que defina o destino e as regras.
- Importe o arquivo usando o
gcloud network-security authz-policies importcomando.
Política de autorização com base na identidade mTLS
O Secure Web Proxy oferece suporte à aplicação de regras de segurança com base em identidades derivadas de certificados TLS mútuos (mTLS). A aplicação de regras com base nessas identidades é particularmente útil em ambientes de confiança zero, em que o tráfego entre clientes e o proxy é protegido por mTLS. Para mais informações, consulte Política de autorização com base em principais.
O exemplo a seguir mostra uma política de autorização para uma instância do Secure Web Proxy chamada swp1. Este exemplo pressupõe que o tráfego para o proxy usa o protocolo HTTPS.
A política com o perfil REQUEST_AUTHZ exige que todo o tráfego para
example.com/mcp exija a autenticação mTLS de um
principal específico antes que o tráfego possa passar. A política
também nega todo o tráfego de saída que não se destina a
example.com/mcp.
Crie o arquivo YAML da política de autorização.
O exemplo a seguir cria um arquivo
authz-policy.yaml. A política permite o tráfego para o host e o caminho especificados somente se o cliente apresentar um certificado que corresponda ao principalSPIFFE IDdefinido.$ cat >authz-policy.yaml <<EOF name: test-authz-policy-mtls target: resources: - "projects/ PROJECT_ID /locations/ LOCATION /gateways/swp1" policyProfile: REQUEST_AUTHZ httpRules: - to: operations: - hosts: - exact: "example.com" paths: - exact: "/mcp" from: sources: - principals: - principalSelector: CLIENT_CERT_URI_SAN principal: exact: "spiffe:// PROJECT_ID .global.123.workload.id.goog/ns/ns1/sa/hellomcp" action: ALLOW EOFSubstitua:
PROJECT_ID: ID do seu Google Cloud projetoLOCATION: região da instância do Secure Web Proxy
Crie uma política de autorização e importe o arquivo YAML usando o
gcloud network-security authz-policies importcomando.gcloud beta network-security authz-policies import my-authz-policy-allow --source=authz-policy.yaml --location= LOCATIONSubstitua
LOCATIONpela região da instância do Secure Web Proxy.
Política de autorização com base em contas de serviço ou tags
É possível aplicar uma política de autorização com base em contas de serviço ou tags anexadas a vários Google Cloud recursos.
Este exemplo pressupõe que você concluiu o seguinte:
Criou uma conta de serviço e a anexou a um Google Cloud recurso.
Criou uma tag e a anexou a um Google Cloud recurso como um par de chave-valor. Ao criar uma tag, defina o flag
--purposecomoGCE_FIREWALL. As políticas de autorização exigem a finalidadeGCE_FIREWALLpara aplicar a tag.
Conta de serviço
Crie um arquivo YAML de política de autorização para permitir determinadas solicitações.
O exemplo a seguir cria um arquivo
authz-policy.yamlpara a instância do Secure Web Proxy chamadaswp1. A política está configurada para permitir solicitações de uma instância de máquina virtual (VM) do Compute Engine com a conta de serviçomy-sa-123@56788.iam.gserviceaccount.compara acessar o caminho example1.com/url1.$ cat >authz-policy.yaml <<EOF name: my-authz-policy-allow target: resources: - "projects/PROJECT_ID/locations/ LOCATION /gateways/swp1" policyProfile: REQUEST_AUTHZ httpRules: - from: sources: - resources: - iamServiceAccount: exact: "my-sa-123@56788.iam.gserviceaccount.com" to: operations: - hosts: - exact: "example1.com" paths: - prefix: "/url1" action: ALLOW EOFSubstitua:
PROJECT_ID: ID do seu Google Cloud projetoLOCATION: região da instância do Secure Web Proxy
Crie uma política de autorização e importe o arquivo YAML usando o
gcloud network-security authz-policies importcomando.O comando de exemplo a seguir mostra como importar o arquivo de política criado anteriormente e criar uma política de autorização:
gcloud network-security authz-policies import my-authz-policy-allow --source=authz-policy.yaml --location= LOCATIONSubstitua
LOCATIONpela região da instância do Secure Web Proxy.
Tag
Crie um arquivo YAML de política de autorização para permitir determinadas solicitações.
O exemplo a seguir cria um arquivo
authz-policy-tag.yamlpara a instância do Secure Web Proxy chamadaswp1. A política permite apenas as solicitações originadas de um Google Cloud recurso com um valor de tag deTAG_VALUE_PERMANENT_IDpara acessar o caminho do URL example1.com/url1.$ cat >authz-policy-tag.yaml <<EOF name: my-authz-policy-tag-allow target: resources: - "projects/PROJECT_ID/locations/ LOCATION /gateways/ GATEWAY_NAME " policyProfile: REQUEST_AUTHZ httpRules: - from: sources: - resources: - tagValueIdSet: ids: ["TAG_VALUE_PERMANENT_ID"] to: operations: - hosts: - exact: "example1.com" paths: - exact: "/url1" action: ALLOW EOFSubstitua:
PROJECT_ID: ID do seu Google Cloud projetoLOCATION: região da instância do Secure Web ProxyGATEWAY_NAME: nome do gateway do Secure Web ProxyTAG_VALUE_PERMANENT_ID: ID permanente de um valor de tag, comotagValues/123456789012
Crie uma política de autorização e importe o arquivo YAML usando o
gcloud network-security authz-policies importcomando.O comando de exemplo a seguir importa o arquivo de política criado anteriormente e cria uma política de autorização na região especificada Google Cloud :
gcloud network-security authz-policies import my-authz-policy-tag-allow --source=authz-policy-tag.yaml --location= LOCATIONSubstitua
LOCATIONpela região da instância do Secure Web Proxy.
Política de autorização para delegar decisões de autorização
Para decisões de autorização complexas que não podem ser expressas usando regras ALLOW ou DENY padrão, é possível criar uma política de autorização com uma ação CUSTOM. Em seguida, você pode delegar suas decisões de autorização
para extensões de autorização
(Service Extensions).
Ao configurar uma política com uma ação CUSTOM, o Secure Web Proxy descarrega os metadados ou o payload da solicitação para Service Extensions. Dependendo da resposta das Service Extensions, o proxy permite ou rejeita o tráfego.
O Secure Web Proxy oferece suporte aos seguintes tipos de delegações:
Delegar decisões de autorização de solicitação para Service Extensions: é possível usar uma política de autorização configurada com uma ação
CUSTOMe um perfilREQUEST_AUTHZpara delegar decisões com base em metadados e cabeçalhos de solicitação. Nesse modo, a decisão de acesso é delegada a uma extensão de autorização. É possível usar esse modo para verificar identidades e permissões.Delegar decisões de autorização de conteúdo para Service Extensions: é possível usar uma política de autorização com uma ação
CUSTOMe umCONTENT_AUTHZperfil para delegar decisões a uma extensão de autorização com base no payload de dados real da solicitação. Esse modo permite a inspeção de conteúdo detalhada e a aplicação de segurança, permitindo que você verifique informações sensíveis ou padrões maliciosos integrando-se a serviços como o Model Armor.
Limitações
Ao implementar políticas de autorização para o Secure Web Proxy, as seguintes limitações se aplicam:
Restrições de destino e conectividade: as extensões de autorização para o Secure Web Proxy não oferecem suporte ao Identity-Aware Proxy (IAP) como um destino direto.
Conflito e compatibilidade de políticas: se você tiver uma política de segurança de gateway com regras de segurança atuais, não será necessário removê-las. O Secure Web Proxy ignora essas regras quando você aplica uma política de autorização à instância.
Requisitos de protocolo e inspeção: para configurar políticas de autorização do Secure Web Proxy, é necessário ativar a inspeção TLS.