2012-09-11 37 views
2

對象我有一個用戶 - 經理S3Actions.GetObject, S3Actions.PutObject分配給它狀態代碼:403,而獲取不存在

  • 當我把和對象,並得到它,一切都很好
  • 當我得到那個不存在的對象,它會拋出

}

Status Code: 403, AWS Service: Amazon S3, AWS Request ID: 2A23D3118F9FFB08, AWS Error Code: AccessDenied, AWS Error Message: Access Denied, S3 Extended Request ID: 3h4D2Ks9skcSab3zkV/nedmm9b8WLL+92DESbOx9xGipkH7P69QQiJLVWyDowASi 
    at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:556) 
    at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:289) 
    at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:170) 
    at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:2724) 
    at com.amazonaws.services.s3.AmazonS3Client.getObject(AmazonS3Client.java:866) 
    at com.sr.sparrow.business.xml.persist.S3Service.getInputStream(S3Service.java:58) 

w^hy不投擲404/NoSuchKey

+1

我想你應該再次檢查,如果你有權限可列出桶的內容。當文件不存在且用戶沒有權限列出s3對象時拋出403,當文件不存在且用戶有權列出對象時拋出404。 –

+0

當文件不存在且用戶沒有權限列出s3對象時'403被拋出,你能指出我說的文檔嗎? – daydreamer

+1

https://forums.aws.amazon.com/thread.jspa?messageID=210268 –

回答