AWS WAF Web-ACLs verwalten - AWS App Runner

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.

AWS WAF Web-ACLs verwalten

Verwalten Sie die AWS WAF Web-ACLs für Ihren App Runner-Dienst mit einer der folgenden Methoden:

App Runner-Konsole

Wenn Sie in der App Runner-Konsole einen Dienst erstellen oder einen vorhandenen aktualisieren, können Sie eine AWS WAF Web-ACL zuordnen oder die Zuordnung aufheben.

Anmerkung
  • Ein App Runner-Dienst kann nur einer Web-ACL zugeordnet werden. Sie können jedoch eine Web-ACL zusätzlich zu anderen AWS Ressourcen mit mehr als einem App Runner-Dienst verknüpfen.

  • Bevor Sie eine Web-ACL zuordnen, stellen Sie sicher, dass Sie Ihre IAM-Berechtigungen für AWS WAF aktualisieren. Weitere Informationen finden Sie unter -Berechtigungen.

Web-ACL zuordnen AWS WAF

Wichtig

Quell-IP-Regeln für private App Runner-Dienste, die mit WAF-Web-ACLs verknüpft sind, halten sich nicht an IP-basierte Regeln. Dies liegt daran, dass wir derzeit die Weiterleitung von Quell-IP-Daten von Anfragen an private App Runner-Dienste, die mit WAF verknüpft sind, nicht unterstützen. Wenn für Ihre App Runner-Anwendung Quell-IP/CIDR-Regeln zur Steuerung des eingehenden Datenverkehrs erforderlich sind, müssen Sie Sicherheitsgruppenregeln für private Endpunkte anstelle von WAF-Web-ACLs verwenden.

AWS WAF Um eine Web-ACL zuzuordnen
  1. Öffnen Sie die App Runner-Konsole und wählen Sie in der Liste der Regionen Ihre aus AWS-Region.

  2. Je nachdem, ob Sie einen Dienst erstellen oder aktualisieren, führen Sie einen der folgenden Schritte aus:

    • Wenn Sie einen neuen Dienst erstellen, wählen Sie App Runner-Dienst erstellen und gehen Sie zu Dienst konfigurieren.

    • Wenn Sie einen vorhandenen Dienst aktualisieren, wählen Sie den Tab Konfiguration und dann unter Dienst konfigurieren die Option Bearbeiten aus.

  3. Gehen Sie unter Sicherheit zu Web Application Firewall.

  4. Wählen Sie die Umschaltfläche „Aktivieren“, um die Optionen anzuzeigen.

    Das Layout der App Runner-Konsole, das die Web Application Firewall-Optionen anzeigt.
  5. Führen Sie einen der folgenden Schritte aus:

    • Um eine bestehende Web-ACL zuzuordnen: Wählen Sie die erforderliche Web-ACL aus der Tabelle Wählen Sie eine Web-ACL aus, die Sie Ihrem App Runner-Dienst zuordnen möchten.

    • Um eine neue Web-ACL zu erstellen: Wählen Sie Web-ACL erstellen, um mit der AWS WAF Konsole eine neue Web-ACL zu erstellen. Weitere Informationen finden Sie unter Erstellen einer Web-ACL im AWS WAF Entwicklerhandbuch.

      1. Klicken Sie auf die Schaltfläche „Aktualisieren“, um die neu erstellte Web-ACL in der Tabelle Web-ACL auswählen anzuzeigen.

      2. Wählen Sie die erforderliche Web-ACL aus.

  6. Wählen Sie Weiter, wenn Sie einen neuen Service erstellen, oder Änderungen speichern, wenn Sie einen vorhandenen Service aktualisieren. Die ausgewählte Web-ACL ist mit Ihrem App Runner-Dienst verknüpft.

  7. Um die Web-ACL-Zuordnung zu überprüfen, wählen Sie die Registerkarte Konfiguration Ihres Dienstes und gehen Sie zu Dienst konfigurieren. Scrollen Sie unter Sicherheit zur Web Application Firewall, um die Details der Web-ACL zu sehen, die Ihrem Service zugeordnet ist.

    Anmerkung

    Wenn Sie eine Web-ACL erstellen, vergeht eine kurze Zeit, bis die Web-ACL vollständig verbreitet ist und App Runner zur Verfügung steht. Die Übertragungszeit kann zwischen einigen Sekunden und mehreren Minuten liegen. AWS WAF gibt a zurückWAFUnavailableEntityException, wenn Sie versuchen, eine Web-ACL zuzuordnen, bevor sie vollständig propagiert wurde.

    Wenn Sie den Browser aktualisieren oder die App Runner-Konsole verlassen, bevor die Web-ACL vollständig weitergegeben wurde, schlägt die Zuordnung fehl. Sie können jedoch innerhalb der App Runner-Konsole navigieren.

