REST Resource: projects.locations.endpointPolicies

Recurso: EndpointPolicy

EndpointPolicy es un recurso que ayuda a aplicar la configuración deseada en los endpoints que coinciden con criterios específicos. Por ejemplo, este recurso se puede utilizar para aplicar la "configuración de autenticación" a todos los endpoints que funcionan en el puerto 8080.

Representación JSON
{
  "name": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "type": enum (EndpointPolicyType),
  "authorizationPolicy": string,
  "endpointMatcher": {
    object (EndpointMatcher)
  },
  "trafficPortSelector": {
    object (TrafficPortSelector)
  },
  "description": string,
  "serverTlsPolicy": string,
  "clientTlsPolicy": string
}
Campos
name

string

Obligatorio. Nombre del recurso EndpointPolicy. Coincide con el patrón projects/{project}/locations/global/endpointPolicies/{endpointPolicy}.

createTime

string (Timestamp format)

Solo salida. Marca de tiempo cuando se creó el recurso.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Solo salida. La marca de tiempo de la actualización del recurso.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

labels

map (key: string, value: string)

Opcional. Conjunto de etiquetas de etiqueta asociadas con el recurso EndpointPolicy.

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

type

enum (EndpointPolicyType)

Obligatorio. El tipo de política de extremo. Se usa principalmente para validar la configuración.

authorizationPolicy

string

Opcional. Este campo especifica la URL del recurso AuthorizationPolicy que aplica las políticas de autorización al tráfico entrante en los extremos coincidentes. Consulta Autorización. Si no se especifica este campo, se inhabilita la autorización(sin verificaciones de autorización) para este extremo.

endpointMatcher

object (EndpointMatcher)

Obligatorio. Un comparador que selecciona los extremos a los que se deben aplicar las políticas.

trafficPortSelector

object (TrafficPortSelector)

Opcional. Selector de puerto para los extremos (coincidentes). Si no se proporciona un selector de puertos, la configuración que coincida se aplica a todos los puertos.

description

string

Opcional. Es una descripción de texto libre del recurso. La longitud máxima es de 1,024 caracteres.

serverTlsPolicy

string

Opcional. Una URL que hace referencia al recurso ServerTlsPolicy. ServerTlsPolicy se usa para determinar la política de autenticación que se aplicará para finalizar el tráfico entrante en los backends identificados. Si no se establece este campo, se inhabilitará la autenticación(abierta) para este extremo.

clientTlsPolicy

string

Opcional. Una URL que hace referencia a un recurso ClientTlsPolicy. ClientTlsPolicy se puede establecer para especificar la autenticación para el tráfico desde el proxy hasta los extremos reales. Más concretamente, se aplica al tráfico saliente desde el proxy al extremo. Por lo general, se usa para el modelo de archivo adicional en el que el proxy se identifica como extremo del plano de control, con la conexión entre el archivo adicional y el extremo que requiere autenticación. Si no estableces este campo, la autenticación se inhabilitará(abierta). Solo se aplica cuando EndpointPolicyType es SIDECAR_PROXY.

EndpointPolicyType

El tipo de política de extremo.

Enums
ENDPOINT_POLICY_TYPE_UNSPECIFIED Valor predeterminado No debe usarse.
SIDECAR_PROXY Representa un proxy implementado como un archivo adicional.
GRPC_SERVER Representa un backend de gRPC sin proxy.

EndpointMatcher

Una definición de un comparador que selecciona los extremos a los que se deben aplicar las políticas.

Representación JSON
{

  // Union field matcher_type can be only one of the following:
  "metadataLabelMatcher": {
    object (MetadataLabelMatcher)
  }
  // End of list of possible types for union field matcher_type.
}
Campos
Campo de unión matcher_type. Especifica el tipo del comparador que se usa para este comparador de extremos. matcher_type puede ser solo uno de los siguientes:
metadataLabelMatcher

object (MetadataLabelMatcher)

El comparador se basa en metadatos de nodo que presentan los clientes de xDS.

