REST Resource: projects.locations.serverTlsPolicies

Risorsa: ServerTlsPolicy

ServerTlsPolicy è una risorsa che specifica in che modo un server deve autenticare le richieste in entrata. Questa risorsa non influisce sulla configurazione, a meno che non venga collegata a un proxy HTTPS di destinazione o a una risorsa del selettore di configurazione degli endpoint.

ServerTlsPolicy nel formato accettato dai bilanciatori del carico HTTPS esterni può essere collegato solo a TargetHttpsProxy con uno schema di bilanciamento del carico EXTERNAL o EXTERNAL_MANAGED. I ServerTlsPolicies compatibili con Traffic Director possono essere collegati a EndpointPolicy e TargetHttpsProxy con lo schema di bilanciamento del carico INTERNAL_SELF_MANAGED di Traffic Director.

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "allowOpen": boolean,
  "serverCertificate": {
    object (CertificateProvider)
  },
  "mtlsPolicy": {
    object (MTLSPolicy)
  },
  "internalCaller": boolean,
  "minTlsVersion": enum (TlsVersion),
  "maxTlsVersion": enum (TlsVersion),
  "cipherSuites": [
    string
  ],
  "subjectAltNames": [
    string
  ]
}
Campi
name

string

Obbligatorio. Nome della risorsa ServerTlsPolicy. Corrisponde al pattern projects/*/locations/{location}/serverTlsPolicies/{serverTlsPolicy}

description

string

Descrizione in testo libero della risorsa.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione della risorsa.

Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi 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 di aggiornamento della risorsa.

Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi 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)

Insieme di tag di etichetta associati alla risorsa.

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

allowOpen

boolean

Questo campo si applica solo ai criteri di Traffic Director. Deve essere impostato su false per i criteri del bilanciatore del carico HTTPS esterno.

Determina se il server consente connessioni in testo non crittografato. Se è impostato su true, il server consente connessioni in testo normale. Il valore predefinito è false. Questa impostazione non è esclusiva di altre modalità di crittografia. Ad esempio, se allowOpen e mtlsPolicy sono impostati, il server consente connessioni in testo normale e mTLS. Consulta la documentazione delle altre modalità di crittografia per verificare la compatibilità.

Prendi in considerazione l'utilizzo di questo servizio se vuoi eseguire l'upgrade del deployment a TLS, mantenendo il traffico misto TLS e non TLS che raggiunge la porta :80.

serverCertificate

object (CertificateProvider)

Facoltativo se il criterio deve essere utilizzato con Traffic Director. Il bilanciatore del carico HTTPS esterno deve essere vuoto.

Definisce un meccanismo per eseguire il provisioning dell'identità del server (chiavi pubbliche e private). Non può essere combinata con allowOpen poiché una modalità permissiva che consente sia il testo normale sia TLS non è supportata.

mtlsPolicy

object (MTLSPolicy)

Questo campo è obbligatorio se il criterio viene utilizzato con bilanciatori del carico HTTPS esterni. Questo campo può essere vuoto per Traffic Director.

Definisce un meccanismo per il provisioning di certificati di convalida dei peer per l'autenticazione peer-to-peer (TLS reciproco - mTLS). Se non specificato, il certificato client non verrà richiesto. La connessione viene trattata come TLS e non come mTLS. Se i criteri allowOpen e mtlsPolicy sono impostati, il server consente connessioni in testo normale e mTLS.

internalCaller

boolean

Facoltativo. L'impostazione di un flag per identificare i controller interni attiva un controllo P4SA per confermare che il chiamante proviene da un P4SA di un servizio incluso nella lista consentita, anche se gli altri campi facoltativi non sono impostati.

minTlsVersion

enum (TlsVersion)

Facoltativo. Versione minima TLS utilizzata solo per Envoy. Se non specificata, Envoy utilizzerà la versione predefinita. Ultime di Envoy: https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto

maxTlsVersion

enum (TlsVersion)

Facoltativo. Versione TLS max utilizzata solo per Envoy. Se non specificata, Envoy utilizzerà la versione predefinita. Ultime di Envoy: https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto

cipherSuites[]

string

Facoltativo. Suite di crittografia personalizzate TLS utilizzate solo in CSM. Le seguenti crittografie sono supportate: ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AESLYACH10-PO

subjectAltNames[]

string

Facoltativo. Convalida lato server per la SAN client, utilizzata solo in CSM. Se non specificata, la SAN del client non verrà controllata dal server.

MTLSPolicy

Specifica di MTLSPolicy.

Rappresentazione JSON
{
  "clientValidationMode": enum (ClientValidationMode),
  "clientValidationCa": [
    {
      object (ValidationCA)
    }
  ],
  "clientValidationTrustConfig": string,
  "tier": enum (Tier)
}
Campi
clientValidationMode

enum (ClientValidationMode)

Quando il client presenta un certificato non valido o nessun certificato al bilanciatore del carico, clientValidationMode specifica come viene gestita la connessione client.

Obbligatorio se il criterio viene utilizzato con il bilanciamento del carico HTTPS esterno. Per Traffic Director, il campo deve essere vuoto.

clientValidationCa[]

object (ValidationCA)

Obbligatorio se il criterio viene utilizzato con Traffic Director. Per i bilanciatori del carico HTTPS esterni, il campo deve essere vuoto.

Definisce il meccanismo per ottenere il certificato dell'autorità di certificazione per convalidare il certificato client.

clientValidationTrustConfig

string

Riferimento a TrustConfig dallo spazio dei nomi certificatemanager.googleapis.com.

Se specificato, la convalida della catena verrà eseguita rispetto ai certificati configurati nel TrustConfig specificato.

Consentito solo se il criterio viene utilizzato con bilanciatori del carico HTTPS esterni.

tier

enum (Tier)

Livello TLS reciproco.

Consentito solo se il criterio viene utilizzato con bilanciatori del carico HTTPS esterni.

ClientValidationMode

Modalità di convalida del certificato TLS reciproca.

Enum
CLIENT_VALIDATION_MODE_UNSPECIFIED Non consentito.
ALLOW_INVALID_OR_MISSING_CLIENT_CERT Consenti la connessione anche se la convalida della catena di certificati del certificato client non è riuscita o se non è stato presentato nessun certificato client. La prova di possesso della chiave privata viene sempre verificata se è stato presentato un certificato client. Questa modalità richiede al backend di implementare l'elaborazione dei dati estratti da un certificato client per autenticare il peer o di rifiutare le connessioni se manca l'impronta digitale del certificato client.
REJECT_INVALID

Richiedere un certificato client e consentire la connessione al backend solo se la convalida del certificato client è stata superata.

Se impostato, richiede un riferimento a TrustConfig non vuoto specificato in clientValidationTrustConfig.

Livello

Livello TLS reciproco per XLB.

Enum
TIER_UNSPECIFIED Se il livello non è specificato nella richiesta, il sistema sceglierà attualmente un valore predefinito: il livello STANDARD.
STANDARD Livello predefinito. Principalmente per fornitori di software (comunicazione da servizio a servizio/API).
ADVANCED Livello avanzato. Per i clienti in ambienti soggetti a regolamentazioni severe, che specificano chiavi più lunghe e catene di certificati complesse.

TlsVersion

Versione TLS per l'impostazione della versione TLS del gateway CSM.

Enum
TLS_VERSION_UNSPECIFIED
TLS_V1_0
TLS_V1_1
TLS_V1_2
TLS_V1_3

Metodi

create

Crea un nuovo ServerTlsPolicy in un progetto e una località specifici.

delete

Elimina un singolo ServerTlsPolicy.

get

Restituisce i dettagli di un singolo ServerTlsPolicy.

getIamPolicy

Ottieni il criterio di controllo dell'accesso per una risorsa.

list

Elenca i ServerTlsPolicies in un determinato progetto e in una località specifici.

patch

Aggiorna i parametri di un singolo ServerTlsPolicy.

setIamPolicy

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

testIamPermissions

Restituisce le autorizzazioni di cui un chiamante dispone per la risorsa specificata.