【发布时间】:2021-12-14 01:26:11
【问题描述】:
过去两天我一直在努力解决这个问题。我正在尝试将文件放在私有子网的 S3 存储桶中。以下是我的代码:
var s3Config = new AmazonS3Config() { ServiceURL = "https://myVPCnameamazonaws.com" };
using (var cli = new AmazonS3Client(
awsAccessKey,
awsSecretKey,
s3Config))
{
PutObjectRequest req = new PutObjectRequest()
{
BucketName = "test",
ContentType = "image/jpg",
InputStream = st,
Key = fileName
};
var response = cli.PutObject(req);
在我的代码的最后一行,我收到一条错误消息:HttpErrorResponseException: The remote server returned an error: (403) Forbidden。 内部异常:
WebException:远程服务器返回错误:(403) Forbidden。
我不确定应该编写什么代码来消除此错误。我正在使用 AWS 工具包。 Visual Studio 2019..net 框架 4.7.2
对此的任何帮助将不胜感激。
【问题讨论】:
-
您在使用 VPC 终端节点吗?这就是
https://myVPCnameamazonaws.com所代表的吗?您提供的实际值是否是真正的 VPC 端点 URL?它看起来像这样:vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com.
标签: c# amazon-web-services amazon-s3 amazon-ec2