MetadataLabelMatcher

El comparador que se basa en metadatos de nodo presentados por clientes xDS.

Representación JSON
{
  "metadataLabelMatchCriteria": enum (MetadataLabelMatchCriteria),
  "metadataLabels": [
    {
      object (MetadataLabels)
    }
  ]
}
Campos
metadataLabelMatchCriteria

enum (MetadataLabelMatchCriteria)

Especifica cómo se debe realizar la correlación.

Los valores admitidos son: MATCH_ANY: Al menos una de las etiquetas especificadas en el comparador debe coincidir con los metadatos que presenta el cliente de xDS. MATCH_ALL: Los metadatos que presente el cliente xDS deben contener todas las etiquetas especificadas aquí.

Se seleccionará en función de la mejor coincidencia. Por ejemplo, supongamos que hay tres recursos EndpointPolicy P1, P2 y P3 y, si P1 tiene un comparador como MATCH_ANY <A:1, B:1>, P2 tiene MATCH_ALL <A:1,B:1> y P3 tiene MATCH_ALL <A:1,B:1,C:1>.

Si se conecta un cliente con la etiqueta <A:1>, se seleccionará la configuración de P1.

Si se conecta un cliente con la etiqueta <A:1,B:1>, se seleccionará la configuración de P2.

Si se conecta un cliente con la etiqueta <A:1,B:1,C:1>, se seleccionará la configuración de P3.

Si hay más de una mejor coincidencia (por ejemplo, si existe una configuración P4 con el selector <A:1,D:1> y si un cliente con la etiqueta <A:1,B:1,D:1> se conecta), elige el que tenga una hora de creación anterior.

metadataLabels[]

object (MetadataLabels)

La lista de pares de valores de etiquetas que deben coincidir con las etiquetas en los metadatos proporcionados según filterMatchCriteria. Esta lista puede tener 64 entradas como máximo. La lista puede estar vacía si el criterio de coincidencia es MATCH_ANY para especificar una coincidencia comodín (es decir, coincide con cualquier cliente).

MetadataLabelMatchCriteria

Son posibles valores de criterio que definen la lógica de cómo se realiza la coincidencia.

Enums
METADATA_LABEL_MATCH_CRITERIA_UNSPECIFIED Valor predeterminado No se debe usar.
MATCH_ANY Al menos una de las etiquetas especificadas en el comparador debe coincidir con los metadatos que presenta el cliente de xDS.
MATCH_ALL Los metadatos que presente el cliente xDS deben contener todas las etiquetas especificadas aquí.

MetadataLabels

Define un valor de par de nombres para una sola etiqueta.

Representación JSON
{
  "labelName": string,
  "labelValue": string
}
Campos
labelName

string

Obligatorio. Nombre de la etiqueta presentado como clave en los metadatos del nodo xDS.

labelValue

string

Obligatorio. Valor de etiqueta presentado como valor correspondiente a la clave anterior, en metadatos del nodo xDS.

TrafficPortSelector

Especificación de un selector basado en puertos.

Representación JSON
{
  "ports": [
    string
  ]
}
Campos
ports[]

string

Opcional. Una lista de puertos. Pueden ser números de puerto o un rango de puertos (por ejemplo, [80-90] especifica todos los puertos del 80 al 90, incluidos el 80 y el 90) o puertos con nombre o * para especificar todos los puertos. Si la lista está vacía, se seleccionarán todos los puertos.

Métodos

create

Crea una EndpointPolicy nueva en un proyecto y una ubicación determinados.

delete

Borra una sola EndpointPolicy.

get

Obtiene detalles de una sola EndpointPolicy.

getIamPolicy

Permite obtener la política de control de acceso de un recurso.

list

Muestra una lista de EndpointPolicies en un proyecto y ubicación determinados.

patch

Actualiza los parámetros de una única EndpointPolicy.

setIamPolicy

Permite configurar la política de control de acceso en el recurso especificado.

testIamPermissions

Permite mostrar los permisos que tiene un emisor para un recurso específico.