Wie AWS WAF arbeitet mit IAM - AWS WAFAWS Firewall Manager, und AWS Shield Advanced

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Wie AWS WAF arbeitet mit IAM

In diesem Abschnitt wird erklärt, wie Sie die Funktionen von IAM with verwenden AWS WAF.

Vor der Verwendung IAM zur Verwaltung des Zugriffs auf AWS WAF, erfahren Sie, welche IAM Funktionen Ihnen zur Verfügung stehen AWS WAF.

Um einen allgemeinen Überblick darüber zu erhalten, wie AWS WAF und andere AWS Dienste funktionieren mit den meisten IAM Funktionen, siehe AWS Dienste, mit denen IAM im IAMBenutzerhandbuch gearbeitet werden kann.

Identitätsbasierte Richtlinien für AWS WAF

Unterstützt Richtlinien auf Identitätsbasis: Ja

Identitätsbasierte Richtlinien sind Dokumente mit JSON Berechtigungsrichtlinien, die Sie an eine Identität anhängen können, z. B. an einen IAM Benutzer, eine Benutzergruppe oder eine Rolle. Diese Richtlinien steuern, welche Aktionen die Benutzer und Rollen für welche Ressourcen und unter welchen Bedingungen ausführen können. Informationen zum Erstellen einer identitätsbasierten Richtlinie finden Sie unter IAMRichtlinien erstellen im Benutzerhandbuch. IAM

Mit IAM identitätsbasierten Richtlinien können Sie zulässige oder verweigerte Aktionen und Ressourcen sowie die Bedingungen angeben, unter denen Aktionen zulässig oder verweigert werden. Sie können den Prinzipal nicht in einer identitätsbasierten Richtlinie angeben, da er für den Benutzer oder die Rolle gilt, dem er zugeordnet ist. Weitere Informationen zu allen Elementen, die Sie in einer JSON Richtlinie verwenden können, finden Sie im IAMBenutzerhandbuch unter Referenz zu IAM JSON Richtlinienelementen.

Hier finden Sie Beispiele für AWS WAF Identitätsbasierte Richtlinien finden Sie unter. Beispiele für identitätsbasierte Richtlinien für AWS WAF

Ressourcenbasierte Richtlinien innerhalb AWS WAF

Unterstützt ressourcenbasierte Richtlinien: Ja

Ressourcenbasierte Richtlinien sind JSON Richtliniendokumente, die Sie an eine Ressource anhängen. Beispiele für ressourcenbasierte Richtlinien sind IAM Rollenvertrauensrichtlinien und Amazon S3 S3-Bucket-Richtlinien. In Services, die ressourcenbasierte Richtlinien unterstützen, können Service-Administratoren sie verwenden, um den Zugriff auf eine bestimmte Ressource zu steuern. Für die Ressource, an welche die Richtlinie angehängt ist, legt die Richtlinie fest, welche Aktionen ein bestimmter Prinzipal unter welchen Bedingungen für diese Ressource ausführen kann. Sie müssen in einer ressourcenbasierten Richtlinie einen Prinzipal angeben. Prinzipale können Konten, Benutzer, Rollen, Verbundbenutzer oder AWS-Services.

Um den kontoübergreifenden Zugriff zu ermöglichen, können Sie in einer ressourcenbasierten Richtlinie ein ganzes Konto oder IAM Entitäten in einem anderen Konto als Prinzipal angeben. Durch das Hinzufügen eines kontoübergreifenden Auftraggebers zu einer ressourcenbasierten Richtlinie ist nur die halbe Vertrauensbeziehung eingerichtet. Wenn sich der Prinzipal und die Ressource unterscheiden AWS-Konten, muss ein IAM Administrator des vertrauenswürdigen Kontos auch der Prinzipalentität (Benutzer oder Rolle) die Berechtigung zum Zugriff auf die Ressource gewähren. Sie erteilen Berechtigungen, indem Sie der juristischen Stelle eine identitätsbasierte Richtlinie anfügen. Wenn jedoch eine ressourcenbasierte Richtlinie Zugriff auf einen Prinzipal in demselben Konto gewährt, ist keine zusätzliche identitätsbasierte Richtlinie erforderlich. Weitere Informationen finden Sie IAMim IAMBenutzerhandbuch unter Kontoübergreifender Ressourcenzugriff.

