Aws-cli: ์ •์ฑ…์€ ์œ ํšจํ•œ JSON์ด์–ด์•ผ ํ•˜๊ณ  ์ฒซ ๋ฒˆ์งธ ๋ฐ”์ดํŠธ๋Š” '{'์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2017๋…„ 08์›” 19์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: aws/aws-cli

์—ฌ๋ณด์„ธ์š”. ๋‚˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ์—์„œ ์ด ์˜ค๋ฅ˜๋ฅผ ๋ณด์•˜๊ณ  ํ”ผ๊ณคํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•ด๊ฒฐ์ฑ…์ด ๋ฌด์—‡์ธ์ง€๋Š” ๋ถ„๋ช…ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฒ„ํ‚ท ์ •์ฑ…์„ ์—…๋กœ๋“œํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ JSON ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋‹ค์šด๋กœ๋“œ(์ž…๋ ฅํ•˜๊ธฐ ์œ„ํ•ด UI๋ฅผ ์‚ฌ์šฉํ–ˆ๊ณ  ์ž˜ ์ž‘๋™ํ•จ)/์—…๋กœ๋“œํ•˜๊ณ  ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—…๋กœ๋“œํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ œ์•ˆ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ์ข‹์€ ์ผ์„ ๊ณ„์†ํ•˜์‹ญ์‹œ์˜ค!

$ aws s3api get-bucket-policy --bucket cloud-1-$NAME > student-1-bucket.manual.json
$ aws s3api put-bucket-policy --bucket cloud-1-$NAME --policy student-1-bucket.manual.json 

An error occurred (MalformedPolicy) when calling the PutBucketPolicy operation: Policies must be valid JSON and the first byte must be '{'
$ cat student-1-bucket.manual.json 
{
    "Policy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"ExampleStatement1\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::934017622331:user/student-1-cloud\"},\"Action\":\"*\",\"Resource\":\"arn:aws:s3:::cloud-1-14604\"}]}"
}
$

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

--policy ์ผ๋ฐ˜์ ์œผ๋กœ ํŒŒ์ผ ์ด๋ฆ„์ด ์‹ค์ œ๋กœ ์‚ฌ์šฉํ•˜๋ ค๋Š” JSON ๋ฌธ์„œ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋Š” JSON ๋ฌธ์ž์—ด์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด file:// ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

aws s3api put-bucket-policy --bucket cloud-1-$NAME --policy file://student-1-bucket.manual.json

์ฐธ๊ณ  ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์—†์œผ๋ฏ€๋กœ file:// ๋น„ํŠธ๊ฐ€ ์‹คํŒจํ•˜๋ฉด ๋Œ€์‹  student-1-bucket.manual.json ๋Œ€ํ•œ ์ ˆ๋Œ€ ๊ฒฝ๋กœ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

--policy ์ผ๋ฐ˜์ ์œผ๋กœ ํŒŒ์ผ ์ด๋ฆ„์ด ์‹ค์ œ๋กœ ์‚ฌ์šฉํ•˜๋ ค๋Š” JSON ๋ฌธ์„œ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋Š” JSON ๋ฌธ์ž์—ด์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด file:// ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

aws s3api put-bucket-policy --bucket cloud-1-$NAME --policy file://student-1-bucket.manual.json

์ฐธ๊ณ  ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์—†์œผ๋ฏ€๋กœ file:// ๋น„ํŠธ๊ฐ€ ์‹คํŒจํ•˜๋ฉด ๋Œ€์‹  student-1-bucket.manual.json ๋Œ€ํ•œ ์ ˆ๋Œ€ ๊ฒฝ๋กœ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@cwgem ๋‹น์‹ ์ด ์™„์ „ํžˆ ๋งž์Šต๋‹ˆ๋‹ค! ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์–‘:

aws s3api put-bucket-policy \
--bucket $BucketName \ 
--policy file://$PathToPolicy/bucketpolicy.json

์˜ˆ๋ฅผ ๋“ค์–ด:

aws s3api put-bucket-policy \
--bucket firstbucket.mydomain.com \
--policy file:///Users/Andy/Desktop/bucketpolicy.json
์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