Δημιουργία ενός S3 Bucket και Ορισμός Policy μέσω CLI
Μου αρέσει πολύ να χρησιμοποιώ εντολές CLI και είναι η καθημερινή μου ρουτίνα. Σήμερα, θα σου πω «Πώς δημιουργείς ένα S3 Bucket στο AWS» και «Πώς βάζεις ένα S3 Bucket Policy»...

Μου αρέσει πολύ να χρησιμοποιώ εντολές CLI και είναι η καθημερινή μου ρουτίνα. Σήμερα, θα σου πω «Πώς δημιουργείς ένα S3 Bucket στο AWS» και «Πώς βάζεις ένα S3 Bucket Policy» μέσω CLI. Ας ξεκινήσουμε...
Το πρώτο πράγμα, πρέπει να ορίσεις τα AWS_ACCESS_KEY και AWS_SECRET_ACCESS_KEY. Αυτό σημαίνει ότι πρέπει να τρέξεις την εντολή aws configure προηγουμένως. Αν το κάνεις αυτό, μπορείς να συνεχίσεις.
Έλεγξε τα S3 Buckets Πρώτα
Πρώτα απ' όλα, πρέπει να βεβαιωθούμε ποια buckets έχουμε. Όταν τρέξω την εντολή aws s3 ls, θα επιστρέψει τα υπάρχοντα buckets.
➜ ~ aws s3 ls
2021-04-26 11:01:32 ercanermis
2021-05-20 19:14:04 ercanermis-aws-ssm-logs
2021-04-26 11:01:43 ercanermis-com
2021-04-26 11:02:08 www-ercanermis-comΔημιούργησε ένα S3 Bucket
Η εντολή δημιουργίας S3 Bucket είναι επίσης απλή και εύκολη. Είναι η aws s3 mb. Ας το κάνουμε και ας δούμε ξανά τα buckets.
➜ ~ aws s3 mb s3://hello-this-is-new-bucket
make_bucket: hello-this-is-new-bucketΤώρα, θέλω να δω ξανά όλα τα υπάρχοντα buckets για να βεβαιωθώ.
➜ ~ aws s3 ls
2021-04-26 11:01:32 ercanermis
2021-05-20 19:14:04 ercanermis-aws-ssm-logs
2021-04-26 11:01:43 ercanermis-com
2022-07-17 14:23:29 hello-this-is-new-bucket
2021-04-26 11:02:08 www-ercanermis-comΝαι, βλέπω το νεοδημιουργημένο μου bucket. Το όνομα του bucket είναι hello-this-is-new-bucket.
Έλεγξε το Bucket Policy σε ένα S3 Bucket
Δημιουργήσαμε ένα bucket στο προηγούμενο βήμα, αλλά τι γίνεται με το bucket policy; Πρώτα απ' όλα, πρέπει να ελέγξουμε αν υπάρχει ήδη κάποιο policy ή όχι. Ορίστε ένα παράδειγμα:
➜ ~ aws s3api get-bucket-policy --bucket hello-this-is-new-bucket
An error occurred (NoSuchBucketPolicy) when calling the GetBucketPolicy operation: The bucket policy does not exist
Το φρεσκοδημιουργημένο bucket δεν έχει policy από προεπιλογή. Τώρα, ήρθε η ώρα να δημιουργήσουμε ένα policy με CLI.
Δημιούργησε ένα Bucket Policy
Το policy πρέπει να είναι σε JSON format και μπορείς να δημιουργήσεις ένα JSON αρχείο. Το bucket policy μου επιτρέπει σε όλους τους χρήστες να ανακτούν οποιοδήποτε object στο hello-this-is-new-bucket εκτός από αυτά στον secret-folder. Επίσης, παρέχει δικαιώματα put και delete στον "root" χρήστη του AWS account "1234-5678-9012".
my-s3-bucket-policy.json:
{
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::hello-this-is-new-bucket/*"
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::hello-this-is-new-bucket/secret-folder/*"
},
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::123456789012:root"
},
"Action": [
"s3:DeleteObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::hello-this-is-new-bucket/*"
}
]
}Εφάρμοσε ένα Bucket Policy στο S3 Bucket
Η εφαρμογή ενός policy είναι επίσης εύκολη. Μπορείς να το δεις παρακάτω.
aws s3api put-bucket-policy --bucket hello-this-is-new-bucket --policy file://my-s3-bucket-policy.jsonΜετά την εντολή put-bucket-policy, το aws cli δεν δίνει κάποιο output, αλλά μπορείς επίσης να ξέρεις πώς να ελέγξεις το bucket policy σου μέσω CLI και μπορείς να το ελέγξεις αν θέλεις να βεβαιωθείς.
Ευχαριστώ πολύ που διάβασες αυτό το άρθρο, καλή κωδικοποίηση!
Περισσότερα από τον Ercan
Δύο ακόμη ιστότοποι, ίδιος συγγραφέας, διαφορετικό έδαφος.
AI, LLMs, agents, εφαρμοσμένη ML.
Σημειώσεις πεδίου για AI workloads. Ανάλυση κόστους Bedrock, agent patterns, trade-offs αποθήκευσης διανυσμάτων, failure modes σε παραγωγή.
Επισκεφθείτε ercan.ai →Ο κόμβος. Σχετικά, συμβουλευτική, επικοινωνία.
Προσωπικός κόμβος και για τις δύο διαδρομές γραφής. Ποιος είμαι, πώς λειτουργεί η συμβουλευτική, πώς να επικοινωνήσετε.
Επισκεφθείτε ercanermis.com →