AWS WAF verwendet ressourcenbasierte Richtlinien, um die gemeinsame Nutzung von Regelgruppen zwischen Konten zu unterstützen. Sie teilen sich eine Regelgruppe, die Ihnen gehört, mit einer anderen AWS Konto durch Bereitstellung der ressourcenbasierten Richtlinieneinstellungen für AWS WAF APIanrufen PutPermissionPolicy oder zu einem gleichwertigen Gerät CLI oder SDK Anruf. Weitere Informationen, einschließlich Beispielen und Links zur Dokumentation für die anderen verfügbaren Sprachen, finden Sie PutPermissionPolicyin der AWS WAF APIReferenz. Diese Funktionalität ist nicht auf andere Weise verfügbar, z. B. über die Konsole oder AWS CloudFormation.

Politische Maßnahmen für AWS WAF

Unterstützt Richtlinienaktionen: Ja

Administratoren können verwenden AWS JSONRichtlinien, um festzulegen, wer Zugriff auf was hat. Das bedeutet, welcher Prinzipal kann Aktionen für welche Ressourcen und unter welchen Bedingungen ausführen.

Das Action Element einer JSON Richtlinie beschreibt die Aktionen, mit denen Sie den Zugriff in einer Richtlinie zulassen oder verweigern können. Richtlinienaktionen haben normalerweise denselben Namen wie die zugehörigen AWS APIBetrieb. Es gibt einige Ausnahmen, z. B. Aktionen, für die nur Berechtigungen erforderlich sind und für die es keine entsprechende Operation gibt. API Es gibt auch einige Operationen, die mehrere Aktionen in einer Richtlinie erfordern. Diese zusätzlichen Aktionen werden als abhängige Aktionen bezeichnet.

Schließen Sie Aktionen in eine Richtlinie ein, um Berechtigungen zur Durchführung der zugeordneten Operation zu erteilen.

Um eine Liste von zu sehen AWS WAF Die jeweiligen Aktionen und Berechtigungen finden Sie unter Aktionen definiert von AWS WAF V2 in der Serviceautorisierungsreferenz.

Politische Maßnahmen in AWS WAF verwenden Sie vor der Aktion das folgende Präfix:

wafv2

Um mehrere Aktionen in einer einzigen Anweisung anzugeben, trennen Sie sie mit Kommata:

"Action": [ "wafv2:action1", "wafv2:action2" ]

Sie können auch Platzhalter verwenden, um mehrere Aktionen anzugeben. Zum Beispiel, um alle Aktionen anzugeben in AWS WAF die mit beginnenList, schließen die folgende Aktion ein:

"Action": "wafv2:List*"

Um Beispiele zu sehen AWS WAF Identitätsbasierte Richtlinien finden Sie unter. Beispiele für identitätsbasierte Richtlinien für AWS WAF

Aktionen, für die zusätzliche Berechtigungseinstellungen erforderlich sind

Für einige Aktionen sind Berechtigungen erforderlich, die unter Aktionen definiert von nicht vollständig beschrieben werden können AWS WAF V2 in der Referenz zur Serviceautorisierung. Dieser Abschnitt enthält zusätzliche Informationen zu Berechtigungen.

Berechtigungen für AssociateWebACL

In diesem Abschnitt sind die Berechtigungen aufgeführt, die erforderlich sind, um ein Web mit einer Ressource ACL zu verknüpfen, indem AWS WAF AktionAssociateWebACL.

Verwenden Sie für CloudFront Amazon-Verteilungen anstelle dieser Aktion die CloudFront AktionUpdateDistribution. Weitere Informationen finden Sie UpdateDistributionin der CloudFront APIAmazon-Referenz.

APIAmazon-Gateway REST API

Erfordert die Erlaubnis, API Gateway für SetWebACL den REST API Ressourcentyp aufzurufen und aufzurufen AWS WAF AssociateWebACLin einem WebACL.

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "apigateway:SetWebACL" ], "Resource": [ "arn:aws:apigateway:*::/restapis/*/stages/*" ] }
Application Load Balancer

Erfordert die Erlaubnis, elasticloadbalancing:SetWebACL Aktionen für den Application Load Balancer Balancer-Ressourcentyp aufzurufen und aufzurufen AWS WAF AssociateWebACLin einem WebACL.

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "elasticloadbalancing:SetWebACL" ], "Resource": [ "arn:aws:elasticloadbalancing:*:account-id:loadbalancer/app/*/*" ] }
AWS AppSync GraphQL API

