REST Resource: projects.locations.serverTlsPolicies

Recurso: ServerTlsPolicy

ServerTlsPolicy es un recurso que especifica cómo debe autenticar un servidor las solicitudes entrantes. Este recurso no afecta a la configuración a menos que se adjunte a un proxy HTTPS de destino o a un recurso de selector de configuración de endpoint.

ServerTlsPolicy en el formato aceptado por los balanceadores de carga de aplicaciones solo se puede adjuntar a TargetHttpsProxy con un esquema de balanceo de carga EXTERNAL, EXTERNAL_MANAGED o INTERNAL_MANAGED. Las políticas ServerTlsPolicy compatibles con Traffic Director se pueden asociar a EndpointPolicy y TargetHttpsProxy con el esquema de balanceo de carga INTERNAL_SELF_MANAGED de Traffic Director.

Representación JSON
{
  "name": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "allowOpen": boolean,
  "serverCertificate": {
    object (CertificateProvider)
  },
  "mtlsPolicy": {
    object (MTLSPolicy)
  }
}
Campos
name

string

Obligatorio. Nombre del recurso ServerTlsPolicy. Coincide con el patrón projects/*/locations/{location}/serverTlsPolicies/{serverTlsPolicy}

description

string

Descripción de texto libre del recurso.

createTime

string (Timestamp format)

Solo de salida. Marca de tiempo de creación del recurso.

Usa RFC 3339, donde la salida generada siempre se normaliza con Z y usa 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan otros desplazamientos distintos de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo de salida. Marca de tiempo de la última actualización del recurso.

Usa RFC 3339, donde la salida generada siempre se normaliza con Z y usa 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan otros desplazamientos distintos de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

labels

map (key: string, value: string)

Conjunto de etiquetas asociadas al recurso.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }

allowOpen

boolean

Este campo solo se aplica a las políticas de Traffic Director. Debe tener el valor false en las políticas de balanceadores de carga de aplicaciones.

Determina si el servidor permite conexiones de texto sin formato. Si se le asigna el valor true, el servidor permite conexiones de texto sin formato. El valor predeterminado es "false". Este ajuste no es exclusivo de otros modos de cifrado. Por ejemplo, si se definen allowOpen y mtlsPolicy, el servidor permite tanto conexiones de texto sin cifrar como conexiones mTLS. Consulta la documentación de otros modos de cifrado para confirmar la compatibilidad.

Te recomendamos que lo uses si quieres actualizar tu implementación a TLS sin cambiarla y, al mismo tiempo, tener tráfico mixto TLS y no TLS en el puerto :80.

serverCertificate

object (CertificateProvider)

Es opcional si la política se va a usar con Traffic Director. En el caso de los balanceadores de carga de aplicaciones, debe estar vacío.

Define un mecanismo para aprovisionar la identidad del servidor (claves públicas y privadas). No se puede combinar con allowOpen, ya que no se admite un modo permisivo que permita tanto texto sin formato como TLS.

mtlsPolicy

object (MTLSPolicy)

Este campo es obligatorio si la política se usa con balanceadores de carga de aplicaciones. Este campo puede estar vacío en Traffic Director.

Define un mecanismo para aprovisionar certificados de validación de pares para la autenticación de punto a punto (TLS mutuo o mTLS). Si no se especifica, no se solicitará el certificado de cliente. La conexión se trata como TLS y no como mTLS. Si se definen allowOpen y mtlsPolicy, el servidor permite tanto conexiones de texto sin formato como conexiones mTLS.

MTLSPolicy

Especificación de MTLSPolicy.

Representación JSON
{
  "clientValidationMode": enum (ClientValidationMode),
  "clientValidationCa": [
    {
      object (ValidationCA)
    }
  ],
  "clientValidationTrustConfig": string,
  "tier": enum (Tier)
}
Campos
clientValidationMode

enum (ClientValidationMode)

Cuando el cliente presenta un certificado no válido o ningún certificado al balanceador de carga, clientValidationMode especifica cómo se gestiona la conexión del cliente.

Obligatorio si la política se va a usar con balanceadores de carga de aplicaciones. En el caso de Traffic Director, debe estar vacío.

clientValidationCa[]

object (ValidationCA)

Obligatorio si la política se va a usar con Traffic Director. En el caso de los balanceadores de carga de aplicaciones, debe estar vacío.

Define el mecanismo para obtener el certificado de la autoridad de certificación con el que validar el certificado de cliente.

clientValidationTrustConfig

string

Referencia a TrustConfig del espacio de nombres certificatemanager.googleapis.com.

Si se especifica, la validación de la cadena se realizará con los certificados configurados en el TrustConfig proporcionado.

Solo se permite si la política se va a usar con balanceadores de carga de aplicaciones.

tier

enum (Tier)

Nivel de TLS mutuo.

Solo se permite si la política se va a usar con balanceadores de carga de aplicaciones.

ClientValidationMode

Modo de validación de certificados TLS mutuo.

Enumeraciones
CLIENT_VALIDATION_MODE_UNSPECIFIED No se permite.
ALLOW_INVALID_OR_MISSING_CLIENT_CERT Permite la conexión aunque no se haya podido validar la cadena de certificados del cliente o no se haya presentado ningún certificado de cliente. La prueba de posesión de la clave privada siempre se comprueba si se ha presentado un certificado de cliente. Este modo requiere que el backend implemente el procesamiento de los datos extraídos de un certificado de cliente para autenticar al peer o que rechace las conexiones si falta la huella digital del certificado de cliente.
REJECT_INVALID

Exige un certificado de cliente y permite la conexión al backend solo si se ha validado el certificado de cliente.

Si se define, requiere una referencia a TrustConfig no vacío especificado en clientValidationTrustConfig.

Nivel

Nivel de TLS mutuo para XLB.

Enumeraciones
TIER_UNSPECIFIED Si no se especifica ningún nivel en la solicitud, el sistema elegirá un valor predeterminado (actualmente, el nivel STANDARD).
STANDARD Nivel predeterminado. Principalmente para proveedores de software (comunicación de servicio a servicio o de API a API).
ADVANCED Nivel avanzado. Para los clientes que se encuentran en entornos muy regulados, se recomienda especificar claves más largas y cadenas de certificados complejas.

Métodos

create

Crea un nuevo ServerTlsPolicy en un proyecto y una ubicación determinados.

delete

Elimina un único recurso ServerTlsPolicy.

get

Obtiene los detalles de un solo ServerTlsPolicy.

list

Muestra las ServerTlsPolicies de un proyecto y una ubicación determinados.

patch

Actualiza los parámetros de un solo ServerTlsPolicy.