Amazon s3 访问被拒绝的联合用户Amazon S3
每当我试图通过.NET应用程序访问AmazonS3时,我都会被拒绝访问。我有一个IAM用户,如果我使用他的凭据,它可以正常工作。但是,如果我使用其凭据创建一个联邦用户,那么生成的用户将无法访问AmazonS3中的存储桶。需要注意的一点是,我没有在代码中为我的联邦用户指定策略。我希望他拥有与IAM用户相同的访问级别。但如果我在代码中为policy指定一个值,我就可以访问并列出bucket。 有什么建议吗Amazon s3 访问被拒绝的联合用户Amazon S3,amazon-s3,amazon-iam,Amazon S3,Amazon Iam,每当我试图通过.NET应用程序访问AmazonS3时,我都会被拒绝访问。我有一个IAM用户,如果我使用他的凭据,它可以正常工作。但是,如果我使用其凭据创建一个联邦用户,那么生成的用户将无法访问AmazonS3中的存储桶。需要注意的一点是,我没有在代码中为我的联邦用户指定策略。我希望他拥有与IAM用户相同的访问级别。但如果我在代码中为policy指定一个值,我就可以访问并列出bucket。 有什么建议吗 private static SessionAWSCredentials GetTempo
private static SessionAWSCredentials GetTemporaryFederatedCredentials(
string accessKeyId, string secretAccessKeyId)
{
var config = new AmazonSecurityTokenServiceConfig();
var stsClient =
new AmazonSecurityTokenServiceClient(
accessKeyId, secretAccessKeyId, config);
var federationTokenRequest =
new GetFederationTokenRequest();
federationTokenRequest.Name = "User1";
// federationTokenRequest.Policy =
// @"{
// ""Statement"":
// [
// {
// ""Action"":[""s3:ListAllMyBuckets""],
// ""Effect"":""Allow"",
// ""Resource"":""arn:aws:s3:::*""
// }
// ]
// }";
federationTokenRequest.DurationSeconds = 3600;
GetFederationTokenResponse federationTokenResponse =
stsClient.GetFederationToken(federationTokenRequest);
GetFederationTokenResult federationTokenResult =
federationTokenResponse.GetFederationTokenResult;
Credentials credentials = federationTokenResult.Credentials;
var sessionCredentials =
new SessionAWSCredentials(credentials.AccessKeyId,
credentials.SecretAccessKey,
credentials.SessionToken);
return sessionCredentials;
}
}
}
联合身份使用角色工作。您是否已授予该角色权限或已将该角色添加到bucket策略?@Abhi.Net您是否获得了解决方案?我也被困在这里。联合身份使用角色工作。您是否已授予该角色权限或已将该角色添加到bucket策略?@Abhi.Net您是否获得了解决方案?我也被困在这里。