Aufheben der Zuordnung einer Web-ACL AWS WAF

Sie können die Zuordnung von AWS WAF Web-ACls, die Sie nicht mehr benötigen, aufheben, indem Sie Ihren App Runner-Dienst aktualisieren.

Um die Zuordnung einer Web-ACL aufzuheben AWS WAF
  1. Öffnen Sie die App Runner-Konsole und wählen Sie in der Liste der Regionen Ihre AWS-Region aus.

  2. Gehen Sie zur Registerkarte Konfiguration des Dienstes, den Sie aktualisieren möchten, und wählen Sie unter Dienst konfigurieren die Option Bearbeiten aus.

  3. Gehen Sie unter Sicherheit zur Web Application Firewall.

  4. Deaktivieren Sie die Umschaltfläche Aktivieren. Sie erhalten eine Nachricht zur Bestätigung des Löschvorgangs.

  5. Wählen Sie Bestätigen aus. Die Web-ACL ist von Ihrem App Runner-Dienst getrennt.

    Anmerkung
    • Wenn Sie Ihren Service mit einer anderen Web-ACL verknüpfen möchten, wählen Sie eine Web-ACL aus der Tabelle Web-ACL auswählen aus. App Runner trennt die Verknüpfung der aktuellen Web-ACL und startet den Vorgang zur Verknüpfung mit der ausgewählten Web-ACL.

    • Wenn keine anderen App Runner-Dienste oder -Ressourcen eine getrennte Web-ACL verwenden, sollten Sie erwägen, die Web-ACL zu löschen. Andernfalls werden Ihnen weiterhin Kosten entstehen. Weitere Informationen über die Preise finden Sie unter AWS WAF – Preise. Anweisungen zum Löschen einer Web-ACL finden Sie unter DeleteWebACL in der AWS WAF API-Referenz.

    • Sie können keine Web-ACL löschen, die mit anderen aktiven App Runner-Diensten oder anderen Ressourcen verknüpft ist.

AWS CLI

Sie können eine AWS WAF Web-ACL mithilfe der AWS WAF öffentlichen APIs zuordnen oder deren Zuordnung aufheben. Der App Runner-Dienst, dem Sie eine Web-ACL zuordnen oder die Zuordnung aufheben möchten, muss sich in einem gültigen Status befinden.

AWS WAF gibt einen WAFNonexistentItemException Fehler zurück, wenn Sie eine der folgenden AWS WAF APIs für einen App Runner-Dienst aufrufen, der sich in einem ungültigen Zustand befindet:

  • AssociateWebACL

  • DisassociateWebACL

  • GetWebACLForResource

Zu den ungültigen Status für Ihren App Runner-Dienst gehören:

  • CREATE_FAILED

  • DELETE_FAILED

  • DELETED

  • OPERATION_IN_PROGRESS

    Anmerkung

    OPERATION_IN_PROGRESSDer Status ist nur dann ungültig, wenn Ihr App Runner-Dienst gelöscht wird.

Weitere Informationen zu AWS WAF öffentlichen APIs finden Sie im AWS WAF API-Referenzhandbuch.

Anmerkung

Aktualisieren Sie Ihre IAM-Berechtigungen für AWS WAF. Weitere Informationen finden Sie unter -Berechtigungen.

Zuordnen von AWS WAF Web-ACL mit AWS CLI

Wichtig

Quell-IP-Regeln für private App Runner-Dienste, die mit WAF-Web-ACLs verknüpft sind, entsprechen nicht IP-basierten Regeln. Dies liegt daran, dass wir derzeit die Weiterleitung von Quell-IP-Daten von Anfragen an private App Runner-Dienste, die mit WAF verknüpft sind, nicht unterstützen. Wenn für Ihre App Runner-Anwendung Quell-IP/CIDR-Regeln zur Steuerung des eingehenden Datenverkehrs erforderlich sind, müssen Sie Sicherheitsgruppenregeln für private Endpunkte anstelle von WAF-Web-ACLs verwenden.