Erfordert die Erlaubnis zum Anrufen AWS AppSync SetWebACLauf dem API GraphQL-Ressourcentyp und zum Aufrufen AWS WAF AssociateWebACLin einem WebACL.

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "appsync:SetWebACL" ], "Resource": [ "arn:aws:appsync:*:account-id:apis/*" ] }
Amazon-Cognito-Benutzerpool

Erfordert die Erlaubnis, die Amazon Cognito AssociateWebACL Cognito-Aktion für den Ressourcentyp des Benutzerpools aufzurufen und aufzurufen AWS WAF AssociateWebACLin einem WebACL.

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:AssociateWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:account-id:userpool/*" ] }
AWS App Runner Service nicht zulässig

Erfordert die Erlaubnis, die App AssociateWebACL Runner-Aktion für den App Runner-Dienstressourcentyp aufzurufen und aufzurufen AWS WAF AssociateWebACLin einem WebACL.

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "apprunner:AssociateWebAcl" ], "Resource": [ "arn:aws:apprunner:*:account-id:service/*/*" ] }
AWS Instanz mit verifiziertem Zugriff

Erfordert die Erlaubnis, die ec2:AssociateVerifiedAccessInstanceWebAcl Aktion für den Ressourcentyp „Verified Access“ aufzurufen und aufzurufen AWS WAF AssociateWebACLin einem WebACL.

