小编sha*_*thi的帖子

使用C#从S3存储桶下载对象

我正在尝试从S3存储桶下载对象,该对象面临以下问题 :请求中包含的安全性令牌无效。 请检查并更正错误所在。

下面是我的代码1.获取临时的credentails:

main()    
{
    string path = "http://XXX.XXX.XXX./latest/meta-data/iam/security-credentials/EC2_WLMA_Permissions";

                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(path);
                request.Method = "GET";
                request.ContentType = "application/json";
                HttpWebResponse response = request.GetResponse() as HttpWebResponse;
                string result = string.Empty;
                using (StreamReader reader = new StreamReader(response.GetResponseStream()))
                {
                    result = reader.ReadToEnd();
                    dynamic metaData = JsonConvert.DeserializeObject(result);
                    _awsAccessKeyId = metaData.AccessKeyId;
                    _awsSecretAccessKey = metaData.SecretAccessKey;
                }
}
Run Code Online (Sandbox Code Playgroud)
  1. 创建SessionAWSCredentials实例:

    SessionAWSCredentials tempCredentials =
                     GetTemporaryCredentials(_awsAccessKeyId, _awsSecretAccessKey);
    
    Run Code Online (Sandbox Code Playgroud)

    // GetTemporaryCredentials方法:

       private static SessionAWSCredentials GetTemporaryCredentials(
                        string accessKeyId, string secretAccessKeyId)
        {             
    
            AmazonSecurityTokenServiceClient stsClient =
            new AmazonSecurityTokenServiceClient(accessKeyId,
                                                     secretAccessKeyId);
            Console.WriteLine(stsClient.ToString());
            GetSessionTokenRequest getSessionTokenRequest …
    Run Code Online (Sandbox Code Playgroud)

c# amazon-s3

6
推荐指数
2
解决办法
1万
查看次数

标签 统计

amazon-s3 ×1

c# ×1