Eine Autorisierungsrichtlinie definiert Regeln für die Quelle des eingehenden Traffics und die für diese Quelle zulässigen oder eingeschränkten Vorgänge. Eine Autorisierungsrichtlinie beschreibt die Bedingungen, unter denen eine Regel gilt, und gibt eine Aktion an, um den Traffic entweder zuzulassen, abzulehnen oder weiter zu prüfen.
Auf dieser Seite finden Sie eine Übersicht über Autorisierungsrichtlinien für die folgenden Application Load Balancer:
- Globale externe Application Load Balancer
- Regionale externe Application Load Balancer
- Regionsübergreifende interne Application Load Balancer
- Regionale interne Application Load Balancer
Mit Autorisierungsrichtlinien können Sie Zugriffssteuerungsprüfungen für eingehenden Traffic an Application Load Balancer einrichten. Anfragen, die diese Prüfungen bestehen, werden an Backend-Dienste weitergeleitet. Anfragen, die diese Prüfungen nicht bestehen, werden mit einer nicht autorisierten Antwort beendet.
Komponenten von Autorisierungsrichtlinienregeln
Eine Autorisierungsrichtlinienregel besteht aus den folgenden Komponenten:
from
: Gibt die Identität des Clients an, die gemäß der Regel zulässig ist. Die Identität kann aus einem Clientzertifikat in einer mTLS-Verbindung abgeleitet werden oder es kann sich um die Umgebungsdentität handeln, die der Client-VM zugewiesen ist, z. B. aus einem Dienstkonto oder einem sicheren Tag.to
: Gibt die von der Regel zulässigen Vorgänge an, z. B. die URLs, auf die zugegriffen werden kann, oder die zulässigen HTTP-Methoden.when
: Hier können Sie zusätzliche Einschränkungen definieren, die erfüllt werden müssen. Sie können Common Expression Language (CEL)-Ausdrücke verwenden, um die Einschränkungen zu definieren.action
: Gibt die Aktion der Regel an. Diese kannALLOW
,DENY
oderCUSTOM
sein.
Aktionen für Autorisierungsrichtlinien
Bei der Auswertung einer Anfrage wird durch eine Autorisierungsrichtlinie eine der folgenden Aktionen ausgeführt:
ALLOW
: Gewährt Zugriff auf die angeforderte Ressource, wenn die Anfrage den in der Autorisierungsrichtlinie definierten Regeln entspricht. Die Autorisierungsrichtlinie blockiert den Zugriff auf die angeforderte Ressource, wenn die Anfrage nicht mit den in der Autorisierungsrichtlinie definierten Regeln übereinstimmt. Eine Anfrage wird abgelehnt, wenn sie nicht mit einerALLOW
-Richtlinie übereinstimmt, auch wenn sie von anderen Richtlinien zugelassen wird.DENY
: blockiert den Zugriff auf die Ressource, wenn eine Anfrage mit einer der Regeln in einerDENY
-Richtlinie übereinstimmt. Die Autorisierungsrichtlinie gewährt Zugriff auf die angeforderte Ressource, wenn die Anfrage nicht mit den in der Autorisierungsrichtlinie definierten Regeln übereinstimmt. Eine Anfrage wird abgelehnt, wenn sie einerDENY
-Richtlinie entspricht, auch wenn andere Richtlinien sie zulassen.CUSTOM
: Ermöglicht die Einbindung in externe Autorisierungssysteme für komplexe Autorisierungsentscheidungen.CUSTOM
-Aktionen werden für Richtlinien verwendet, bei denen Diensterweiterungen oder IAP für Autorisierungsentscheidungen verwendet werden.
Reihenfolge der Auswertung von Autorisierungsrichtlinien
Wenn einer einzelnen Ressource mehrere Autorisierungsrichtlinien zugewiesen sind, werden sie in der folgenden Reihenfolge ausgewertet, um zu bestimmen, ob eine Anfrage zugelassen oder abgelehnt wird.
Richtlinien mit
CUSTOM
-Aktionen: Wenn dieCUSTOM
-Richtlinie die Anfrage ablehnt, wird sie sofort abgelehnt.DENY
- oderALLOW
-Richtlinien werden nicht ausgewertet, auch wenn sie konfiguriert sind.Richtlinien mit
DENY
-Aktionen: Wenn eineDENY
-Richtlinie mit der Anfrage übereinstimmt, wird die Anfrage abgelehnt.ALLOW
-Richtlinien werden nicht ausgewertet, auch wenn sie konfiguriert sind.Richtlinien mit
ALLOW
-Aktionen: Wenn keineALLOW
-Richtlinien vorhanden sind oder eineALLOW
-Richtlinie mit der Anfrage übereinstimmt, wird die Anfrage zugelassen. Wenn jedoch keineALLOW
-Richtlinien mit der Anfrage übereinstimmen, wird die Anfrage abgelehnt.
Autorisierungsentscheidungen delegieren
Bei komplexen Autorisierungsentscheidungen, die nicht mit der Autorisierungsrichtlinie ausgedrückt werden können, delegieren Sie die Autorisierungsentscheidung an benutzerdefinierte Autorisierungsanbieter wie Identity-Aware Proxy (IAP) oder erstellen Sie eine eigene Autorisierungserweiterung, die mit Diensterweiterungen erstellt wurde. Dies ist nützlich, wenn Sie Ihre lokale Autorisierungs-Engine oder externe Identitätsanbieter über IAP verwenden möchten.
IAP: Konfigurieren Sie IAP, um den Zugriff auf Anwendungen hinter den Weiterleitungsregeln des Application Load Balancers zu steuern. IAP prüft die Nutzeridentität und den Kontext, um den Zugriff zu bestimmen. Außerdem kann IAP IAM-Dienstkontotokens (Identity and Access Management) authentifizieren und IAM-Richtlinien auswerten, um den Zugriff auf Backend-Buckets zu schützen, die über den Application Load Balancer freigegeben werden. Weitere Informationen finden Sie unter Autorisierung an IAP und IAM delegieren.
In den folgenden Fällen können Sie die Authentifizierung an IAP und IAM delegieren:
- Verwenden Sie IAM für die Berechtigungsverwaltung.
- Implementieren Sie kontextsensitiven Zugriff.
- Verwenden Sie die browserbasierte Authentifizierung für Webanwendungen, die eine interaktive Authentifizierung erfordern.
Diensterweiterungen: Delegieren Sie Autorisierungsentscheidungen an Ihre benutzerdefinierte Autorisierungs-Engine, die auf Google Cloud-VM-Instanzen oder lokal ausgeführt wird. So können komplexe Autorisierungsrichtlinien flexibel festgelegt werden, die nicht durch vordefinierte Richtlinien abgedeckt sind. Weitere Informationen finden Sie unter Autorisierungserweiterung konfigurieren.
Preise
Autorisierungsrichtlinien werden während des Vorschauzeitraums nicht berechnet. Bei der Verwendung von Google Cloud-Load-Balancern fallen jedoch Netzwerkgebühren an. Preisinformationen finden Sie unter Preise.