AWS WAF Um eine Web-ACL zuzuordnen
  1. Erstellen Sie eine AWS WAF Web-ACL für Ihren Service mit Ihren bevorzugten Regelaktionen Allow oder Block den Webanfragen an Ihren Service. Weitere Informationen zu AWS WAF APIs finden Sie unter CreateWebACL im AWS WAF API-Referenzhandbuch.

    Beispiel Erstellen Sie eine Web-ACL — Anfrage
    aws wafv2 create-web-acl --region <region> --name <web-acl-name> --scope REGIONAL --default-action Allow={} --visibility-config <file-name.json> # This is the file containing the WAF web ACL rules.
  2. Ordnen Sie die Web-ACL, die Sie mithilfe der associate-web-acl AWS WAF öffentlichen API erstellt haben, dem App Runner-Dienst zu. Weitere Informationen zu AWS WAF APIs finden Sie unter AssociateWebACL im AWS WAF API-Referenzhandbuch.

    Anmerkung

    Wenn Sie eine Web-ACL erstellen, vergeht eine kurze Zeit, bis die Web-ACL vollständig propagiert wird und App Runner zur Verfügung steht. Die Übertragungszeit kann zwischen einigen Sekunden und mehreren Minuten liegen. AWS WAF gibt a zurückWAFUnavailableEntityException, wenn Sie versuchen, eine Web-ACL zuzuordnen, bevor sie vollständig propagiert wurde.

    Wenn Sie den Browser aktualisieren oder die App Runner-Konsole verlassen, bevor die Web-ACL vollständig weitergegeben wurde, schlägt die Zuordnung fehl. Sie können jedoch innerhalb der App Runner-Konsole navigieren.

    Beispiel Zuordnen einer Web-ACL — Anfrage
    aws wafv2 associate-web-acl --resource-arn <apprunner_service_arn> --web-acl-arn <web_acl_arn> --region <region>
  3. Stellen Sie mithilfe der get-web-acl-for-resource AWS WAF öffentlichen API sicher, dass die Web-ACL mit Ihrem App Runner-Dienst verknüpft ist. Weitere Informationen zu AWS WAF APIs finden Sie unter GetWebACL ForResource im AWS WAF API-Referenzhandbuch.

    Beispiel Überprüfen Sie die Web-ACL für die Ressource — Anfrage
    aws wafv2 get-web-acl-for-resource --resource-arn <apprunner_service_arn> --region <region>

    Wenn Ihrem Service keine Web-ACLs zugeordnet sind, erhalten Sie eine leere Antwort.

Löschen einer AWS WAF Web-ACL mit AWS CLI

Sie können eine AWS WAF Web-ACL nicht löschen, wenn sie mit einem App Runner-Dienst verknüpft ist.

Um eine AWS WAF Web-ACL zu löschen
  1. Trennen Sie die Web-ACL mithilfe der disassociate-web-acl AWS WAF öffentlichen API von Ihrem App Runner-Dienst. Weitere Informationen zu AWS WAF APIs finden Sie unter DisassociateWebACL im AWS WAF API-Referenzhandbuch.

    Beispiel Aufheben der Zuordnung zu einer Web-ACL — Anfrage
    aws wafv2 disassociate-web-acl --resource-arn <apprunner_service_arn> --region <region>
  2. Stellen Sie mithilfe der öffentlichen API sicher, dass die Web-ACL von Ihrem App Runner-Dienst getrennt wurde. get-web-acl-for-resource AWS WAF

    Beispiel Stellen Sie sicher, dass die Web-ACL getrennt ist — Anfrage
    aws wafv2 get-web-acl-for-resource --resource-arn <apprunner_service_arn> --region <region>

    Die getrennte Web-ACL ist für Ihren App Runner-Dienst nicht aufgeführt. Wenn Ihrem Service keine Web-ACLs zugeordnet sind, erhalten Sie eine leere Antwort.

  3. Löschen Sie die getrennte Web-ACL mithilfe der delete-web-acl AWS WAF öffentlichen API. Weitere Informationen zu AWS WAF APIs finden Sie unter DeleteWebACL im AWS WAF API-Referenzhandbuch.

    Beispiel Eine Web-ACL löschen — Anfrage
    aws wafv2 delete-web-acl --name <web_acl_name> --scope REGIONAL --id <web_acl_id> --lock-token <web_acl_lock_token> --region <region>
  4. Stellen Sie sicher, dass die Web-ACL mithilfe der list-web-acl AWS WAF öffentlichen API gelöscht wurde. Weitere Informationen zu AWS WAF APIs finden Sie unter ListWebACLs im AWS WAF API-Referenzhandbuch.

    Beispiel Stellen Sie sicher, dass die Web-ACL gelöscht wurde — Anfrage
    aws wafv2 list-web-acls --scope REGIONAL --region <region>

    Die gelöschte Web-ACL ist nicht mehr aufgeführt.

    Anmerkung

    Wenn eine Web-ACL mit anderen aktiven App Runner-Diensten oder anderen Ressourcen wie Amazon Cognito Cognito-Benutzerpools verknüpft ist, kann die Web-ACL nicht gelöscht werden.

Listet App Runner-Dienste auf, die mit einer Web-ACL verknüpft sind

Eine Web-ACL kann mehreren App Runner-Diensten und anderen Ressourcen zugeordnet werden. Listet die App Runner-Dienste auf, die einer Web-ACL mithilfe der list-resources-for-web-acl AWS WAF öffentlichen API zugeordnet sind. Weitere Informationen zu AWS WAF APIs finden Sie unter ListResourcesForWebACL im AWS WAF API-Referenzhandbuch.

Beispiel Listet die App Runner-Dienste auf, die mit einer Web-ACL verknüpft sind — Anfrage
aws wafv2 list-resources-for-web-acl --web-acl-arn <WEB_ACL_ARN> --resource-type APP_RUNNER_SERVICE --region <REGION>
Beispiel Listet die App Runner-Dienste auf, die einer Web-ACL zugeordnet sind — Antwort

Das folgende Beispiel veranschaulicht die Reaktion, wenn keine App Runner-Dienste vorhanden sind, die einer Web-ACL zugeordnet sind.

{ "ResourceArns": [] }
Beispiel Listet die App Runner-Dienste auf, die einer Web-ACL zugeordnet sind — Antwort

Das folgende Beispiel veranschaulicht die Reaktion, wenn App Runner-Dienste mit einer Web-ACL verknüpft sind.

{ "ResourceArns": [ "arn:aws:apprunner:<region>:<aws_account_id>:service/<service_name>/<service_id>" ] }

AWS WAF Web-ACLs testen und protokollieren

Wenn Sie eine Regelaktion in Ihrer Web-ACL auf Count setzen, wird die Anfrage einer Anzahl von Anfragen AWS WAF hinzugefügt, die der Regel entsprechen. Um eine Web-ACL mit Ihrem App Runner-Dienst zu testen, setzen Sie die Regelaktionen auf Count und berücksichtigen Sie die Anzahl der Anfragen, die jeder Regel entsprechen. Sie legen beispielsweise eine Regel für die Block Aktion fest, die einer großen Anzahl von Anfragen entspricht, bei denen es sich Ihrer Meinung nach um normalen Benutzerverkehr handelt. In diesem Fall müssen Sie Ihre Regel möglicherweise neu konfigurieren. Weitere Informationen finden Sie im AWS WAF Entwicklerhandbuch unter Testen und AWS WAF Optimieren Ihrer Schutzmaßnahmen.

Sie können auch so konfigurieren AWS WAF , dass Anforderungsheader in einer Amazon CloudWatch Logs-Protokollgruppe, einem Amazon Simple Storage Service (Amazon S3) -Bucket oder einer Amazon Data Firehose protokolliert werden. Weitere Informationen finden Sie unter Protokollieren des Web-ACL-Datenverkehrs im Entwicklerhandbuch zu AWS WAF .

Informationen zum Zugriff auf Protokolle im Zusammenhang mit der Web-ACL, die mit Ihrem App Runner-Service verknüpft ist, finden Sie in den folgenden Protokollfeldern:

  • httpSourceName: Enthält APPRUNNER

  • httpSourceId: Enthält customeraccountid-apprunnerserviceid

Weitere Informationen finden Sie unter Protokollbeispiele im AWS WAF Entwicklerhandbuch.

Wichtig

Quell-IP-Regeln für private App Runner-Dienste, die mit WAF-Web-ACLs verknüpft sind, entsprechen nicht IP-basierten Regeln. Dies liegt daran, dass wir derzeit die Weiterleitung von Quell-IP-Daten von Anfragen an private App Runner-Dienste, die mit WAF verknüpft sind, nicht unterstützen. Wenn für Ihre App Runner-Anwendung Quell-IP/CIDR-Regeln zur Steuerung des eingehenden Datenverkehrs erforderlich sind, müssen Sie Sicherheitsgruppenregeln für private Endpunkte anstelle von WAF-Web-ACLs verwenden.