{ "Sid": "AssociateWebACL1", "Effect": "Allow", "Action": [ "wafv2:AssociateWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "AssociateWebACL2", "Effect": "Allow", "Action": [ "ec2:AssociateVerifiedAccessInstanceWebAcl" ], "Resource": [ "arn:aws:ec2:*:account-id:verified-access-instance/*" ] }

Berechtigungen für DisassociateWebACL

In diesem Abschnitt sind die Berechtigungen aufgeführt, die erforderlich sind, um die Zuordnung eines ACL Webs zu einer Ressource mithilfe der AWS WAF Aktion. DisassociateWebACL

Verwenden Sie für CloudFront Amazon-Verteilungen anstelle dieser Aktion die CloudFront Aktion UpdateDistribution mit einer leeren ACL Web-ID. Weitere Informationen finden Sie UpdateDistributionin der CloudFront APIAmazon-Referenz.

APIAmazon-Gateway REST API

Erfordert die Erlaubnis, API Gateway für SetWebACL den REST API Ressourcentyp aufzurufen. Erfordert keine Anruferlaubnis AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL", "Effect": "Allow", "Action": [ "apigateway:SetWebACL" ], "Resource": [ "arn:aws:apigateway:*::/restapis/*/stages/*" ] }
Application Load Balancer

Erfordert die Erlaubnis, die elasticloadbalancing:SetWebACL Aktion für den Application Load Balancer Balancer-Ressourcentyp aufzurufen. Erfordert keine Anruferlaubnis AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL", "Effect": "Allow", "Action": [ "elasticloadbalancing:SetWebACL" ], "Resource": [ "arn:aws:elasticloadbalancing:*:account-id:loadbalancer/app/*/*" ] }
AWS AppSync GraphQL API

Erfordert die Erlaubnis zum Anrufen AWS AppSync SetWebACLauf dem API GraphQL-Ressourcentyp. Erfordert keine Anruferlaubnis AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL", "Effect": "Allow", "Action": [ "appsync:SetWebACL" ], "Resource": [ "arn:aws:appsync:*:account-id:apis/*" ] }
Amazon-Cognito-Benutzerpool

Erfordert die Erlaubnis, die Amazon Cognito DisassociateWebACL Cognito-Aktion für den Ressourcentyp des Benutzerpools aufzurufen und aufzurufen AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:DisassociateWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:account-id:userpool/*" ] }
AWS App Runner Service nicht zulässig

Erfordert die Erlaubnis, die App DisassociateWebACL Runner-Aktion für den App Runner-Dienstressourcentyp aufzurufen und aufzurufen AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "apprunner:DisassociateWebAcl" ], "Resource": [ "arn:aws:apprunner:*:account-id:service/*/*" ] }
AWS Verifizierte Access-Instanz

Erfordert die Erlaubnis, die ec2:DisassociateVerifiedAccessInstanceWebAcl Aktion für den Ressourcentyp „Verified Access“ aufzurufen und aufzurufen AWS WAF DisassociateWebACL.

{ "Sid": "DisassociateWebACL1", "Effect": "Allow", "Action": "wafv2:DisassociateWebACL", "Resource": "*" }, { "Sid": "DisassociateWebACL2", "Effect": "Allow", "Action": [ "ec2:DisassociateVerifiedAccessInstanceWebAcl" ], "Resource": [ "arn:aws:ec2:*:account-id:verified-access-instance/*" ] }

Berechtigungen für GetWebACLForResource

In diesem Abschnitt sind die Berechtigungen aufgeführt, die erforderlich sind, um mit dem Internet ACL auf eine geschützte Ressource zuzugreifen AWS WAF AktionGetWebACLForResource.

Verwenden Sie für CloudFront Amazon-Verteilungen anstelle dieser Aktion die CloudFront AktionGetDistributionConfig. Weitere Informationen finden Sie GetDistributionConfigin der CloudFront APIAmazon-Referenz.

Anmerkung

GetWebACLForResourcebenötigt die Erlaubnis, anzurufenGetWebACL. In diesem Zusammenhang AWS WAF verwendet GetWebACL nur, um zu überprüfen, ob Ihr Konto über die erforderliche Erlaubnis verfügt, um auf das Internet zuzugreifenACL, das GetWebACLForResource zurückkehrt. Wenn Sie anrufenGetWebACLForResource, wird möglicherweise eine Fehlermeldung angezeigt, die darauf hinweist, dass Ihr Konto nicht berechtigt ist, wafv2:GetWebACL auf der Ressource zu arbeiten. AWS WAF fügt diese Art von Fehler nicht zur AWS CloudTrail Verlauf der Ereignisse.

Amazon API Gateway RESTAPI, Application Load Balancer und AWS AppSync GraphQL API

Erfordern Sie die Erlaubnis zum Anrufen AWS WAF GetWebACLForResourceund GetWebACL für ein WebACL.

{ "Sid": "GetWebACLForResource", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }
Amazon-Cognito-Benutzerpool

Erfordert die Erlaubnis, die Amazon Cognito GetWebACLForResource Cognito-Aktion für den Ressourcentyp des Benutzerpools aufzurufen und aufzurufen AWS WAF GetWebACLForResource und GetWebACL.

{ "Sid": "GetWebACLForResource1", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "GetWebACLForResource2", "Effect": "Allow", "Action": [ "cognito-idp:GetWebACLForResource" ], "Resource": [ "arn:aws:cognito-idp:*:account-id:userpool/*" ] }
AWS App Runner Service nicht zulässig

Erfordert die Erlaubnis, die App DescribeWebAclForService Runner-Aktion für den App Runner-Dienstressourcentyp aufzurufen und aufzurufen AWS WAF GetWebACLForResource und GetWebACL.

{ "Sid": "GetWebACLForResource1", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "GetWebACLForResource2", "Effect": "Allow", "Action": [ "apprunner:DescribeWebAclForService" ], "Resource": [ "arn:aws:apprunner:*:account-id:service/*/*" ] }
AWS Verifizierte Access-Instanz

Erfordert die Erlaubnis, die ec2:GetVerifiedAccessInstanceWebAcl Aktion für den Ressourcentyp „Verified Access“ aufzurufen und aufzurufen AWS WAF GetWebACLForResource und GetWebACL.

{ "Sid": "GetWebACLForResource1", "Effect": "Allow", "Action": [ "wafv2:GetWebACLForResource", "wafv2:GetWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "GetWebACLForResource2", "Effect": "Allow", "Action": [ "ec2:GetVerifiedAccessInstanceWebAcl" ], "Resource": [ "arn:aws:ec2:*:account-id:verified-access-instance/*" ] }

Berechtigungen für ListResourcesForWebACL

In diesem Abschnitt sind die Berechtigungen aufgeführt, die erforderlich sind, um die Liste der geschützten Ressourcen für ein Web ACL mithilfe von abzurufen AWS WAF AktionListResourcesForWebACL.

Verwenden Sie für CloudFront Amazon-Verteilungen anstelle dieser Aktion die CloudFront AktionListDistributionsByWebACLId. Weitere Informationen finden Sie ListDistributionsByWebACLIdin der CloudFront APIAmazon-Referenz.

Amazon API Gateway RESTAPI, Application Load Balancer und AWS AppSync GraphQL API

Erfordern Sie die Erlaubnis zum Anrufen AWS WAF ListResourcesForWebACLfür ein WebACL.

{ "Sid": "ListResourcesForWebACL", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }
Amazon-Cognito-Benutzerpool

Erfordert die Erlaubnis, die Amazon Cognito ListResourcesForWebACL Cognito-Aktion für den Ressourcentyp des Benutzerpools aufzurufen und aufzurufen AWS WAF ListResourcesForWebACL.

{ "Sid": "ListResourcesForWebACL1", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "ListResourcesForWebACL2", "Effect": "Allow", "Action": [ "cognito-idp:ListResourcesForWebACL" ], "Resource": [ "arn:aws:cognito-idp:*:account-id:userpool/*" ] }
AWS App Runner Service nicht zulässig

Erfordert die Erlaubnis, die App ListAssociatedServicesForWebAcl Runner-Aktion für den App Runner-Dienstressourcentyp aufzurufen und aufzurufen AWS WAF ListResourcesForWebACL.

{ "Sid": "ListResourcesForWebACL1", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "ListResourcesForWebACL2", "Effect": "Allow", "Action": [ "apprunner:ListAssociatedServicesForWebAcl" ], "Resource": [ "arn:aws:apprunner:*:account-id:service/*/*" ] }
AWS Verifizierte Access-Instanz

Erfordert die Erlaubnis, die ec2:DescribeVerifiedAccessInstanceWebAclAssociations Aktion für den Ressourcentyp „Verified Access“ aufzurufen und aufzurufen AWS WAF ListResourcesForWebACL.

{ "Sid": "ListResourcesForWebACL1", "Effect": "Allow", "Action": [ "wafv2:ListResourcesForWebACL" ], "Resource": [ "arn:aws:wafv2:region:account-id:regional/webacl/*/*" ] }, { "Sid": "ListResourcesForWebACL2", "Effect": "Allow", "Action": [ "ec2:DescribeVerifiedAccessInstanceWebAclAssociations" ], "Resource": [ "arn:aws:ec2:*:account-id:verified-access-instance/*" ] }

Richtlinienressourcen für AWS WAF

Unterstützt Richtlinienressourcen: Ja

Administratoren können Folgendes verwenden AWS JSONRichtlinien, um festzulegen, wer Zugriff auf was hat. Das bedeutet, welcher Prinzipal kann Aktionen für welche Ressourcen und unter welchen Bedingungen ausführen.

Das Resource JSON Richtlinienelement gibt das Objekt oder die Objekte an, für die die Aktion gilt. Anweisungen müssen entweder ein – Resourceoder ein NotResource-Element enthalten. Es hat sich bewährt, eine Ressource mit ihrem Amazon-Ressourcennamen (ARN) anzugeben. Sie können dies für Aktionen tun, die einen bestimmten Ressourcentyp unterstützen, der als Berechtigungen auf Ressourcenebene bezeichnet wird.

Verwenden Sie für Aktionen, die keine Berechtigungen auf Ressourcenebene unterstützen, z. B. Auflistungsoperationen, einen Platzhalter (*), um anzugeben, dass die Anweisung für alle Ressourcen gilt.

"Resource": "*"

Um die Liste von zu sehen AWS WAF Ressourcentypen und ihreARNs, siehe Ressourcen definiert durch AWS WAF V2 in der Serviceautorisierungsreferenz. Informationen darüber, mit welchen Aktionen Sie die ARN einzelnen Ressourcen spezifizieren können, finden Sie unter Aktionen definiert von AWS WAF V2. Um den Zugriff auf eine Teilmenge von zu erlauben oder zu verweigern AWS WAF Ressourcen, nehmen Sie den ARN Wert der Ressource in das resource Element Ihrer Richtlinie auf.

Die ARNs von AWS WAF wafv2Ressourcen haben das folgende Format:

arn:partition:wafv2:region:account-id:scope/resource-type/resource-name/resource-id

Allgemeine Informationen zu ARN Spezifikationen finden Sie unter Amazon Resource Names (ARNs) in der Allgemeine Amazon Web Services-Referenz.

Im Folgenden sind die Anforderungen aufgeführt, die für die ARNs einzelnen wafv2 Ressourcen spezifisch sind:

  • regionFür: AWS WAF Ressourcen, die Sie zum Schutz von CloudFront Amazon-Distributionen verwenden, setzen Sie diesen Wert aufus-east-1. Andernfalls legen Sie hier die Region fest, die Sie mit Ihren geschützten regionalen Ressourcen verwenden.

  • scope: Legen Sie den Geltungsbereich auf global für die Verwendung mit einer CloudFront Amazon-Distribution oder regional für die Verwendung mit einer der regionalen Ressourcen fest, die AWS WAF unterstützt. Die regionalen Ressourcen sind ein Amazon API Gateway RESTAPI, ein Application Load Balancer, ein AWS AppSync GraphQLAPI, ein Amazon Cognito Cognito-Benutzerpool, ein AWS App Runner Service und ein AWS Instanz mit verifiziertem Zugriff.

  • resource-type: Geben Sie einen der folgenden Werte an: webaclrulegroup,ipset,regexpatternset, odermanagedruleset.

  • resource-name: Geben Sie den Namen an, den Sie dem gegeben haben AWS WAF Ressource, oder geben Sie einen Platzhalter (*) an, um alle Ressourcen anzugeben, die die anderen Spezifikationen in der ARN erfüllen. Sie müssen entweder den Ressourcennamen und die Ressourcen-ID oder für beide einen Platzhalter angeben.

  • resource-id: Geben Sie die ID des AWS WAF Ressource, oder geben Sie einen Platzhalter (*) an, um alle Ressourcen anzugeben, die die anderen Spezifikationen in der ARN erfüllen. Sie müssen entweder den Ressourcennamen und die Ressourcen-ID oder für beide einen Platzhalter angeben.

Im Folgenden werden beispielsweise alle Websites ACLs mit regionalem Geltungsbereich für das Konto unter 111122223333 Region ARN us-west-1 angegeben:

arn:aws:wafv2:us-west-1:111122223333:regional/webacl/*/*

Im Folgenden ARN wird die Regelgruppe MyIPManagementRuleGroup mit dem globalen Geltungsbereich für das Konto 111122223333 in Region angegebenus-east-1:

arn:aws:wafv2:us-east-1:111122223333:global/rulegroup/MyIPManagementRuleGroup/1111aaaa-bbbb-cccc-dddd-example-id

Um Beispiele zu sehen AWS WAF Identitätsbasierte Richtlinien finden Sie unter. Beispiele für identitätsbasierte Richtlinien für AWS WAF

Schlüssel für die Bedingungen der Richtlinien für AWS WAF

Unterstützt servicespezifische Richtlinienbedingungsschlüssel: Ja

Administratoren können Folgendes verwenden AWS JSONRichtlinien, um festzulegen, wer Zugriff auf was hat. Das heißt, welcher Prinzipal kann Aktionen für welche Ressourcen und unter welchen Bedingungen ausführen.

Das Element Condition (oder Condition block) ermöglicht Ihnen die Angabe der Bedingungen, unter denen eine Anweisung wirksam ist. Das Element Condition ist optional. Sie können bedingte Ausdrücke erstellen, die Bedingungsoperatoren verwenden, z. B. ist gleich oder kleiner als, damit die Bedingung in der Richtlinie mit Werten in der Anforderung übereinstimmt.

Wenn Sie mehrere Condition Elemente in einer Anweisung oder mehrere Schlüssel in einem einzelnen Condition Element angeben, AWS wertet sie mithilfe einer logischen AND Operation aus. Wenn Sie mehrere Werte für einen einzelnen Bedingungsschlüssel angeben, AWS wertet die Bedingung mithilfe einer logischen OR Operation aus. Alle Bedingungen müssen erfüllt werden, bevor die Berechtigungen der Anweisung gewährt werden.

Sie können auch Platzhaltervariablen verwenden, wenn Sie Bedingungen angeben. Sie können einem IAM Benutzer beispielsweise nur dann Zugriff auf eine Ressource gewähren, wenn sie mit seinem IAM Benutzernamen gekennzeichnet ist. Weitere Informationen finden Sie im IAMBenutzerhandbuch unter IAMRichtlinienelemente: Variablen und Tags.

AWS unterstützt globale Bedingungsschlüssel und dienstspezifische Bedingungsschlüssel. Um alle zu sehen AWS globale Bedingungsschlüssel finden Sie unter AWS Kontexttasten für globale Bedingungen im IAMBenutzerhandbuch.

Darüber hinaus AWS WAF unterstützt die folgenden Bedingungsschlüssel, mit denen Sie Ihre IAM Richtlinien detailliert filtern können:

  • wafv2: LogDestinationResource

    Dieser Bedingungsschlüssel verwendet eine Amazon Resource Name (ARN) -Spezifikation für das Protokollierungsziel. Dies ist dieARN, die Sie für das Protokollierungsziel angeben, wenn Sie den REST API Anruf verwendenPutLoggingConfiguration.

    Sie können explizit eine angeben ARN und Sie können eine Filterung für angebenARN. Das folgende Beispiel spezifiziert die Filterung nach Amazon S3 S3-BucketsARNs, die einen bestimmten Standort und ein bestimmtes Präfix haben.

    "Condition": { "ArnLike": { "wafv2:LogDestinationResource": "arn:aws:s3:::aws-waf-logs-suffix/custom-prefix/*" } }
  • wafv2: LogScope

    Dieser Bedingungsschlüssel definiert die Quelle der Protokollierungskonfiguration in einer Zeichenfolge. Derzeit ist dies immer auf den Standardwert von gesetztCustomer, was darauf hinweist, dass das Protokollierungsziel Ihnen gehört und von Ihnen verwaltet wird.

Um eine Liste von zu sehen AWS WAF Bedingungsschlüssel finden Sie unter Bedingungsschlüssel für AWS WAF V2 in der Referenz zur Serviceautorisierung. Informationen zu den Aktionen und Ressourcen, mit denen Sie einen Bedingungsschlüssel verwenden können, finden Sie unter Aktionen definiert von AWS WAF V2.

Um Beispiele zu sehen AWS WAF Identitätsbasierte Richtlinien finden Sie unter. Beispiele für identitätsbasierte Richtlinien für AWS WAF

ACLsin AWS WAF

UnterstütztACLs: Nein

Zugriffskontrolllisten (ACLs) steuern, welche Principals (Kontomitglieder, Benutzer oder Rollen) über Zugriffsberechtigungen für eine Ressource verfügen. ACLsähneln ressourcenbasierten Richtlinien, verwenden jedoch nicht das JSON Richtliniendokumentformat.

ABACmit AWS WAF

Unterstützungen ABAC (Tags in Richtlinien): Teilweise

Die attributbasierte Zugriffskontrolle (ABAC) ist eine Autorisierungsstrategie, die Berechtigungen auf der Grundlage von Attributen definiert. In AWS, diese Attribute werden Tags genannt. Sie können Tags an IAM Entitäten (Benutzer oder Rollen) und an viele andere anhängen AWS Ressourcen schätzen. Das Markieren von Entitäten und Ressourcen ist der erste Schritt vonABAC. Anschließend entwerfen Sie ABAC Richtlinien, die Operationen zulassen, wenn das Tag des Prinzipals mit dem Tag auf der Ressource übereinstimmt, auf die er zugreifen möchte.

ABACist hilfreich in Umgebungen, die schnell wachsen, und hilft in Situationen, in denen die Richtlinienverwaltung umständlich wird.

Um den Zugriff auf der Grundlage von Tags zu steuern, geben Sie im Bedingungselement einer Richtlinie Tag-Informationen an, indem Sie die Schlüssel aws:ResourceTag/key-name, aws:RequestTag/key-name, oder Bedingung aws:TagKeys verwenden.

Wenn ein Service alle drei Bedingungsschlüssel für jeden Ressourcentyp unterstützt, lautet der Wert für den Service Ja. Wenn ein Service alle drei Bedingungsschlüssel für nur einige Ressourcentypen unterstützt, lautet der Wert Teilweise.

Weitere Informationen zu finden Sie ABAC unter Was ist? ABAC im IAMBenutzerhandbuch. Ein Tutorial mit Schritten zur Einrichtung finden Sie im ABAC Benutzerhandbuch unter Verwenden der attributebasierten Zugriffskontrolle (ABAC). IAM

Verwenden temporärer Anmeldeinformationen mit AWS WAF

Unterstützt temporäre Anmeldeinformationen: Ja

Etwas AWS-Services funktioniert nicht, wenn Sie sich mit temporären Anmeldeinformationen anmelden. Für zusätzliche Informationen, einschließlich AWS-Services mit temporären Anmeldeinformationen arbeiten, finden Sie unter AWS-Services mit denen IAM im IAMBenutzerhandbuch gearbeitet werden kann.

Sie verwenden temporäre Anmeldeinformationen, wenn Sie sich bei der anmelden AWS Management Console mit einer beliebigen Methode außer einem Benutzernamen und einem Passwort. Zum Beispiel, wenn Sie darauf zugreifen AWS Wenn Sie den Single Sign-On-Link (SSO) Ihres Unternehmens verwenden, erstellt dieser Prozess automatisch temporäre Anmeldeinformationen. Sie erstellen auch automatisch temporäre Anmeldeinformationen, wenn Sie sich als Benutzer bei der Konsole anmelden und dann die Rollen wechseln. Weitere Informationen zum Rollenwechsel finden Sie unter Wechseln zu einer Rolle (Konsole) im IAMBenutzerhandbuch.

Sie können temporäre Anmeldeinformationen manuell erstellen, indem Sie den AWS CLI or AWS API. Sie können dann diese temporären Anmeldeinformationen für den Zugriff verwenden AWS. AWS empfiehlt, temporäre Anmeldeinformationen dynamisch zu generieren, anstatt langfristige Zugriffsschlüssel zu verwenden. Weitere Informationen finden Sie unter Temporäre Sicherheitsanmeldeinformationen unter IAM.

Zugriffssitzungen für den Service weiterleiten AWS WAF

Unterstützt Forward-Access-Sitzungen (FAS): Ja

Wenn Sie einen IAM Benutzer oder eine Rolle verwenden, um Aktionen auszuführen in AWS, gelten Sie als Principal. Bei einigen Services könnte es Aktionen geben, die dann eine andere Aktion in einem anderen Service initiieren. FASverwendet die Rechte des Prinzipals, der einen aufruft AWS-Service, kombiniert mit der Anfrage AWS-Service um Anfragen an nachgelagerte Dienste zu stellen. FASAnfragen werden nur gestellt, wenn ein Dienst eine Anfrage erhält, die Interaktionen mit anderen erfordert AWS-Services oder zu vervollständigende Ressourcen. In diesem Fall müssen Sie über Berechtigungen zum Ausführen beider Aktionen verfügen. Einzelheiten zu den Richtlinien für FAS Anfragen finden Sie unter Zugriffssitzungen weiterleiten.

Servicerollen für AWS WAF

Unterstützt Servicerollen: Ja

Eine Servicerolle ist eine IAMRolle, die ein Dienst übernimmt, um Aktionen in Ihrem Namen auszuführen. Ein IAM Administrator kann eine Servicerolle von innen heraus erstellen, ändern und löschenIAM. Weitere Informationen finden Sie unter Erstellen einer Rolle zum Delegieren von Berechtigungen an ein AWS-Service im IAM-Benutzerhandbuch.

Warnung

Das Ändern der Berechtigungen für eine Servicerolle kann fehlerhaft sein AWS WAF Funktionalität. Bearbeiten Sie Servicerollen nur, wenn AWS WAF bietet Anleitungen dazu.

Dienstbezogene Rollen für AWS WAF

Unterstützt dienstbezogene Rollen: Ja

Eine serviceverknüpfte Rolle ist eine Art von Servicerolle, die mit einem verknüpft ist AWS-Service. Der Dienst kann die Rolle übernehmen, eine Aktion in Ihrem Namen durchzuführen. Mit Diensten verknüpfte Rollen erscheinen in Ihrem AWS-Konto und gehören dem Dienst. Ein IAM Administrator kann die Berechtigungen für dienstbezogene Rollen anzeigen, aber nicht bearbeiten.

Weitere Informationen zum Erstellen oder Verwalten AWS WAF Rollen, die mit Diensten verknüpft sind, finden Sie unterVerwenden von serviceverknüpften Rollen für AWS WAF.