2016-07-19 8 views
0

Google 애플리케이션에서는 사용자 정의 역할을 사용하여 aws API에 액세스합니다. 개발자 환경에서 우리는 app.config에 액세스 키와 비밀 키를 제공하며 훌륭하게 작동합니다.AWS EC2 인스턴스 IAM 역할이 작동하지 않는 역할을 가정합니다.

환경에서 우리는 사용자 지정 역할에 필요한 권한을 가진 IAM 역할을 설정하고 해당 IAM 역할로 EC2 인스턴스가 시작됩니다. 우리는 코드를 사용하여 역할을 전환 할 때, 우리는 오류 아래

메시지를 받고 : 사용자 : ARN : AWS : STS : XXXXXXXXX : 가정 - 역할 // I-0490fbbb5ea7df6a8 수행 할 권한이 없습니다 : STS : ARN : : AWS : 자원에 AssumeRole 스피 :: XXXXXXXXXX : 역할/

코드 :

AmazonSecurityTokenServiceClient stsClient = new AmazonSecurityTokenServiceClient(); 
AssumeRoleResponse assumeRoleResponse = await stsClient.AssumeRoleAsync(new AssumeRoleRequest 
    { 
    RoleArn = roleArn, 
    RoleSessionName = sessionName 
    }); 

var sessionCredentials = new SessionAWSCredentials(assumeRoleResponse.Credentials.AccessKeyId, assumeRoleResponse.Credentials.SecretAccessKey, assumeRoleResponse.Credentials.SessionToken); 

AmazonS3Client s3Client = new AmazonS3Client(sessionCredentials); 

정책 세부 정보 :

"Effect": "Allow", 
"Action": "sts:AssumeRole", 
"Resource": "arn:aws:iam::account_id:role/role-name" 

위의 사항에 대한 도움이 될 것입니다. 미리 감사드립니다.

답변

2

사용자 지정 역할의 신뢰할 수있는 관계에 아래 정책을 추가하여 문제를 해결했습니다.

+1

문제 해결 방법에 대한 자세한 정보를 제공해주십시오. –

관련 문제