REST Resource: projects.locations.endpointPolicies

Risorsa: EndpointPolicy

EndpointPolicy è una risorsa che consente di applicare la configurazione desiderata agli endpoint che corrispondono a criteri specifici. Ad esempio, questa risorsa può essere utilizzata per applicare "authentication config" a tutti gli endpoint che vengono pubblicati sulla porta 8080.

Rappresentazione 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
}
Campi
name

string

Obbligatorio. Nome della risorsa EndpointPolicy. Corrisponde al pattern projects/{project}/locations/global/endpointPolicies/{endpointPolicy}.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione della risorsa.

Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione a livello di nanosecondo e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Solo output. Il timestamp dell'aggiornamento della risorsa.

Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione a livello di nanosecondo e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

labels

map (key: string, value: string)

Facoltativo. Set di tag etichetta associati alla risorsa EndpointPolicy.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

type

enum (EndpointPolicyType)

Obbligatorio. Il tipo di criterio endpoint. Viene utilizzato principalmente per convalidare la configurazione.

authorizationPolicy

string

Facoltativo. Questo campo specifica l'URL della risorsa AuthorizationPolicy che applica i criteri di autorizzazione al traffico in entrata negli endpoint corrispondenti. Fai riferimento all'autorizzazione. Se questo campo non viene specificato, l'autorizzazione è disattivata(nessun controllo di autorizzazione) per questo endpoint.

endpointMatcher

object (EndpointMatcher)

Obbligatorio. Un'espressione di corrispondenza che seleziona gli endpoint a cui devono essere applicati i criteri.

trafficPortSelector

object (TrafficPortSelector)

Facoltativo. Selettore di porte per gli endpoint (corrispondenti). Se non viene fornito alcun selettore di porte, la configurazione corrispondente viene applicata a tutte le porte.

description

string

Facoltativo. Una descrizione in testo libero della risorsa. Lunghezza massima: 1024 caratteri.

serverTlsPolicy

string

Facoltativo. Un URL che rimanda alla risorsa ServerTlsPolicy. ServerTlsPolicy viene utilizzato per determinare il criterio di autenticazione da applicare per terminare il traffico in entrata nei backend identificati. Se questo campo non è impostato, l'autenticazione è disabilitata(aperta) per questo endpoint.

clientTlsPolicy

string

Facoltativo. Un URL che rimanda a una risorsa ClientTlsPolicy. ClientTlsPolicy può essere impostato per specificare l'autenticazione per il traffico dal proxy agli endpoint effettivi. Nello specifico, viene applicato al traffico in uscita dal proxy all'endpoint. Questo approccio viene in genere utilizzato per il modello sidecar in cui il proxy si identifica come endpoint per il piano di controllo, con la connessione tra il sidecar e l'endpoint che richiede l'autenticazione. Se questo campo non è impostato, l'autenticazione è disabilitata(aperta). Applicabile solo quando EndpointPolicyType è SIDECAR_PROXY.

EndpointPolicyType

Il tipo di criterio endpoint.

Enum
ENDPOINT_POLICY_TYPE_UNSPECIFIED Valore predefinito. Non deve essere utilizzato.
SIDECAR_PROXY Rappresenta un proxy di cui è stato eseguito il deployment come sidecar.
GRPC_SERVER Rappresenta un backend gRPC senza proxy.

EndpointMatcher

Una definizione di un corrispettivo che seleziona gli endpoint a cui applicare i criteri.

Rappresentazione 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.
}
Campi
Campo unione matcher_type. Specifica il tipo di corrispettivo utilizzato per questo corrispettivo endpoint. matcher_type può essere solo uno dei seguenti:
metadataLabelMatcher

object (MetadataLabelMatcher)

Il corrispettivo si basa sui metadati dei nodi presentati dai client xDS.

MetadataLabelMatcher

Il correlatore basato sui metadati dei nodi presentati dai client xDS.

