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 Application Load Balancern akzeptierten Form kann nur an TargetHttpsProxy mit einem EXTERNAL-, EXTERNAL_MANAGED- oder INTERNAL_MANAGED-Load-Balancing-Schema angehängt werden. Traffic Director-kompatible ServerTlsPolicies können mit dem Traffic Director-INTERNAL_SELF_MANAGED-Load Balancing-Schema an EndpointPolicy und TargetHttpsProxy 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. Sie stimmt mit dem Muster projects/*/locations/{location}/serverTlsPolicies/{serverTlsPolicy} überein.

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, der angibt, wann 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)

Mit der Ressource verknüpfte Label-Tags.

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“ (falsch) gesetzt werden.

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. Lesen Sie die Dokumentation zu anderen Verschlüsselungsmodi, um die Kompatibilität zu prüfen.

Sie sollten diese Option verwenden, wenn Sie Ihre Bereitstellung direkt auf TLS umstellen möchten, aber gleichzeitig TLS- und nicht TLS-Traffic den Port 80 erreichen.

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 Nur-Text 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 zum Bereitstellen von Peer-Validierungszertifikaten für die Peer-zu-Peer-Authentifizierung (Mutual TLS – mTLS). Wenn keine Angabe erfolgt, 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
}
Felder
clientValidationMode

enum (ClientValidationMode)

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

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

clientValidationCa[]

object (ValidationCA)

Erforderlich, wenn die Richtlinie mit Traffic Director verwendet werden soll. Bei Application Load Balancern muss er leer sein.

Hier wird der Mechanismus zum Abrufen des Zertifikats der Zertifizierungsstelle definiert, mit dem das Clientzertifikat validiert wird.

clientValidationTrustConfig

string

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

Wenn angegeben, wird die Kettenüberprüfung anhand der in der angegebenen TrustConfig konfigurierten Zertifikate durchgeführt.

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

ClientValidationMode

Modus für die gegenseitige TLS-Zertifikatsüberprüfung.

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, dass der private Schlüssel ausgestellt wurde, wird immer geprü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 Clientzertifikat-Fingerabdruck fehlt.
REJECT_INVALID

Erforderlich ist ein Clientzertifikat und die Verbindung zum Backend wird nur zugelassen, wenn die Validierung des Clientzertifikats bestanden hat.

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

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 Zugriffssteuerungsrichtlinie für eine Ressource ab.

list

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

patch

Aktualisiert die Parameter einer einzelnen ServerTlsPolicy.

setIamPolicy

Legt die Zugriffskontrollrichtlinie für die angegebene Ressource fest.

testIamPermissions

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