Ich habe eine einfache Datei in meinem .ebextensions
Ordner:
00-myconfig.config
Resources:
AWSEBAutoScalingGroup:
Metadata:
AWS::CloudFormation::Authentication:
S3Access:
type: S3
roleName: aws-elasticbeanstalk-ec2-role
buckets: my-bucket
files:
"/tmp/ca-bundle.zip":
mode: "000755"
owner: root
group: root
source: https://s3-ap-southeast-2.amazonaws.com/my-bucket/ca/ca-bundle.zip
authentication: S3Access
Dies ist nach mehreren Antworten der Weg, um S3-Bucket-Zugriff auf die aws-elasticbeanstalk-ec2-role
Rolle zu gewähren .
Aber ich bekomme weiterhin den 403 Fehler in /var/log/eb-activity.log
[2015-08-26T01:27:03.544Z] INFO [22320] - [Application update/AppDeployStage0/EbExtensionPreBuild/Infra-EmbeddedPreBuild] : Activity execution failed, because: Failed to retrieve https://s3-ap-southeast-2.amazonaws.com/my-bucket/ca/ca-bundle.zip: HTTP Error 403 : <?xml version="1.0" encoding="UTF-8"?> (ElasticBeanstalk::ExternalInvocationError)
Wenn ich der aws-elasticbeanstalk-ec2-role
Rolle manuell eine S3-Zugriffsrichtlinie hinzufüge, funktioniert alles, sodass ich weiß, dass ich keine Rechtschreibfehler in URLs oder anderen Elementen habe, ist die EC2-Instanz definitiv in der richtigen Rolle.
Was ist falsch?
PS. Ich habe den files
Abschnitt mit oder ohne die Einstellung "Authentifizierung" ausprobiert .