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.
Überwachen Sie Amazon ECR-Repositorys mit AWS und AWS CloudFormation Config auf Platzhalterberechtigungen
Erstellt von Vikrant Telkar (AWS), Sajid Momin (AWS) und Wassim Benhallam (AWS)
Übersicht
In der Amazon Web Services (AWS) -Cloud ist Amazon Elastic Container Registry (Amazon ECR) ein verwalteter Container-Image-Registry-Service, der private Repositorys mit ressourcenbasierten Berechtigungen mithilfe von AWS Identity and Access Management (IAM) unterstützt.
IAM unterstützt den Platzhalter „*
“ sowohl in den Ressourcen- als auch in den Aktionsattributen, was die automatische Auswahl mehrerer übereinstimmender Elemente erleichtert. In Ihrer Testumgebung können Sie allen authentifizierten AWS-Benutzern den Zugriff auf ein Amazon ECR-Repository ermöglichen, indem Sie die ecr:*
Platzhalterberechtigung in einem Hauptelement für Ihre Repository-Richtlinienerklärung verwenden. Die ecr:*
Platzhalterberechtigung kann nützlich sein, wenn Sie in Entwicklungskonten entwickeln und testen, die nicht auf Ihre Produktionsdaten zugreifen können.
Sie müssen jedoch sicherstellen, dass die ecr:*
Platzhalterberechtigung in Ihren Produktionsumgebungen nicht verwendet wird, da sie schwerwiegende Sicherheitslücken verursachen kann. Der Ansatz dieses Musters hilft Ihnen dabei, Amazon ECR-Repositorys zu identifizieren, die die ecr:*
Platzhalterberechtigung in Repository-Richtlinienerklärungen enthalten. Das Muster enthält Schritte und eine CloudFormation AWS-Vorlage zum Erstellen einer benutzerdefinierten Regel in AWS Config. Eine AWS Lambda Lambda-Funktion überwacht dann Ihre Amazon ECR-Repository-Richtlinienerklärungen auf ecr:*
Platzhalterberechtigungen. Wenn Lambda nicht konforme Repository-Richtlinienerklärungen findet, benachrichtigt es AWS Config, ein Ereignis an Amazon zu senden, EventBridge und leitet EventBridge dann ein Amazon Simple Notification Service (Amazon SNS) -Thema ein. Das SNS-Thema informiert Sie per E-Mail über die nicht konformen Repository-Richtlinienerklärungen.
Voraussetzungen und Einschränkungen
Voraussetzungen
Ein aktives AWS-Konto.
AWS-Befehlszeilenschnittstelle (AWS CLI), installiert und konfiguriert. Weitere Informationen dazu finden Sie unter Installation, Aktualisierung und Deinstallation der AWS-CLI in der AWS-CLI-Dokumentation.
Ein vorhandenes Amazon ECR-Repository mit einer angehängten Richtlinienerklärung, das in Ihrer Testumgebung installiert und konfiguriert wurde. Weitere Informationen dazu finden Sie unter Erstellen eines privaten Repositorys und Einrichten einer Repository-Richtlinienerklärung in der Amazon ECR-Dokumentation.
AWS Config, konfiguriert in Ihrer bevorzugten AWS-Region. Weitere Informationen dazu finden Sie unter Erste Schritte mit AWS Config in der AWS Config-Dokumentation.
Die
aws-config-cloudformation.template
Datei (angehängt), die auf Ihren lokalen Computer heruntergeladen wurde.
Einschränkungen
Die Lösung dieses Musters ist Regional und Ihre Ressourcen müssen in derselben Region erstellt werden.
Architektur
Das folgende Diagramm zeigt, wie AWS Config die Amazon ECR-Repository-Richtlinienerklärungen auswertet.

