Railsでcarrierwaveを使ってAWS S3に画像をアップロードしたいのですが、下記のようなエラーが出てしまいます。
Excon::Error::Forbidden: Expected(200) <=> Actual(403 Forbidden) excon.error.response :body => "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>DEC5D756378110C8</RequestId><HostId>Sq9rH7MWQnnfL1/rFjejaTuRw9mAsQbNZ1TXf4ZbidmKKWftKOVRzHev3MfcU1oXOCkxD443ba4=</HostId></Error>" :cookies => [ ] :headers => { "Connection" => "close" "Content-Type" => "application/xml" "Date" => "Sat, 17 Nov 2018 07:29:23 GMT" "Server" => "AmazonS3" "x-amz-id-2" => "Sq9rH7MWQnnfL1/rFjejaTuRw9mAsQbNZ1TXf4ZbidmKKWftKOVRzHev3MfcU1oXOCkxD443ba4=" "x-amz-request-id" => "DEC5D756378110C8" } :host => "bucket-name.s3-ap-northeast-1.amazonaws.com" :local_address => "xxx.xxx.xxx.xxx" :local_port => 51498 :path => "/uploads/article/33/2018111716298a2aa3172f633ad7.jpg" :port => 443 :reason_phrase => "Forbidden" :remote_ip => "xx.xxx.xx.xxx" :status => 403 :status_line => "HTTP/1.1 403 Forbidden\r\n" from /Users/ttktt/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/excon-0.62.0/
carrierwaveの設定は以下のようになっています。
ruby
1## config/initializers/carrierwave.rb 2CarrierWave.configure do |config| 3 config.fog_provider = 'fog/aws' 4 config.fog_credentials = { 5 provider: 'AWS', 6 aws_access_key_id: Settings.aws_access_key_id, 7 aws_secret_access_key: Settings.aws_secret_access_key, 8 region: 'ap-northeast-1' 9 } 10 config.fog_directory = 'bucket-name' 11end 12
aws-cliでは、ここに設定している同じaws_access_key_idとaws_secret_access_keyを使って、s3にファイルをアップしたり、ファイル一覧を取得できています。どなたか思い当たる原因をご教示いただけませんでしょうか?よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/01 03:28