2017-07-19 29 views
9

से इनकार किया गया है मैंने वेब पहचान संघ के साथ अपने एडब्ल्यूएस आईएएम और एस 3 खातों को सेट करने के लिए this blog का पालन किया है। मैं सत्र प्रमाण-पत्र और टोकन को प्रमाणित करने और प्राप्त करने में सक्षम हूं। मैं वस्तुओं को डाउनलोड और अपलोड करने में भी सक्षम हूं। हालांकि, मैं हो रही है:एडब्ल्यूएस एस 3 लिस्ट मल्टीपार्टउप्लोड्स: एक्सेस

पहुँच

निम्नलिखित ListMultipartUploads अनुरोध पर

से इनकार किया:

var request = new ListMultipartUploadsRequest() 
{ 
    BucketName = bucketName, 
    Prefix = $"{UserId}/" 
}; 

var response = await s3Client.ListMultipartUploadsAsync(request); 

पहुँच मेरी IAM भूमिका से जुड़ी नीति है:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
     { 
      "Effect": "Allow", 
      "Action": [ 
       "s3:AbortMultipartUpload", 
       "s3:DeleteObject", 
       "s3:GetObject", 
       "s3:PutObject" 
      ], 
      "Resource": "arn:aws:s3:::mybucket/${myidentityprovider:userId}/*" 
     }, 
     { 
      "Effect": "Allow", 
      "Action": [ 
       "s3:ListBucket", 
       "s3:ListBucketMultipartUploads" 
      ], 
      "Resource": [ 
       "arn:aws:s3:::mybucket" 
      ], 
      "Condition": { 
       "StringLike": { 
        "s3:prefix": "${myidentityprovider:userId}/" 
       } 
      } 
     } 
    ] 
} 

जैसा कि आप देख सकते हैं, मेरे पास "s3: ListBucketMultipartUploads" अनुमति है, इसलिए उपयोगकर्ता ListmultiPartUploads को अपनी बाल्टी पर करने में सक्षम होना चाहिए। मैं क्या गलत कर रहा हूं?

+0

शायद अंतिम स्लैश के बिना उपसर्ग का प्रयास करें? (पढ़ने के आधार पर [किसी उपयोगकर्ता को एक विशिष्ट उपसर्ग के अनुसार बाल्टी में वस्तुओं की सूची प्राप्त करने की अनुमति दें] (http://docs.aws.amazon.com/AmazonS3/latest/dev/amazon-s3-policy-keys। एचटीएमएल # कंडीशन-की-बाल्टी-ऑप्स -2)) –

+0

मैंने उपसर्ग स्लैश के बिना इसे आजमाया लेकिन फिर भी यह अभी भी पहुंच से वंचित हो गया है। – tura08

+1

यदि आप उपसर्ग की स्थिति को हटाते हैं तो यह सही तरीके से काम करता है? –

उत्तर

0

मैं अपने उपसर्ग बयान में एक त्रुटि देखते हैं,

यह एक सरणी होने की जरूरत है,

"S3: उपसर्ग" [ "$ {myidentityprovider: userId}/*"]

{ 
"Version": "2012-10-17", 
"Statement": [ 
    { 
     "Effect": "Allow", 
     "Action": [ 
      "s3:AbortMultipartUpload", 
      "s3:DeleteObject", 
      "s3:GetObject", 
      "s3:PutObject" 
     ], 
     "Resource": "arn:aws:s3:::mybucket/${myidentityprovider:userId}/*" 
    }, 
    { 
     "Effect": "Allow", 
     "Action": [ 
      "s3:ListBucket", 
      "s3:ListBucketMultipartUploads" 
     ], 
     "Resource": [ 
      "arn:aws:s3:::mybucket" 
     ], 
     "Condition": { 
      "StringLike": { 
       "s3:prefix": ["${myidentityprovider:userId}/*"] 
      } 
     } 
    } 
]} 
+0

यह या तो काम नहीं करता है – tura08

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