REST Resource: projects.locations.serverTlsPolicies

Ressource: ServerTlsPolicy

ServerTlsPolicy est une ressource qui spécifie la manière dont un serveur doit authentifier les requêtes entrantes. Cette ressource elle-même n'affecte pas la configuration, sauf si elle est associée à un proxy HTTPS cible ou à une ressource de sélecteur de configuration de point de terminaison.

ServerTlsPolicy, au format accepté par les équilibreurs de charge HTTPS externes, ne peut être associé qu'à TargetHttpsProxy avec un schéma d'équilibrage de charge EXTERNAL ou EXTERNAL_MANAGED. Les règles ServerTlsPolicies compatibles avec Traffic Director peuvent être associées à EndpointPolicy et TargetHttpsProxy avec le schéma d'équilibrage de charge INTERNAL_SELF_MANAGED de Traffic Director.

Représentation 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
  ]
}
Champs
name

string

Obligatoire. Nom de la ressource ServerTlsPolicy. Il correspond au modèle projects/*/locations/{location}/serverTlsPolicies/{serverTlsPolicy}

description

string

Description en texte libre de la ressource.

createTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création de la ressource.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la mise à jour de la ressource.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

labels

map (key: string, value: string)

Ensemble de tags d'étiquettes associés à la ressource.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

allowOpen

boolean

Ce champ ne s'applique qu'aux règles Traffic Director. Elle doit être définie sur "false" pour les règles d'équilibreur de charge HTTPS externe.

Détermine si le serveur autorise les connexions en texte brut. Si la valeur est définie sur "true", le serveur autorise les connexions en texte brut. Par défaut, il est défini sur "false". Ce paramètre n'exclut pas les autres modes de chiffrement. Par exemple, si allowOpen et mtlsPolicy sont définis, le serveur autorise les connexions en texte brut et mTLS. Consultez la documentation sur les autres modes de chiffrement pour vérifier leur compatibilité.

Utilisez cette option si vous souhaitez passer à TLS pendant que le trafic TLS et non TLS atteint le port :80.

serverCertificate

object (CertificateProvider)

Facultatif si la règle doit être utilisée avec Traffic Director. Le champ "Équilibreur de charge HTTPS externe" doit être vide.

Définit un mécanisme permettant de provisionner l'identité du serveur (clés publiques et privées). Ce mode ne peut pas être associé à allowOpen en tant que mode permissif autorisant à la fois le texte brut et TLS.

mtlsPolicy

object (MTLSPolicy)

Ce champ est obligatoire si la règle est utilisée avec des équilibreurs de charge HTTPS externes. Ce champ peut être vide pour Traffic Director.

Définit un mécanisme permettant de fournir des certificats de validation de pairs pour l'authentification pair à pair (TLS mutuel – mTLS). S'il n'est pas spécifié, le certificat client ne sera pas demandé. La connexion est traitée comme TLS et non comme mTLS. Si les paramètres allowOpen et mtlsPolicy sont définis, le serveur autorise les connexions en texte brut et mTLS.

internalCaller

boolean

Facultatif. Indicateur défini pour identifier les contrôleurs internes. Ce paramètre déclenche une vérification P4SA pour vérifier que l'appelant provient du P4SA d'un service figurant sur la liste d'autorisation, même si d'autres champs facultatifs ne sont pas définis.

minTlsVersion

enum (TlsVersion)

Facultatif. Version minimale de TLS utilisée uniquement pour Envoy. Si aucune valeur n'est spécifiée, Envoy utilise la version par défaut. Dernière version d'Envoy: https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto

maxTlsVersion

enum (TlsVersion)

Facultatif. Version maximale de TLS utilisée uniquement pour Envoy. Si aucune valeur n'est spécifiée, Envoy utilise la version par défaut. Dernière version d'Envoy: https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto

cipherSuites[]

string

Facultatif. Suites de chiffrement personnalisées TLS utilisées uniquement dans CSM. algorithme de chiffrement SHAA3-SHAA-5-SHAA-56-SHAA-56-SHA-56-SHA-2-0-0-0-%26-SHA-56-SHA-60-chiffre-de-données-de-données-de-données elles-mêmes

subjectAltNames[]

string

Facultatif. Validation côté serveur pour le SAN client, uniquement utilisée dans CSM. S'il n'est pas spécifié, le serveur ne vérifie pas le SAN du client.

MTLSPolicy

Spécification de l'objet MTLSPolicy.

Représentation JSON
{
  "clientValidationMode": enum (ClientValidationMode),
  "clientValidationCa": [
    {
      object (ValidationCA)
    }
  ],
  "clientValidationTrustConfig": string,
  "tier": enum (Tier)
}
Champs
clientValidationMode

enum (ClientValidationMode)

Lorsque le client présente un certificat non valide ou aucun certificat à l'équilibreur de charge, le champ clientValidationMode indique comment la connexion client est gérée.

Obligatoire si la règle doit être utilisée avec l'équilibrage de charge HTTPS externe. Pour Traffic Director, ce champ doit être vide.

clientValidationCa[]

object (ValidationCA)

Obligatoire si la règle doit être utilisée avec Traffic Director. Pour les équilibreurs de charge HTTPS externes, ce champ doit être vide.

Définit le mécanisme permettant d'obtenir le certificat de l'autorité de certification pour valider le certificat client.

clientValidationTrustConfig

string

Référence à l'objet TrustConfig de l'espace de noms certificatemanager.googleapis.com.

Si cette valeur est spécifiée, la validation de la chaîne sera effectuée par rapport aux certificats configurés dans le TrustConfig donné.

Autorisé uniquement si la règle doit être utilisée avec des équilibreurs de charge HTTPS externes.

tier

enum (Tier)

Niveau TLS mutuel.

Autorisé uniquement si la règle doit être utilisée avec des équilibreurs de charge HTTPS externes.

ClientValidationMode

Mode de validation du certificat TLS mutuel.

Enums
CLIENT_VALIDATION_MODE_UNSPECIFIED Non autorisé.
ALLOW_INVALID_OR_MISSING_CLIENT_CERT Autoriser la connexion même si la validation de la chaîne de certificats du certificat client a échoué ou si aucun certificat client n'a été présenté. La preuve de possession de la clé privée est toujours vérifiée si un certificat client a été présenté. Ce mode nécessite que le backend mette en œuvre le traitement des données extraites d'un certificat client pour authentifier le pair, ou pour refuser les connexions si l'empreinte du certificat client est manquante.
REJECT_INVALID

Exiger un certificat client et autoriser la connexion au backend uniquement si la validation du certificat client a réussi.

Si cette valeur est définie, elle nécessite une référence au TrustConfig non vide spécifié dans clientValidationTrustConfig.

Niveau

Niveau TLS mutuel pour XLB.

Enums
TIER_UNSPECIFIED Si le niveau n'est pas spécifié dans la requête, le système choisira une valeur par défaut (actuellement STANDARD).
STANDARD Niveau par défaut. Principalement pour les fournisseurs de logiciels (communication de service à service/API).
ADVANCED Niveau avancé. Pour les clients situés dans des environnements fortement réglementés, spécifiant des clés plus longues et des chaînes de certificats complexes.

TlsVersion

Paramètre de version TLS pour la passerelle CSM.

Enums
TLS_VERSION_UNSPECIFIED
TLS_V1_0
TLS_V1_1
TLS_V1_2
TLS_V1_3

Méthodes

create

Crée un objet ServerTlsPolicy dans un projet et un emplacement donnés.

delete

Supprime une seule stratégie ServerTlsPolicy.

get

Récupère les détails d'une seule stratégie ServerTlsPolicy.

getIamPolicy

Récupère la stratégie de contrôle d'accès d'une ressource.

list

Répertorie les stratégies ServerTlsPolicies dans un projet et un emplacement donnés.

patch

Met à jour les paramètres d'une seule stratégie ServerTlsPolicy.

setIamPolicy

Définit la stratégie de contrôle d'accès de la ressource spécifiée.

testIamPermissions

Renvoie les autorisations qu'un appelant a sur la ressource spécifiée.