Ich verwende einen AWS S3-Bucket, um Konfigurationsdateien für Java AWS Lambdas zu speichern. Wie konfiguriere ich den Bucket so, dass nur der Zugriff auf eine Lambda-Funktion und sonst nichts möglich ist?AWS S3-Bucket auf nur Lambda-Zugriff beschränken
Antwort
Sie benötigen s3 Eimer Politik Konto 123456789012
in der Region us-east-1
hinzufügen -
{
"Id": "Policy1498253351771",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1498253327847",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::<bucket_name>/<prefix>",
"Principal": {
"AWS": [
"arn:aws:lambda:us-east-1:123456789012:function:*"
]
}
}
]
}
Oben ist eine allgemeine Richtlinie für alle Lambda-Funktionen.
Wenn Sie eine detailliertere Politik nach Ihrer usecase generieren müssen, können Sie versuchen AWS Policy Generator
Die angezeigte Richtlinie ermöglicht es dem Inhaber, alle Lambda-APIs für alle Lambda-Funktionen im AWS-Konto 123456789012 in us-east-1 aufzurufen. Es hilft keiner Lambda-Funktion, Objekte aus S3 abzurufen, oder verhindert, dass Nicht-Lambda-Funktionen Objekte aus einem S3-Bucket abrufen. – jarmod
@jarmod, Ich habe eine allgemeine gesetzt, so dass es als eine Referenz beim Generieren einer Richtlinie aus dem Link verwendet werden kann, die ich geteilt habe. Ich habe meine Richtlinie gemäß Ihrem Vorschlag aktualisiert. Bitte überprüfen Sie sie. Vielen Dank- – tom
- 1. Auf nur englische Zeichen beschränken
- 2. Meteor.loginWithPassword Nur auf Admin beschränken
- 3. AmazonS3Client.listObjects() Problem mit großen s3bucket
- 4. Beschränken Squid Zugriff auf nur eine Website
- 5. Browser-Verbindungen auf nur 1 persistent beschränken
- 6. usib-datepicker auf nur ein Jahr beschränken
- 7. Zugriff auf SQL Server-Anmeldung auf nur eine Datenbank beschränken
- 8. Wie Basisklassenmethode beschränken nur einmal
- 9. Scrollen auf Fußzeile beschränken
- 10. Begrenzen Sie aws auf nur s3
- 11. Textfeldeinträge auf Zahlen beschränken oder nur Nummernblock - keine Sonderzeichen
- 12. Beschränken Sie sich auf nur 3 Bestellungen pro 30 Tage
- 13. Wie Link auf nur Div und nicht Bootstrap Spalte beschränken?
- 14. Oracle - beschränken Benutzer Zugriff auf nur eine Verbindung
- 15. Beschränken Sie die Authentifizierung nur auf meine App
- 16. Wie kann ich den GMSPlacePicker auf nur bestimmte Ortstypen beschränken?
- 17. Oracle SQL Developer - Beschränken des Benutzers auf nur bestimmte Schemas
- 18. Annotationsziel nur auf Methoden mit einer anderen Annotation beschränken
- 19. Beschränken des Azure-Verwaltungsportalzugriffs nur auf das Unternehmensnetzwerk (IP-Bereich)
- 20. HTTP-Anfragen nur in Struts 1.x auf 'POST' beschränken
- 21. Beschränken Sie die Berechtigung nur auf Feature-Zweig
- 22. Kann ich eine Datumsauswahl nur auf 3 Tage beschränken?
- 23. API-Anfragen nur auf meine eigene mobile App beschränken
- 24. Hapi.js Beschränken Sie den Zugriff nur auf localhost
- 25. UITextField Benutzer beschränken Nummer nur IOS App auf ipad
- 26. Wie beschränken Benutzer Zugriff auf nur Systemtabelle in Cassandra
- 27. Beschränken Sie den Serverzugriff nur von LAN
- 28. Window.SizeToContent beschränken, um nur zu erweitern
- 29. Wie Texteingabefeld beschränken nur 0 und 1
- 30. Benutzereingaben auf 4 Ziffern beschränken
Generell, wenn Sie einen AWS-Service als Haupt in einer IAM-Politik zu adressieren sind versuchen, verwenden Sie würden dann "Service": "lambda.amazonaws.com" (oder "s3.amazonaws.com", "ec2.amazonaws.com" usw.) In diesem Fall ist jedoch nicht der Lambda-Service relevant, denke ich, aber der vermutete IAM-Rolle, unter der Ihre Lambda-Funktion ausgeführt wird, weil es die aufgerufene Lambda-Funktion selbst ist, die die Konfiguration aus Ihrem S3-Bucket (vermutlich) abruft. – jarmod