Ich habe festgestellt, dass Elastic Beanstalk jeden Monat etwa 20 bis 30 US-Dollar auf mein AWS-Konto zieht und es sich herausstellt, dass es sich um einen leeren S3-Eimer handelt.
Ich habe versucht, es zu löschen, aber es wird der Fehler "Zugriff verweigert" zurückgegeben.
Ich habe auch versucht, den Lebenszyklus zu verwenden, um es zu entfernen, aber es hat auch nicht funktioniert. So richte ich den Lebenszyklus ein:
Ich habe es so eingestellt, dass es 1 Tag nach der Erstellung entfernt wird
Antworten:
Überprüfen Sie die Bucket-Richtlinie für den S3-Bucket. Der Bucket-Name scheint der Standard-Bucket zu sein, den Beanstalk zum Speichern Ihrer Anwendungsversionen, Protokolle usw. erstellt. Um ein versehentliches Löschen des Buckets zu verhindern, verweigert die Bucket-Richtlinie die Löschberechtigung. Sie können die Berechtigungen für die S3-Bucket-Richtlinie aktualisieren, um das Löschen von Ihrem Root-Konto zu ermöglichen. Höchstwahrscheinlich erlaubt Ihre Bucket-Richtlinie derzeit nicht das Löschen des Buckets. Dann können Sie den Bucket löschen.
Weitere Informationen zu S3-Bucket-Berechtigungen finden Sie hier: http://docs.aws.amazon.com/AmazonS3/latest/UG/EditingBucketPermissions.html
quelle
Elastische Bohnenstange fügte diese Einschränkung automatisch hinzu, wenn der Eimer erstellt wird. Um es zu entfernen, müssen Sie zuerst den Eimer leeren.
Wählen Sie anschließend den Bucket -> Eigenschaften -> Berechtigungen -> Bucket-Richtlinie bearbeiten .
Sie sehen nun die Berechtigungen Elastic Beanstalk, die diesem Bucket automatisch hinzugefügt werden. Scrollen Sie zu der Stelle, an der Sie die "Aktion" finden: "s3: DeleteBucket" , und ändern Sie "Effekt": "Verweigern" in "Effekt": "Zulassen".
Speichern Sie anschließend die Änderung und löschen Sie den Bucket.
quelle
Dies ist eine elastische Bohnenstangenresektion, um Ihr versehentliches Löschen zu verhindern. Sie können dieses Problem lösen, indem Sie zwei Schritte ausführen.
bucket => Properties => Permissions => Edit bucket policy
und setzen Sie Zulassen"Effect": "Allow"
von"Effect": "Deny"
Weitere Hilfe finden Sie im folgenden Screenshot.
Berechtigungs-Screenshot:
Bucket Policy
quelle
Standardmäßig hat Elastic Beanstalk einige Richtlinien für Ihren Bucket festgelegt, die den Löschvorgang für den Bucket verhindern, um ein versehentliches Löschen des Buckets zu verhindern.
Ich habe den Vorgang im Bild unten rot hervorgehoben.
Schritt zum Löschen des Buckets :
Sobald Sie fertig sind, kehren Sie zur Liste der Buckets zurück und versuchen, den Bucket jetzt zu löschen.
ERLEDIGT
Viel Spaß beim Codieren
quelle
Ich habe auch den gleichen Fehler beim Löschen des von EBS erstellten Buckets "Zugriff verweigert" festgestellt, da EBS standardmäßig die DELETE-Operation für den von ihm erstellten s3-Bucket ablehnt, da er von EBS zum Speichern von Anwendungsprotokollen und anderen Informationen verwendet wird. Um es zu löschen, müssen Sie die Richtlinien des Buckets ändern. Schritte: - Bucket => Eigenschaften => Berechtigungen => Bucket-Richtlinie Bearbeiten Sie die Bucket-Richtlinie, wobei "Aktion": "s3: DeleteBucket" den "Effekt": " Verweigern" in "Effekt" ändert ": "Ermöglichen"
quelle
Ein sehr kurzer und einfacher Ansatz wäre (wenn Sie sicher sind, dass Sie den Bucket nicht mehr benötigen), die Bucket-Richtlinie zu entfernen und dann zu versuchen, den Bucket zu löschen. Funktioniert in allen Fällen. Da der Bucket von Elastic Beanstalk erstellt wird und die konfigurierte Richtlinie keine Änderungen / Löschungen durch andere Benutzer zulässt. Durch Entfernen der Richtlinie können Sie Aktionen ausführen.
quelle
Der Bucket kann nur in den folgenden 3 Schritten gelöscht werden:
Wählen Sie den zu löschenden Bucket aus und klicken Sie im geöffneten Schubladenfenster auf den Abschnitt Berechtigung
Klicken Sie auf die Schaltfläche Bucket Policy
Ersetzen Sie das
Deny
Wort durchAllow
das Objekt mit der"Action": "s3:Deletebucket"
Linie und klicken Sie auf die Schaltfläche SpeichernDanach können Sie den Bucket löschen.
Abbildung für Schritt 1:
Abbildung für Schritt 2:
Abbildung für Schritt 3:
quelle