REST Resource: projects.locations.serverTlsPolicies

Ressource: ServerTlsPolicy

ServerTlsPolicy ist eine Ressource, die angibt, wie ein Server eingehende Anfragen authentifizieren soll. Diese Ressource selbst hat keine Auswirkungen auf die Konfiguration, es sei denn, sie ist an eine Auswahlressource für die Ziel-HTTPS-Proxy- oder Endpunktkonfiguration angehängt.

ServerTlsPolicy in der von externen HTTPS-Load-Balancern akzeptierten Form kann nur an TargetHttpsProxy mit einem EXTERNAL- oder EXTERNAL_MANAGED-Load-Balancing-Schema angehängt werden. Mit Traffic Director kompatible ServerTlsPolicies können an EndpointPolicy und TargetHttpsProxy mit dem Load-Balancing-Schema INTERNAL_SELF_MANAGED von Traffic Director angehängt werden.

JSON-Darstellung
{
  "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
  ]
}
Felder
name

string

Erforderlich. Name der ServerTlsPolicy-Ressource. Er entspricht dem Muster projects/*/locations/{location}/serverTlsPolicies/{serverTlsPolicy}

description

string

Freitextbeschreibung der Ressource.

createTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource erstellt wurde.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel für den Zeitpunkt, zu dem die Ressource aktualisiert wurde.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

labels

map (key: string, value: string)

Satz von Label-Tags, die der Ressource zugeordnet sind.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

allowOpen

boolean

Dieses Feld gilt nur für Traffic Director-Richtlinien. Er muss für Richtlinien von externen HTTPS-Load-Balancern auf „false“ gesetzt sein.

Bestimmt, ob der Server Klartextverbindungen zulässt. Wenn die Richtlinie auf „true“ gesetzt ist, erlaubt der Server Nur-Text-Verbindungen. Die Standardeinstellung ist „false“. Diese Einstellung schließt andere Verschlüsselungsmodi nicht aus. Wenn beispielsweise allowOpen und mtlsPolicy festgelegt sind, erlaubt der Server sowohl Nur-Text- als auch mTLS-Verbindungen. Informationen zur Kompatibilität finden Sie in der Dokumentation zu anderen Verschlüsselungsmodi.

Verwenden Sie diese Option, wenn Sie für Ihre Bereitstellung ein Upgrade auf TLS durchführen möchten, während gemischter TLS- und Nicht-TLS-Traffic Port 80 erreicht.

serverCertificate

object (CertificateProvider)

Optional, wenn die Richtlinie mit Traffic Director verwendet werden soll. Für den externen HTTPS-Load-Balancer muss dieses Feld leer sein.

Definiert einen Mechanismus zum Bereitstellen der Serveridentität (öffentliche und private Schlüssel). Dieser Modus kann nicht mit „allowOpen“ kombiniert werden, da sowohl Nur-Text- als auch TLS-Verbindungen nicht unterstützt werden.

mtlsPolicy

object (MTLSPolicy)

Dieses Feld ist erforderlich, wenn die Richtlinie mit externen HTTPS-Load-Balancern verwendet wird. Dieses Feld kann für Traffic Director leer sein.

Definiert einen Mechanismus zur Bereitstellung von Peer-Validierungszertifikaten für die Peer-to-Peer-Authentifizierung (Gegenseitige TLS – mTLS). Wenn nicht angegeben, wird kein Clientzertifikat angefordert. Die Verbindung wird als TLS und nicht als mTLS behandelt. Wenn allowOpen und mtlsPolicy festgelegt sind, erlaubt der Server sowohl Nur-Text- als auch mTLS-Verbindungen.

internalCaller

boolean

Optional. Ein Flag zur Identifizierung interner Controller. Wenn Sie es festlegen, wird eine P4SA-Prüfung ausgelöst, um zu bestätigen, dass der Aufrufer von der P4SA eines Dienstes auf der Zulassungsliste stammt, auch wenn andere optionale Felder nicht festgelegt sind.

minTlsVersion

enum (TlsVersion)

Optional. Die TLS-Mindestversion wird nur für Envoy verwendet. Wenn keine Angabe erfolgt, verwendet Envoy die Standardversion. Envoy aktuell: https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto

maxTlsVersion

enum (TlsVersion)

Optional. Die TLS-Maximalversion wird nur für Envoy verwendet. Wenn keine Angabe erfolgt, verwendet Envoy die Standardversion. Envoy aktuell: https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/transport_sockets/tls/v3/common.proto

cipherSuites[]

string

Optional. Benutzerdefinierte TLS-Cipher Suites, die nur in CSM verwendet werden. Die folgenden Chiffren werden unterstützt: ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-GCM-SHA384 ECDHE-ECDSA-CHACHA20 ECDHE-RSA-AES-128-GCM-SHA256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-GCM-SHA384 ECDHE-ECDSA-CHACHA20-POCDHE-ECDSA-CHACHA20-POCDHE-ECDSA-CHACHA20-POCDHE-

subjectAltNames[]

string

Optional. Serverseitige Validierung für Client-SAN, wird nur im CSM verwendet. Wenn keine Angabe erfolgt, wird der Client-SAN nicht vom Server geprüft.

MTLSPolicy

Spezifikation der MTLSPolicy.

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

enum (ClientValidationMode)

Wenn der Client dem Load-Balancer ein ungültiges oder kein Zertifikat vorlegt, gibt clientValidationMode an, wie die Clientverbindung verarbeitet wird.

Erforderlich, wenn die Richtlinie mit dem externen HTTPS-Load-Balancing verwendet werden soll. Für Traffic Director muss er leer sein.

clientValidationCa[]

object (ValidationCA)

Erforderlich, wenn die Richtlinie mit Traffic Director verwendet werden soll. Bei externen HTTPS-Load-Balancern muss dieses Feld leer sein.

Definiert den Mechanismus zum Abrufen des Zertifikats der Zertifizierungsstelle, um das Clientzertifikat zu validieren.

clientValidationTrustConfig

string

Verweis auf TrustConfig aus dem Namespace „certificatemanager.googleapis.com“.

Wenn angegeben, wird die Kettenvalidierung anhand von Zertifikaten ausgeführt, die in der angegebenen TrustConfig konfiguriert sind.

Nur zulässig, wenn die Richtlinie mit externen HTTPS-Load-Balancern verwendet werden soll.

tier

enum (Tier)

Gegenseitige TLS-Stufe.

Nur zulässig, wenn die Richtlinie mit externen HTTPS-Load-Balancern verwendet werden soll.

ClientValidationMode

Modus für gegenseitige TLS-Zertifikatvalidierung.

Enums
CLIENT_VALIDATION_MODE_UNSPECIFIED Nicht zulässig.
ALLOW_INVALID_OR_MISSING_CLIENT_CERT Verbindung zulassen, auch wenn die Validierung des Clientzertifikats durch die Zertifikatskette fehlgeschlagen ist oder kein Clientzertifikat vorgelegt wurde. Der Besitz des privaten Schlüssels wird immer geprüft, wenn das Clientzertifikat vorgelegt wurde. Bei diesem Modus muss das Backend die Verarbeitung von Daten implementieren, die aus einem Clientzertifikat extrahiert werden, um den Peer zu authentifizieren oder Verbindungen abzulehnen, wenn der Fingerabdruck des Clientzertifikats fehlt.
REJECT_INVALID

Verlangen Sie ein Clientzertifikat und lassen Sie die Verbindung zum Backend nur zu, wenn die Validierung des Clientzertifikats bestanden wurde.

Wenn festgelegt, ist ein Verweis auf eine nicht leere TrustConfig erforderlich, die in clientValidationTrustConfig angegeben ist.

Stufe

Gegenseitige TLS-Stufe für XLB.

Enums
TIER_UNSPECIFIED Wenn die Stufe nicht in der Anfrage angegeben ist, wählt das System einen Standardwert – derzeit die Stufe STANDARD.
STANDARD Standardstufe. In erster Linie für Softwareanbieter (Dienst-zu-Dienst-/API-Kommunikation).
ADVANCED Erweiterte Stufe. Für Kunden in streng regulierten Umgebungen mit längeren Schlüsseln und komplexen Zertifikatsketten.

TlsVersion

TLS-Version für die TLS-Versionseinstellung von CSM Gateway.

Enums
TLS_VERSION_UNSPECIFIED
TLS_V1_0
TLS_V1_1
TLS_V1_2
TLS_V1_3

Methoden

create

Erstellt eine neue ServerTlsPolicy in einem bestimmten Projekt und an einem bestimmten Standort.

delete

Löscht eine einzelne ServerTlsPolicy.

get

Ruft Details zu einer einzelnen ServerTlsPolicy ab.

getIamPolicy

Ruft die Richtlinie für die Zugriffssteuerung für eine Ressource ab.

list

Listet ServerTlsPolicies in einem bestimmten Projekt und an einem bestimmten Standort auf.

patch

Aktualisiert die Parameter einer einzelnen ServerTlsPolicy.

setIamPolicy

Legt die Richtlinie für die Zugriffssteuerung für die angegebene Ressource fest.

testIamPermissions

Gibt die Berechtigungen des Aufrufers für die angegebene Ressource zurück.