REST Resource: projects.locations.serverTlsPolicies

Recurso: ServerTlsPolicy

ServerTlsPolicy é um recurso que especifica como um servidor deve autenticar os pedidos recebidos. Este recurso em si não afeta a configuração, a menos que esteja associado a um recurso de proxy HTTPS de destino ou de seletor de configuração de ponto final.

A ServerTlsPolicy no formato aceite pelos equilibradores de carga de aplicações só pode ser anexada ao TargetHttpsProxy com um esquema de equilíbrio de carga EXTERNAL, EXTERNAL_MANAGED ou INTERNAL_MANAGED. As ServerTlsPolicies compatíveis com o Traffic Director podem ser anexadas a EndpointPolicy e TargetHttpsProxy com o esquema de equilíbrio de carga do Traffic Director INTERNAL_SELF_MANAGED.

Representação JSON
{
  "name": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "allowOpen": boolean,
  "serverCertificate": {
    object (CertificateProvider)
  },
  "mtlsPolicy": {
    object (MTLSPolicy)
  }
}
Campos
name

string

Obrigatório. Nome do recurso ServerTlsPolicy. Corresponde ao padrão projects/*/locations/{location}/serverTlsPolicies/{serverTlsPolicy}

description

string

Descrição de texto livre do recurso.

createTime

string (Timestamp format)

Apenas saída. A data/hora em que o recurso foi criado.

Usa RFC 3339, em que o resultado gerado é sempre normalizado em Z e usa 0, 3, 6 ou 9 dígitos fracionários. Também são aceites desvios diferentes de "Z". Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. A data/hora em que o recurso foi atualizado.

Usa RFC 3339, em que o resultado gerado é sempre normalizado em Z e usa 0, 3, 6 ou 9 dígitos fracionários. Também são aceites desvios diferentes de "Z". Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

labels

map (key: string, value: string)

Conjunto de etiquetas associadas ao recurso.

Um objeto que contém uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

allowOpen

boolean

Este campo aplica-se apenas a políticas do Traffic Director. Tem de ser definido como falso para políticas do equilibrador de carga de aplicações.

Determina se o servidor permite ligações de texto simples. Se for definida como verdadeira, o servidor permite ligações de texto simples. Por predefinição, está definido como falso. Esta definição não é exclusiva de outros modos de encriptação. Por exemplo, se allowOpen e mtlsPolicy estiverem definidos, o servidor permite ligações de texto simples e mTLS. Consulte a documentação de outros modos de encriptação para confirmar a compatibilidade.

Considere usá-lo se quiser atualizar no local a sua implementação para TLS enquanto tem tráfego misto de TLS e não TLS a atingir a porta :80.

serverCertificate

object (CertificateProvider)

Opcional se a política for usada com o Traffic Director. Para balanceadores de carga de aplicações, tem de estar vazio.

Define um mecanismo para aprovisionar a identidade do servidor (chaves públicas e privadas). Não pode ser combinado com allowOpen, uma vez que não é suportado um modo permissivo que permita texto simples e TLS.

mtlsPolicy

object (MTLSPolicy)

Este campo é obrigatório se a política for usada com equilibradores de carga de aplicações. Este campo pode estar vazio para o Traffic Director.

Define um mecanismo para aprovisionar certificados de validação de pares para a autenticação ponto a ponto (TLS mútuo – mTLS). Se não for especificado, o certificado de cliente não é pedido. A ligação é tratada como TLS e não como mTLS. Se allowOpen e mtlsPolicy estiverem definidos, o servidor permite ligações de texto simples e mTLS.

MTLSPolicy

Especificação da MTLSPolicy.

Representação JSON
{
  "clientValidationMode": enum (ClientValidationMode),
  "clientValidationCa": [
    {
      object (ValidationCA)
    }
  ],
  "clientValidationTrustConfig": string,
  "tier": enum (Tier)
}
Campos
clientValidationMode

enum (ClientValidationMode)

Quando o cliente apresenta um certificado inválido ou nenhum certificado ao equilibrador de carga, o clientValidationMode especifica como a ligação do cliente é processada.

Obrigatório se a política for usada com os equilibradores de carga de aplicações. Para o Traffic Director, tem de estar vazio.

clientValidationCa[]

object (ValidationCA)

Obrigatório se a política for usada com o Traffic Director. Para balanceadores de carga de aplicações, tem de estar vazio.

Define o mecanismo para obter o certificado da autoridade de certificação para validar o certificado de cliente.

clientValidationTrustConfig

string

Referência à TrustConfig do espaço de nomes certificatemanager.googleapis.com.

Se for especificado, a validação da cadeia é realizada em relação aos certificados configurados no TrustConfig fornecido.

Permitido apenas se a política for usada com equilibradores de carga de aplicações.

tier

enum (Tier)

Nível de TLS mútuo.

Permitido apenas se a política for usada com equilibradores de carga de aplicações.

ClientValidationMode

Modo de validação de certificado TLS mútuo.

Enumerações
CLIENT_VALIDATION_MODE_UNSPECIFIED Não permitido.
ALLOW_INVALID_OR_MISSING_CLIENT_CERT Permitir a ligação mesmo que a validação da cadeia de certificados do certificado de cliente tenha falhado ou não tenha sido apresentado nenhum certificado de cliente. A prova de posse da chave privada é sempre verificada se o certificado do cliente tiver sido apresentado. Este modo requer que o back-end implemente o processamento de dados extraídos de um certificado de cliente para autenticar o par ou rejeitar ligações se a impressão digital do certificado de cliente estiver em falta.
REJECT_INVALID

Exigir um certificado de cliente e permitir a ligação ao back-end apenas se a validação do certificado de cliente for aprovada.

Se estiver definido, requer uma referência a TrustConfig não vazio especificado em clientValidationTrustConfig.

Nível

Nível de TLS mútuo para XLB.

Enumerações
TIER_UNSPECIFIED Se o nível não for especificado no pedido, o sistema escolhe um valor predefinido, atualmente o nível STANDARD.
STANDARD Nível predefinido. Principalmente para fornecedores de software (comunicação de serviço para serviço/API).
ADVANCED Nível avançado. Para clientes em ambientes fortemente regulamentados, especificar chaves mais longas e cadeias de certificados complexas.

Métodos

create

Cria uma nova ServerTlsPolicy num determinado projeto e localização.

delete

Elimina uma única ServerTlsPolicy.

get

Obtém detalhes de uma única ServerTlsPolicy.

list

Apresenta ServerTlsPolicies num determinado projeto e localização.

patch

Atualiza os parâmetros de uma única ServerTlsPolicy.