Mithilfe des AWS Control Tower Management-Kontos und von CloudFormation StackSets muss ein DevOps-Ingenieur Amazon GuardDuty für Konten aktivieren, die es noch nicht aktiviert haben. Wie sollte die CloudFormation-Vorlage gestaltet werden, um Fehler bei der StackSets-Bereitstellung zu vermeiden?
Wählen Sie eine Antwort
Tippen Sie auf eine Option, um Ihre Antwort zu überprüfen.
Richtige Antwort: Fügen Sie eine benutzerdefinierte CloudFormation-Ressource hinzu, die eine Lambda-Funktion aufruft; lassen Sie die Lambda-Funktion prüfen, ob GuardDuty aktiviert ist, und aktivieren Sie es nur, wenn es noch nicht aktiv ist..
Warum dies die Antwort ist
Die korrekte Lösung besteht darin, eine benutzerdefinierte CloudFormation-Ressource zu verwenden, die eine Lambda-Funktion aufruft. Diese Lambda-Funktion kann programmatisch (z.B. mit dem AWS SDK) prüfen, ob GuardDuty in einem Konto bereits aktiviert ist. Ist dies nicht der Fall, aktiviert die Funktion GuardDuty. Dies verhindert Fehler bei der StackSets-Bereitstellung, da GuardDuty nicht versucht wird zu aktivieren, wenn es bereits läuft. Die Verwendung von "Conditions" in CloudFormation ist nicht ausreichend, da sie keine dynamische Überprüfung des GuardDuty-Status in einem Konto vor der Bereitstellung ermöglicht. Fn::GetAtt ist eine intrinsische Funktion, die Attributwerte von bereits existierenden Ressourcen abruft, aber nicht dazu dient, den Zustand eines Dienstes vor der Erstellung zu prüfen oder bedingt Ressourcen zu erstellen. Das manuelle Zusammenstellen von Konto-IDs ist ineffizient und fehleranfällig in einer dynamischen Umgebung.
Bestehen Sie Ihre Prüfung – ohne endlose Antwortsuche
Erhalten Sie jede verifizierte Frage und Erklärung für diese Prüfung an einem Ort und sparen Sie Stunden der Vorbereitung. Über 1.000 Zertifizierungen · Über 20 Sprachen · Kostenloser Start.
Bestehen Sie Ihre Prüfung schneller → Keine Karte erforderlich