【问题标题】:AWS .NET SDK: creating an AmazonS3Client without using the access/secrete key?AWS .NET SDK:在不使用访问/密钥的情况下创建 AmazonS3Client?
【发布时间】:2017-09-05 00:39:41
【问题描述】:

我知道如何使用访问/秘密密钥访问 S3:

string accessKey = "my access key"; 
string secretKey = "my secrete key"; 
IAmazonS3 client = new AmazonS3Client(accessKey, secretKey, RegionEndpoint.APSoutheast2);
ListBucketsResponse response = client.ListBuckets();

但是,这意味着将密钥存储在代码中。此代码在我已为其分配 S3 完整管理员 IAM 角色的 EC2 实例上运行。我可以打开一个 CMD 窗口并输入“aws s3 ls”,它就起作用了。但是如果我在上面的代码中将NULL传递给两个键,就会抛出以下错误:

Invalid S3 URI - hostname does not appear to be a valid S3 endpoint

那么,如何在分配了 S3 完整管理员 IAM 角色的 EC2 实例上运行上述代码,而不对访问密钥进行硬编码?

【问题讨论】:

    标签: .net amazon-web-services amazon-s3 sdk


    【解决方案1】:

    在此处查看示例 -

    http://docs.aws.amazon.com/sdk-for-net/v2/developer-guide/net-dg-hosm.html

    你会看到你没有向构造函数传递任何东西。

    【讨论】:

      【解决方案2】:

      使用不以accessKey和secret为参数的构造函数:

      IAmazonS3 client = new AmazonS3Client(RegionEndpoint.APSoutheast2);
      ListBucketsResponse response = client.ListBuckets();
      

      通过完全省略它们,SDK 将为它们访问角色。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-08
        • 2017-05-05
        • 1970-01-01
        • 2015-01-29
        • 1970-01-01
        相关资源
        最近更新 更多