Ressource: AuthorizationPolicy
AuthorizationPolicy ist eine Ressource, die angibt, wie ein Server eingehende Verbindungen autorisieren 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.
JSON-Darstellung |
---|
{ "name": string, "description": string, "createTime": string, "updateTime": string, "labels": { string: string, ... }, "action": enum ( |
Felder | |
---|---|
name |
Erforderlich. Name der AuthorizationPolicy-Ressource. Sie stimmt mit dem Muster |
description |
Optional. Freitextbeschreibung der Ressource. |
createTime |
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: |
updateTime |
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: |
labels |
Optional. Label-Tags, die mit der Ressource „AuthorizationPolicy“ verknüpft sind. Ein Objekt, das eine Liste von |
action |
Erforderlich. Die Aktion, die ausgeführt werden soll, wenn eine Regel übereinstimmt. Mögliche Werte sind „ALLOW“ (Zulassen) oder „DENY“ (Verweigern). |
rules[] |
Optional. Liste der Regeln, die abgeglichen werden sollen. Mindestens eine der Regeln muss übereinstimmen, damit die im Feld „action“ angegebene Aktion ausgeführt wird. Eine Regel ist eine Übereinstimmung, wenn Quell- und Ziel übereinstimmen. Wenn Sie dieses Feld leer lassen, wird die im Feld |
Aktion
Mögliche Werte, die festlegen, welche Aktion ausgeführt werden soll.
Enums | |
---|---|
ACTION_UNSPECIFIED |
Standardwert. |
ALLOW |
Gewähren Sie den Zugriff. |
DENY |
Lehnen Sie den Zugriff ab. Ablehnungsregeln sollten vermieden werden, es sei denn, sie werden verwendet, um einen Standard-Fallback für „Alle ablehnen“ bereitzustellen. |
Regel
Spezifikation von Regeln.
JSON-Darstellung |
---|
{ "sources": [ { object ( |
Felder | |
---|---|
sources[] |
Optional. Liste der Attribute für die Besucherquelle. Alle Quellen müssen übereinstimmen. Eine Quelle stimmt überein, wenn sowohl die Principals als auch die IP-Blöcke übereinstimmen. Wenn das Feld nicht festgelegt ist, wird die im Feld „action“ angegebene Aktion ohne Regelprüfungen für die Quelle angewendet. |
destinations[] |
Optional. Liste der Attribute für das Ziel des Traffics. Alle Ziele müssen übereinstimmen. Ein Ziel wird als übereinstimmend eingestuft, wenn eine Anfrage mit allen angegebenen Hosts, Ports, Methoden und Headern übereinstimmt. Wenn das Feld nicht festgelegt ist, wird die im Feld „action“ angegebene Aktion ohne Regelprüfungen für das Ziel angewendet. |
Quelle
Angabe von Zugriffsquellenattributen
JSON-Darstellung |
---|
{ "principals": [ string ], "ipBlocks": [ string ] } |
Felder | |
---|---|
principals[] |
Optional. Liste der Peer-Identitäten, die für die Autorisierung abgeglichen werden sollen. Mindestens ein Hauptkonto muss übereinstimmen. Jeder Peer kann eine genaue Übereinstimmung, eine Präfixübereinstimmung (z. B. „namespace/*“) oder eine Suffixübereinstimmung (z. B. „*/service-account“) oder eine Anwesenheitsübereinstimmung „*“ sein. Eine Autorisierung, die auf dem Prinzipalnamen ohne Zertifikatsvalidierung basiert (über die ServerTlsPolicy-Ressource konfiguriert), gilt als unsicher. |
ipBlocks[] |
Optional. Liste der CIDR-Bereiche, die anhand der Quell-IP-Adresse abgeglichen werden sollen. Mindestens ein IP-Block sollte übereinstimmen. Einzelne IP (z.B. „1.2.3.4“) und CIDR (z.B. „1.2.3.0/24“) werden unterstützt. Eine Autorisierung, die nur auf der Quell-IP-Adresse basiert, sollte vermieden werden. Die IP-Adressen aller Load Balancer oder Proxys sollten als nicht vertrauenswürdig eingestuft werden. |
Ziel
Spezifikation von Zielattributen für Zugriffe.
JSON-Darstellung |
---|
{
"hosts": [
string
],
"ports": [
integer
],
"methods": [
string
],
"httpHeaderMatch": {
object ( |
Felder | |
---|---|
hosts[] |
Erforderlich. Liste der Hostnamen, die abgeglichen werden sollen. Wird mit dem Header „:authority“ in HTTP-Anfragen abgeglichen. Mindestens ein Host sollte übereinstimmen. Jeder Host kann eine genaue Übereinstimmung, eine Präfixübereinstimmung (z. B. „meinedomain.*“) oder eine Suffixübereinstimmung (z. B. „*.meineorganisation.de“) oder eine beliebige Übereinstimmung („*“) sein. |
ports[] |
Erforderlich. Liste der Zielports, die abgeglichen werden sollen. Mindestens ein Anschluss muss übereinstimmen. |
methods[] |
Optional. Eine Liste der HTTP-Methoden für den Abgleich. Mindestens eine Methode sollte übereinstimmen. Sollte nicht für gRPC-Dienste festgelegt werden. |
httpHeaderMatch |
Optional. Vergleich mit dem Schlüssel/Wert-Paar im HTTP-Header. Bietet eine flexible Übereinstimmung basierend auf HTTP-Headern für potenziell erweiterte Anwendungsfälle. Mindestens eine Überschrift sollte übereinstimmen. Verwenden Sie keine Header-Übereinstimmungen, um Autorisierungsentscheidungen zu treffen, es sei denn, es besteht eine hohe Wahrscheinlichkeit, dass Anfragen über einen vertrauenswürdigen Client oder Proxy eingehen. |
HttpHeaderMatch
Spezifikation von HTTP-Header-Abgleichsattributen.
JSON-Darstellung |
---|
{ "headerName": string, // Union field |
Felder | |
---|---|
headerName |
Erforderlich. Der Name des HTTP-Headers, der abgeglichen werden soll. Verwenden Sie für den Abgleich mit der Autorität der HTTP-Anfrage ein „headerMatch“ mit dem Headernamen „:authority“. Verwenden Sie den Headernamen „:method“, um die Methode einer Anfrage abzugleichen. |
Union-Feld Für |
|
regexMatch |
Erforderlich. Der Wert des Headers muss mit dem in „regexMatch“ angegebenen regulären Ausdruck übereinstimmen. Die Grammatik für reguläre Ausdrücke finden Sie unter en.cppreference.com/w/cpp/regex/ecmascript. Verwenden Sie für den Abgleich mit einem in der HTTP-Anfrage angegebenen Port ein „headerMatch“, bei dem „headerName“ auf „Host“ festgelegt ist, und einen regulären Ausdruck, der der Portspezifikation des RFC2616-Host-Headers entspricht. |
Methoden |
|
---|---|
|
Erstellt eine neue Autorisierungsrichtlinie in einem bestimmten Projekt und an einem bestimmten Standort. |
|
Löscht eine einzelne AuthorizationPolicy. |
|
Ruft Details zu einer einzelnen Autorisierungsrichtlinie ab. |
|
Ruft die Zugriffssteuerungsrichtlinie für eine Ressource ab. |
|
Listet Autorisierungsrichtlinien in einem angegebenen Projekt und an einem angegebenen Standort auf. |
|
Aktualisiert die Parameter einer einzelnen Autorisierungsrichtlinie. |
|
Legt die Zugriffskontrollrichtlinie für die angegebene Ressource fest. |
|
Gibt die Berechtigungen des Aufrufers für die angegebene Ressource zurück. |