Restrinja as versões de TLS
Esta página descreve como pode impedir o acesso a Google Cloud recursos recusando pedidos feitos através do Transport Layer Security (TLS) 1.0 ou 1.1.
Vista geral
Google Cloud Suporta várias versões do protocolo TLS. Para
cumprir os requisitos de conformidade, pode querer recusar pedidos de handshake de
clientes que usam versões TLS anteriores. Para o fazer, pode usar a restrição da gcp.restrictTLSVersion
política da organização.
A restrição gcp.restrictTLSVersion
pode ser aplicada a organizações, pastas ou projetos na hierarquia de recursos.
A restrição usa uma lista de negações, que nega valores explícitos e permite todos os outros. Ocorre um erro se tentar usar uma lista de autorizações.
Devido ao comportamento da avaliação da hierarquia de políticas da organização, a restrição da versão de TLS aplica-se ao nó de recurso especificado e a todos os respetivos filhos. Por exemplo, se negar a versão 1.0 do TLS para uma organização, esta também é negada para todas as pastas e projetos (elementos secundários) que descendem dessa organização.
Pode substituir a restrição da versão de TLS herdada atualizando a política da organização num recurso secundário. Por exemplo, se a política da sua organização negar o TLS 1.0 ao nível da organização, pode remover a restrição para uma pasta secundária definindo uma política da organização separada nessa pasta. Se a pasta tiver filhos, a política da pasta também é aplicada a cada recurso filho devido à herança de políticas.
Antes de começar
- Para definir, alterar ou eliminar uma política de organização, primeiro, tem de lhe ser concedida a função de gestão de identidade e de acesso (IAM) de administrador da política de organização (
roles/orgpolicy.policyAdmin
).
Restrinja uma versão de TLS
Para restringir uma ou mais versões do TLS, conclua os seguintes passos:
Consola
Abra a página Políticas de organização na Google Cloud consola.
Selecione o selecionador de projetos na parte superior da página.
No seletor de projetos, selecione o recurso para o qual quer definir a política de organização.
Selecione a restrição Restringir versão TLS na lista da página Políticas da organização.
Para atualizar a política da organização para este recurso, clique em Editar.
Na página Editar, selecione Personalizar.
Em Aplicação de políticas, selecione uma opção de aplicação:
Para unir e avaliar as políticas da sua organização em conjunto, selecione Unir com principal. Para mais informações sobre a herança e a hierarquia de recursos, consulte o artigo Compreender a avaliação da hierarquia.
Para substituir as políticas herdadas de um recurso principal, selecione Substituir.
Clique em Adicionar regra.
Em Valores da política, o valor predefinido é Recusar tudo. Em alternativa, selecione Personalizado.
Em Tipo de política, selecione Recusar.
Em Valores personalizados, introduza uma versão de TLS a recusar. Os seguintes valores são valores personalizados válidos:
TLS_VERSION_1
para TLS 1.0TLS_VERSION_1_1
para TLS 1.1
Se estiver a restringir mais do que uma versão do TLS, clique em Adicionar valor e introduza o valor no campo adicional.
Para terminar e aplicar a política de organização, clique em Guardar.
gcloud
Use o comando gcloud org-policies set-policy
para definir uma política da organização no recurso:
gcloud org-policies set-policy POLICY_PATH
POLICY_PATH é o caminho completo para o ficheiro de política da organização, que deve ter o seguinte aspeto se usar o formato YAML:
name: RESOURCE_TYPE/RESOURCE_ID/policies/gcp.restrictTLSVersion
spec:
rules:
- values:
deniedValues:
- TLS_VERSION_1
- TLS_VERSION_1_1
Substitua pelo seguinte:
RESOURCE_TYPE
éorganizations
,folders
ouprojects
.RESOURCE_ID
é o ID da organização, o ID da pasta, o ID do projeto ou o número do projeto, consoante o tipo de recurso especificado emRESOURCE_TYPE
.
Execute o seguinte comando para verificar se a sua política foi aplicada:
gcloud org-policies describe gcp.restrictTLSVersion --RESOURCE_TYPE=RESOURCE_ID --effective
Substitua pelo seguinte:
RESOURCE_TYPE
éorganization
,folder
ouproject
.RESOURCE_ID
é o ID da organização, o ID da pasta, o ID do projeto ou o número do projeto, consoante o tipo de recurso especificado emRESOURCE_TYPE
.
Teste a política
A restrição da política de restrição da versão TLS pode ser testada para qualquer serviço no âmbito. O comando curl de exemplo seguinte valida a restrição da versão do TLS para um contentor do Cloud Storage.
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/GCS_BUCKET_NAME/o" \ --tlsvTLS_VERSION --tls-max TLS_VERSION --ciphers DEFAULT@SECLEVEL=0
Não existe espaço entre --tlsv
e o valor. Por exemplo: --tlsv1.1
Substitua pelo seguinte:
GCS_BUCKET_NAME
é o nome de um contentor do Cloud Storage no seu projeto, comomybucketname
.O
TLS_VERSION
é uma versão do TLS, como1.0
ou1.1
, que é recusada na política configurada.
O exemplo de pedido curl
seguinte mostra GCS_BUCKET_NAME definido como mybucketname
e TLS_VERSION definido como 1.1
:
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/mybucketname/o" \ --tlsv1.1 --tls-max 1.1 --ciphers DEFAULT@SECLEVEL=0
Se a política da organização estiver configurada para restringir TLS_VERSION_X
, qualquer tentativa de aceder a recursos com TLS_VERSION_X
no projeto restrito por políticas no exemplo de comando falha. É devolvida uma mensagem de erro que
descreve o motivo desta falha.
Request is disallowed by organization's constraints/gcp.restrictTLSVersion constraint for 'projects/PROJECT_NUMBER' to use service 'SERVICE_NAME.googleapis.com' by violated TLS version `TLS_VERSION_X`
Esta saída inclui os seguintes valores:
PROJECT_NUMBER
: o número do projeto que aloja o recurso referido no comando anterior.SERVICE_NAME
: o nome do serviço no âmbito bloqueado pela política de restrição do TLS.
Serviços suportados
A restrição da versão TLS é suportada por todas as APIs de recursos que tenham um cabeçalho assinado pelo front-end da Google (GFE). Google Cloud
Serviços não suportados
A restrição da política da organização da versão do TLS não é aplicável aos seguintes serviços:
- Apigee
- App Engine (
*.appspot.com
) - Funções do Cloud Run (
*.cloudfunctions.net
), - Cloud Run (
*.run.app
) - Private Service Connect
- Domínios personalizados
Para restringir as versões do TLS para estes serviços, use o Cloud Load Balancing
juntamente com as políticas de SSL. Também pode usar a restrição constraints/compute.requireSslPolicy
predefinida, juntamente com restrições personalizadas, para as políticas SSL para aplicar restrições de versão do TLS e de conjunto de cifras aos seus equilibradores de carga.
O que se segue?
- Saiba que produtos são suportados para cada pacote de controlos.