2013-08-04 12 views
5

क्या आपको एस 3 आईएएम नीतियों और निर्देशों को समझने में कोई समस्या है? अपने दस्तावेज़ को अपने दस्तावेज़ के चारों ओर लपेट नहीं सकते? मैंने किया।आईएएम एक्सेस के लिए अमेज़ॅन एस 3 बाल्टी और फ़ोल्डर नीति?

मुझे एक ऐसी स्थिति थी जहां मुझे एक विशेष फ़ोल्डर से कई आईएएम उपयोगकर्ताओं को लॉक करना पड़ा, और कई बाल्टी, एक को छोड़कर, और उनके अधिकांश समाधान और उदाहरण समाधान जहां तक ​​मेरा संबंध था, मिट्टी के रूप में स्पष्ट थे। वेब को खराब करने के बाद और जो मैं ढूंढ रहा था उसे ढूंढने के बाद मैं संसाधन (http://blogs.aws.amazon.com/security/post/Tx1P2T3LFXXCNB5/Writing-IAM-policies-Grant-access-to-user-specific-folders-in-an-Amazon-S3-bucke) पर आया जो स्पष्ट और वास्तव में सहायक था, लेकिन इसे कुछ संशोधन की आवश्यकता थी, और नतीजा यह है कि आप नीचे दी गई नीति है ....

यह क्या करता है उपयोगकर्ता को बाल्टी के भीतर किसी विशेष फ़ोल्डर तक पहुंचने की अनुमति देता है, लेकिन उसी बाल्टी में किसी अन्य सूचीबद्ध फ़ोल्डर तक डेनिस एक्सेस तक पहुंच जाता है। आपको याद है, आप उन्हें फ़ोल्डर की सामग्री को देखने से रोक नहीं पाएंगे, न ही आप उन्हें यह देखने से रोक देंगे कि अन्य बाल्टी हैं, जिनकी मदद नहीं की जा सकती है। हालांकि, उन्हें आपकी पसंद की बाल्टी/फ़ोल्डर तक पहुंच नहीं होगी।

उत्तर

7
{ 
"Version":"2012-10-17", 
"Statement": [ 
    { 
    "Sid": "AllowUserToSeeBucketListInTheConsole", 
    "Action": ["s3:ListAllMyBuckets", "s3:GetBucketLocation"], 
    "Effect": "Allow", 
    "Resource": ["arn:aws:s3:::*"] 
    }, 
    { 
    "Sid": "AllowRootAndHomeListingOfCompanyBucket", 
    "Action": ["s3:ListBucket"], 
    "Effect": "Allow", 
    "Resource": ["arn:aws:s3:::yourbucketname"], 
    "Condition":{"StringEquals":{"s3:prefix":["","yourfoldername/"],"s3:delimiter":["/"]}} 
    }, 
    { 
    "Sid": "AllowListingOfUserFolder", 
    "Action": ["s3:ListBucket"], 
    "Effect": "Allow", 
    "Resource": ["arn:aws:s3:::yourbucketname"], 
    "Condition":{"StringLike":{"s3:prefix":["yourfoldername/*"]}} 
    }, 
    { 
    "Sid": "AllowAllS3ActionsInUserFolder", 
    "Effect": "Allow", 
    "Action": ["s3:GetObject"], 
    "Resource": ["arn:aws:s3:::yourbucketname/yourfoldername/*"] 
    }, 
{ 
     "Action": [ 
     "s3:*" 
     ], 
     "Sid": "Stmt1375581921000", 
     "Resource": [ 
"arn:aws:s3:::yourbucketname/anotherfolder1/*", 
"arn:aws:s3:::yourbucketname/anotherfolder2/*", 
"arn:aws:s3:::yourbucketname/anotherfolder3/*", 
"arn:aws:s3:::yourbucketname/anotherfolder4/*" 
     ], 
     "Effect": "Deny" 
    } 
] 
} 
+1

आप भी माध्यम से ** NotResource ** अस्वीकार करने के लिए सक्षम होना चाहिए - '" NotResource ": [" "अर्न: एडब्ल्यूएस: S3 ::: yourbucketname/yourfoldername/*"] '- बल्कि सूची से सभी अपवाद – drzaus

+1

और नीतियों को डीबग करने के लिए एक अच्छा टूल (या कम से कम उनका परीक्षण करें) आईएएम नीति सिम्युलेटर https://policysim.aws.amazon.com/home/index.jsp है – drzaus

संबंधित मुद्दे