Rappresentazione JSON
{
  "metadataLabelMatchCriteria": enum (MetadataLabelMatchCriteria),
  "metadataLabels": [
    {
      object (MetadataLabels)
    }
  ]
}
Campi
metadataLabelMatchCriteria

enum (MetadataLabelMatchCriteria)

Specifica in che modo deve essere eseguita la corrispondenza.

I valori supportati sono: MATCH_ANY: almeno una delle etichette specificate nel selettore deve corrispondere ai metadati presentati dal client xDS. MATCH_ALL: i metadati presentati dal client xDS devono contenere tutte le etichette specificate qui.

La selezione viene determinata in base alla corrispondenza migliore. Ad esempio, supponiamo che esistano tre risorse EndpointPolicy P1, P2 e P3 e che P1 abbia un'espressione di corrispondenza MATCH_ANY <A:1, B:1>, P2 abbia MATCH_ALL <A:1,B:1> e P3 abbia MATCH_ALL <A:1,B:1,C:1>.

Se si connette un client con l'etichetta <A:1>, verrà selezionata la configurazione di P1.

Se si connette un client con l'etichetta <A:1,B:1>, verrà selezionata la configurazione di P2.

Se si connette un client con l'etichetta <A:1,B:1,C:1>, verrà selezionata la configurazione di P3.

Se esiste più di una corrispondenza migliore (ad esempio, se esiste una configurazione P4 con il selettore <A:1,D:1> e si connette un client con l'etichetta <A:1,B:1,D:1>), scegli quella con la data di creazione precedente.

metadataLabels[]

object (MetadataLabels)

L'elenco di coppie di valori delle etichette che devono corrispondere alle etichette nei metadati forniti in base a filterMatchCriteria. Questo elenco può contenere al massimo 64 voci. L'elenco può essere vuoto se i criteri di corrispondenza sono MATCH_ANY, per specificare una corrispondenza generica (ovvero una corrispondenza con qualsiasi cliente).

MetadataLabelMatchCriteria

Possibili valori dei criteri che definiscono la logica di creazione della corrispondenza.

Enum
METADATA_LABEL_MATCH_CRITERIA_UNSPECIFIED Valore predefinito. Non deve essere utilizzato.
MATCH_ANY Almeno uno degli etichetti specificati nel correlatore deve corrispondere ai metadati presentati dal client xDS.
MATCH_ALL I metadati presentati dal client xDS devono contenere tutte le etichette specificate qui.

MetadataLabels

Definisce un valore di coppia di nomi per una singola etichetta.

Rappresentazione JSON
{
  "labelName": string,
  "labelValue": string
}
Campi
labelName

string

Obbligatorio. Nome dell'etichetta presentato come chiave nei metadati del nodo xDS.

labelValue

string

Obbligatorio. Valore dell'etichetta presentato come valore corrispondente alla chiave sopra indicata nei metadati del nodo xDS.

TrafficPortSelector

Specifica di un selettore basato su porta.

Rappresentazione JSON
{
  "ports": [
    string
  ]
}
Campi
ports[]

string

Facoltativo. Un elenco di porte. Possono essere numeri di porta o intervalli di porte (ad esempio, [80-90] specifica tutte le porte da 80 a 90, incluse 80 e 90) o porte denominate o * per specificare tutte le porte. Se l'elenco è vuoto, sono selezionate tutte le porte.

Metodi

create

Crea un nuovo criterio endpoint in un determinato progetto e posizione.

delete

Consente di eliminare un singolo EndpointPolicy.

get

Recupera i dettagli di un singolo EndpointPolicy.

list

Elenca EndpointPolicies in un determinato progetto e località.

patch

Aggiorna i parametri di un singolo EndpointPolicy.

setIamPolicy

Imposta il criterio di controllo dell'accesso sulla risorsa specificata.

testIamPermissions

Restituisce le autorizzazioni di cui dispone un chiamante sulla risorsa specificata.