Das Diagramm zeigt den folgenden Workflow:
AWS Config initiiert eine benutzerdefinierte Regel.
Die benutzerdefinierte Regel ruft eine Lambda-Funktion auf, um die Einhaltung der Amazon ECR-Repository-Richtlinienerklärungen zu bewerten. Die Lambda-Funktion identifiziert dann nicht konforme Repository-Richtlinienanweisungen.
Die Lambda-Funktion sendet den Status der Nichtkonformität an AWS Config.
AWS Config sendet ein Ereignis an EventBridge.
EventBridge veröffentlicht die Benachrichtigungen über Verstöße zu einem SNS-Thema.
Amazon SNS sendet eine E-Mail-Benachrichtigung an Sie oder einen autorisierten Benutzer.
Automatisierung und Skalierung
Die Lösung dieses Musters kann eine beliebige Anzahl von Amazon ECR-Repository-Richtlinienerklärungen überwachen, aber alle Ressourcen, die Sie auswerten möchten, müssen in derselben Region erstellt werden.
Tools
AWS CloudFormation — AWS CloudFormation hilft Ihnen dabei, Ihre AWS-Ressourcen zu modellieren und einzurichten, sie schnell und konsistent bereitzustellen und sie während ihres gesamten Lebenszyklus zu verwalten. Sie können eine Vorlage verwenden, um Ihre Ressourcen und ihre Abhängigkeiten zu beschreiben und sie zusammen als Stack zu starten und zu konfigurieren, anstatt Ressourcen einzeln zu verwalten. Sie können Stacks für mehrere AWS-Konten und AWS-Regionen verwalten und bereitstellen.
AWS Config — AWS Config bietet eine detaillierte Ansicht der Konfiguration der AWS-Ressourcen in Ihrem AWS-Konto. Dazu gehört auch, wie die Ressourcen jeweils zueinander in Beziehung stehen und wie sie in der Vergangenheit konfiguriert wurden, damit Sie sehen können, wie sich die Konfigurationen und Beziehungen im Laufe der Zeit verändern.
Amazon ECR — Amazon Elastic Container Registry (Amazon ECR) ist ein von AWS verwalteter Container-Image-Registry-Service, der sicher, skalierbar und zuverlässig ist. Amazon ECR unterstützt private Container-Image-Repositories mit ressourcenbasierten Berechtigungen unter Verwendung von IAM.
Amazon EventBridge — Amazon EventBridge ist ein serverloser Event-Bus-Service, mit dem Sie Ihre Anwendungen mit Daten aus einer Vielzahl von Quellen verbinden können. EventBridge liefert einen Stream von Echtzeitdaten aus Ihren Anwendungen, SaaS-Anwendungen (Software as a Service) und AWS-Services an Ziele wie AWS Lambda-Funktionen, HTTP-Aufruf-Endpunkte, die API-Ziele verwenden, oder Event-Busse in anderen Konten.
AWS Lambda — AWS Lambda ist ein Rechenservice, der die Ausführung von Code unterstützt, ohne Server bereitzustellen oder zu verwalten. Lambda führt Ihren Code nur bei Bedarf aus und skaliert automatisch – von einigen Anforderungen pro Tag bis zu Tausenden pro Sekunde. Sie bezahlen nur für die Datenverarbeitungszeit, die Sie wirklich nutzen und es werden keine Gebühren in Rechnung gestellt, wenn Ihr Code nicht ausgeführt wird.
Amazon SNS — Amazon Simple Notification Service (Amazon SNS) koordiniert und verwaltet die Zustellung oder den Versand von Nachrichten zwischen Herausgebern und Kunden, einschließlich Webservern und E-Mail-Adressen. Abonnenten erhalten die veröffentlichten Mitteilungen zu den Themen, die sie abonniert haben. Alle Abonnenten eines Themas erhalten dieselben Mitteilungen.
Code
Der Code für dieses Muster ist in der aws-config-cloudformation.template
Datei (angehängt) verfügbar.
Epen
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie den CloudFormation AWS-Stack. | Erstellen Sie einen CloudFormation AWS-Stack, indem Sie den folgenden Befehl in der AWS-CLI ausführen:
| AWS DevOps |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Testen Sie die benutzerdefinierte AWS Config-Regel. |
| AWS DevOps |