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 im von Application Load Balancern akzeptierten Format kann nur an TargetHttpsProxy mit einem EXTERNAL, EXTERNAL_MANAGED oder INTERNAL_MANAGED-Load-Balancing-Schema angehängt werden. Mit Traffic Director kompatible ServerTlsPolicies können an EndpointPolicy und TargetHttpsProxy mit dem Traffic Director-Load-Balancing-Schema INTERNAL_SELF_MANAGED angehängt werden.

JSON-Darstellung
{
  "name": string,
  "description": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "allowOpen": boolean,
  "serverCertificate": {
    object (CertificateProvider)
  },
  "mtlsPolicy": {
    object (MTLSPolicy)
  }
}
Felder
name

string

Erforderlich. Name der „ServerTlsPolicy“-Ressource. Entspricht dem Muster projects/*/locations/{location}/serverTlsPolicies/{serverTlsPolicy}.

description

string

Textbeschreibung der Ressource.

createTime

string (Timestamp format)

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

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

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

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

labels

map (key: string, value: string)

Die Reihe an Label-Tags, die mit der Ressource verknüpft 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. Für Application Load Balancer-Richtlinien muss es auf „false“ gesetzt sein.

Bestimmt, ob der Server Klartextverbindungen zulässt. Wenn das Kästchen markiert ist, lässt der Server Klartextverbindungen zu. Standardmäßig ist es auf „false“ gesetzt. Diese Einstellung schließt andere Verschlüsselungsmodi nicht aus. Wenn beispielsweise allowOpen und mtlsPolicy festgelegt sind, lässt der Server sowohl Klartext- als auch mTLS-Verbindungen zu. Informationen zur Kompatibilität finden Sie in der Dokumentation zu anderen Verschlüsselungsmodi.

Verwenden Sie diese Option, wenn Sie Ihre Bereitstellung direkt auf TLS aktualisieren möchten, während gemischter TLS- und Nicht-TLS-Traffic den Port :80 erreicht.

serverCertificate

object (CertificateProvider)

Optional, wenn die Richtlinie mit Traffic Director verwendet werden soll. Für Application Load Balancer muss das Feld leer sein.

Definiert einen Mechanismus zur Bereitstellung der Serveridentität (öffentliche und private Schlüssel). Kann nicht mit allowOpen kombiniert werden, da ein permissiver Modus, der sowohl Klartext als auch TLS zulässt, nicht unterstützt wird.

mtlsPolicy

object (MTLSPolicy)

Dieses Feld ist erforderlich, wenn die Richtlinie mit Application 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 (gegenseitiges 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, lässt der Server sowohl Klartext- als auch mTLS-Verbindungen zu.

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 der clientValidationMode an, wie mit der Clientverbindung umgegangen wird.

Erforderlich, wenn die Richtlinie mit Application Load Balancern verwendet werden soll. Für Traffic Director muss das Feld leer sein.

clientValidationCa[]

object (ValidationCA)

Erforderlich, wenn die Richtlinie mit Traffic Director verwendet werden soll. Für Application Load Balancer muss das Feld leer sein.

Definiert den Mechanismus, mit dem das Zertifikat der Zertifizierungsstelle für die Validierung des Clientzertifikats abgerufen wird.

clientValidationTrustConfig

string

Verweis auf die TrustConfig aus dem Namespace certificatemanager.googleapis.com.

Wenn angegeben, wird die Kettenvalidierung für die in der angegebenen TrustConfig konfigurierten Zertifikate durchgeführt.

Nur zulässig, wenn die Richtlinie mit Application Load Balancern verwendet werden soll.

tier

enum (Tier)

Stufe für gegenseitiges TLS.

Nur zulässig, wenn die Richtlinie mit Application Load Balancern verwendet werden soll.

ClientValidationMode

Modus für die Zertifikatvalidierung für gegenseitiges TLS.

Enums
CLIENT_VALIDATION_MODE_UNSPECIFIED Nicht zulässig
ALLOW_INVALID_OR_MISSING_CLIENT_CERT Verbindung zulassen, auch wenn die Zertifikatskettenvalidierung des Clientzertifikats fehlgeschlagen ist oder kein Clientzertifikat vorgelegt wurde. Der Nachweis des Besitzes des privaten Schlüssels wird immer überprüft, wenn ein Clientzertifikat vorgelegt wurde. In diesem Modus muss das Backend die Verarbeitung von Daten implementieren, die aus einem Clientzertifikat extrahiert wurden, um den Peer zu authentifizieren oder Verbindungen abzulehnen, wenn der Fingerabdruck des Clientzertifikats fehlt.
REJECT_INVALID

Ein Clientzertifikat ist erforderlich und die Verbindung zum Backend ist nur zulässig, wenn die Validierung des Clientzertifikats erfolgreich war.

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

Stufe

Stufe für gegenseitiges TLS für XLB.

Enums
TIER_UNSPECIFIED Wenn in der Anfrage keine Stufe angegeben ist, wählt das System einen Standardwert aus – derzeit die Stufe STANDARD.
STANDARD Standardstufe. Hauptsächlich für Softwareanbieter (Dienst-zu-Dienst-/API-Kommunikation).
ADVANCED Erweiterte Stufe. Für Kunden in stark regulierten Umgebungen, die längere Schlüssel und komplexe Zertifikatsketten angeben.

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.

list

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

patch

Aktualisiert die Parameter einer einzelnen „ServerTlsPolicy“.