- Risorsa: EndpointPolicy
- EndpointPolicyType
- EndpointMatcher
- MetadataLabelMatcher
- MetadataLabelMatchCriteria
- MetadataLabels
- TrafficPortSelector
- Metodi
Risorsa: EndpointPolicy
EndpointPolicy è una risorsa che aiuta ad applicare la configurazione desiderata agli endpoint che soddisfano criteri specifici. Ad esempio, questa risorsa può essere utilizzata per applicare la "configurazione dell'autenticazione" a tutti gli endpoint che operano sulla porta 8080.
Rappresentazione JSON |
---|
{ "name": string, "createTime": string, "updateTime": string, "labels": { string: string, ... }, "type": enum ( |
Campi | |
---|---|
name |
Obbligatorio. Nome della risorsa EndpointPolicy. Corrisponde al pattern |
createTime |
Solo output. Timestamp di creazione della risorsa. Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
updateTime |
Solo output. Timestamp di aggiornamento della risorsa. Un timestamp nel formato RFC3339 UTC "Zulu" con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
labels |
Facoltativo. Set di tag etichetta associati alla risorsa EndpointPolicy. Un oggetto contenente un elenco di |
type |
Obbligatorio. Il tipo di criterio endpoint. Viene utilizzato principalmente per convalidare la configurazione. |
authorizationPolicy |
Facoltativo. Questo campo specifica l'URL della risorsa AuthorizationPolicy che applica i criteri di autorizzazione al traffico in entrata presso gli endpoint corrispondenti. Fai riferimento ad Autorizzazione. Se questo campo non viene specificato, l'autorizzazione è disattivata (nessun controllo di autorizzazione) per questo endpoint. |
endpointMatcher |
Obbligatorio. Un matcher che seleziona gli endpoint a cui devono essere applicati i criteri. |
trafficPortSelector |
Facoltativo. Selettore di porte per gli endpoint (corrispondenti). Se non viene fornito alcun selettore di porta, la configurazione corrispondente viene applicata a tutte le porte. |
description |
Facoltativo. Una descrizione in testo libero della risorsa. Lunghezza massima: 1024 caratteri. |
serverTlsPolicy |
Facoltativo. Un URL che fa riferimento 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 viene configurato, l'autenticazione è disabilitata(aperta) per questo endpoint. |
clientTlsPolicy |
Facoltativo. Un URL che fa riferimento 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 sidecar ed endpoint che richiede l'autenticazione. Se questo campo non viene configurato, 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'espressione di corrispondenza che seleziona gli endpoint a cui devono essere applicati i criteri.
Rappresentazione JSON |
---|
{ // Union field |
Campi | |
---|---|
Campo unione matcher_type . Specifica il tipo di corrispettivo utilizzato per questo corrispettivo endpoint. matcher_type può essere solo uno dei seguenti: |
|
metadataLabelMatcher |
Il matcher si basa sui metadati dei nodi presentati dai client xDS. |
MetadataLabelMatcher
Il matcher basato sui metadati dei nodi presentati dai client xDS.
Rappresentazione JSON |
---|
{ "metadataLabelMatchCriteria": enum ( |
Campi | |
---|---|
metadataLabelMatchCriteria |
Specifica come deve essere effettuata 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 se P1 ha un matcher come MATCH_ANY <A:1, B:1>, P2 ha MATCH_ALL <A:1,B:1> e P3 ha 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 un client con l'etichetta <A:1,B:1> si connette, sarà 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 c'è più di una corrispondenza migliore (ad esempio, se esiste una configurazione P4 con selettore <A:1,D:1> e se si connette un client con etichetta <A:1,B:1,D:1>), scegli quella con data di creazione meno recente. |
metadataLabels[] |
L'elenco di coppie di valori di etichetta 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 il criterio di corrispondenza è MATCH_ANY, per specificare una corrispondenza con caratteri jolly (ovvero qualsiasi client). |
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 |
Obbligatorio. Nome dell'etichetta presentato come chiave nei metadati del nodo xDS. |
labelValue |
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[] |
Facoltativo. Un elenco di porte. Può essere numeri di porta o intervallo di porte (ad esempio, [80-90] specifica tutte le porte da 80 a 90, inclusi 80 e 90) o porte denominate oppure * per specificare tutte le porte. Se l'elenco è vuoto, sono selezionate tutte le porte. |
Metodi |
|
---|---|
|
Crea un nuovo EndpointPolicy in un progetto e in una località specifici. |
|
Elimina un singolo EndpointPolicy. |
|
Recupera i dettagli di un singolo EndpointPolicy. |
|
Elenca EndpointPolicies in un determinato progetto e località. |
|
Aggiorna i parametri di un singolo EndpointPolicy. |
|
Imposta il criterio di controllo dell'accesso sulla risorsa specificata. |
|
Restituisce le autorizzazioni di cui un chiamante dispone per la risorsa specificata. |