2016-05-19 4 views
2

com.amazonaws.AmazonClientException: com.amazonaws.AmazonServiceException: Rollen können von Root-Accounts nicht angenommen werden. (Service: AWSSecurityTokenService; Statuscode: 403; Fehlercode: AccessDenied;programmgesteuert in AWS S3 schreiben - Rollen können von Root-Accounts nicht übernommen werden.

ich eine Rolle erstellt und es ist Vertrauensbeziehung ist:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Effect": "Allow", 
     "Principal": { 
     "AWS": "arn:aws:iam::<awsID>:root", 
     "Service": "ec2.amazonaws.com" 
     }, 
     "Action": "sts:AssumeRole" 
    } 
    ] 
} 

Ich habe sogar versucht, eine Politik zu schaffen und es zu meiner Rolle zugewiesen:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
     { 
      "Effect": "Allow", 
      "Action": [ 
       "s3:ListBucket" 
      ], 
      "Resource": [ 
       "arn:aws:s3:::secorbackup" 
      ] 
     }, 
     { 
      "Effect": "Allow", 
      "Action": [ 
       "s3:PutObject", 
       "s3:GetObject", 
       "s3:DeleteObject" 
      ], 
      "Resource": [ 
       "arn:aws:s3:::secorbackup/*" 
      ] 
     } 
    ] 
} 

Nichts scheinen zu funktionieren. ich bin mit dem gleichen Fehler. ich pinterest/Secor für Log-Persistenz von kafka bis s3 verwenden. Irgendwelche Vorschläge?

Antwort

1

Rollen können von Root-Accounts nicht angenommen werden.

Dieser Fehler bedeutet genau das, was er sagt.

Sie können unter keinen Umständen eine Rolle bei der Verwendung eines root-Kontos annehmen. Sie müssen ein IAM-Konto verwenden.

Es gibt keine andere Problemumgehung dafür. Das Verhalten ist von Entwurf.

+1

Wie verwende ich einen IAM-Account? – Thufir

Verwandte Themen