我有一个简单的应用程序来测试上传文件到ASW 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_id
和aws_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]部分标题:
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY