2016-04-22 39 views
1

我有一個簡單的應用程序來測試文件上傳到ASW S3獲得403試圖將文件發送到AWS S3

public static void Main(string[] args) 
{ 
    string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + filename;   
    client = new AmazonS3Client(); 
    PutObjectRequest request = new PutObjectRequest() 
    { 
     BucketName = bucketName, 
     Key = keyName, 
     InputStream = new MemoryStream(ReadFile(path)) 
    }; 
    PutObjectResponse response2 = client.PutObject(request); 
} 

和我的app.config

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings> 
    <add key="AWSRegion" value="eu-west-1" /> 
    <add key="AWSProfileName" value="default"/> 
    <add key="AWSProfilesLocation" value="C:\aws_service_credentials\credentials_two.txt"/> 
    </appSettings> 
</configuration> 

我得到的錯誤時

The AWS Access Key Id you provided does not exist in our records. (403 Forbidden) 

當我運行我的應用程序。

奇怪它一直在努力,直到最近。

我也有一個aws控制檯應用程序,它向您顯示一個嚮導,允許您輸入憑據aws_access_key_idaws_secret_access_key

奇怪的是,這個aws控制檯應用程序在發送文件時工作正常並且不顯示403錯誤。

我的包文件

<packages> 
    <package id="AWSSDK.Core" version="3.1.5.3" targetFramework="net45" /> 
    <package id="AWSSDK.S3" version="3.1.5.0" targetFramework="net45" /> 
</packages> 
+0

你能仔細檢查您的憑據是完全兩種情況下都一樣嗎?錯誤複製證書非常容易。 –

回答

0

此外,還要確保有在憑證的[默認]節標題文件:

[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

相關問題