Tag: amazon web services

S3存储桶的基本AWS IAM权限

我试图弄清楚IAM用户/密钥的基本权限集必须只能访问S3中的单个存储桶 – 只对单个存储桶进行读/写访问。 使这项工作所需的最低权限是什么? 我在S3的IAM策略生成器中选择了所有选项,除了CreateBucket和DeleteBucket之外,在桶上启用了所有权限。 我还创建了一组特定于此用户的密钥。 当我尝试使用这些凭据访问存储桶时,即使启用了ListAllMyBuckets属性,我也会ListAllMyBuckets列出存储桶的问题。 有没有经验设置这样的基本桶配置? 好像很常见……

Rails:如何从哈希迭代产品? (亚马逊API /真空吸尘器)

扩展Rails:如何从哈希中提取值? (亚马逊API /真空吸尘器) – 如何将这些新挖出的值用于我的视图? 目前获得 : undefined method `image_url’ for # Extracted source (around line #5): main_controller.rb : class MainController < ApplicationController def index request = Vacuum.new('GB') request.configure( aws_access_key_id: 'ABCDEFGHIJKLMNOPQRST', aws_secret_access_key: '’, associate_tag: ‘lipsum-20’ ) params = { ‘SearchIndex’ => ‘Books’, ‘Keywords’=> ‘Ruby on Rails’, ‘ResponseGroup’ => “ItemAttributes,Images” } raw_products = request.item_search(query: params) hashed_products […]

我可以使用Amazon Elastic Transcoder仅创建缩略图吗?

我有一个使用Paperclip的Rails应用程序在Amazon S3上上传和存储video。 我不是特别感兴趣将video文件转换成另一种格式,或添加水印,没什么特别的。 我只是想从video中创建缩略图,以便在我的video播放器上用作海报图像。 我看到Amazon Elastic Transcoder允许创建免费的缩略图(或者更确切地说,他们不会为缩略图创建收费),并且因为我已经在使用Amazon服务,所以我想看看我是否可以将其用于缩略图。 有没有人知道如何设置输入/输出选项,除了缩略图之外没有生成文件? 我可以这样做吗? transcoder = AWS::ElasticTranscoder::Client.new transcoder.create_job( pipeline_id: APP_CONFIG[Rails.env][:pipeline_id], input: { key: VIDEOPATH, frame_rate: ‘auto’, resolution: ‘auto’, aspect_ratio: ‘auto’, interlaced: ‘auto’, container: ‘auto’ }, output: { key: , #LEAVE THIS BLANK TOO? preset_id: , #LEAVE THIS BLANK? thumbnail_pattern: “thumbnail”, rotate: ‘0’ } )

如何为AWS Elastic Beans设置多行RSA私钥环境变量

我正在使用Elastic Beanstalk将Ruby on Rails应用程序部署到AWS,并且必须将私钥设置为环境变量 例如 —–BEGIN RSA PRIVATE KEY—– SpvpksXQIBA65ICOgQxV2TvMIICAiMeV9prhdJSKjjsk2 tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk —–END RSA PRIVATE KEY—– 但是,在部署应用程序时,这似乎不起作用,因为它总是失败了 OpenSSL :: PKey :: RSAError:既不是PUB密钥也不是PRIV密钥:嵌套asn1错误 我认为这是因为RSA Key格式不正确。 然而,与Heroku不同,AWS EB不接受多行输入(见下文),因此我必须使用\n来创建新行。 我尝试了几种不同的风格,但没有一个似乎正确插入\n ,我总是得到同样的错误。 我已尝试使用\n和每行的结尾,然后\\n并尝试使用双引号\”来包装密钥,但我仍然得到同样的错误。 如何在AWS Elastic Beanstalk中正确设置多行环境变量?

AWS Rails安装失败:activesupport需要Ruby版本> = 2.2.2

我在aws上安装rails 5。 我已经安装了rvm和ruby。 我安装的Ruby版本是2.3.1。 我已经完成了捆绑安装。 现在我尝试使用命令安装rails 5 – ‘sudo gem install rails –version 5.0.0’ 但我收到了错误 ERROR: Error installing rails: activesupport requires Ruby version >= 2.2.2. rvm列表 =* ruby-2.3.1 [ x86_64 ] 完成登录运行命令 – ‘sudo gem install rails –version 5.0.0’ Fetching: i18n-0.7.0.gem (100%) Successfully installed i18n-0.7.0 Fetching: thread_safe-0.3.5.gem (100%) Successfully installed thread_safe-0.3.5 Fetching: tzinfo-1.2.2.gem (100%) Successfully […]

Elastic Beanstalk:自定义Puma配置

Ruby + Puma的当前Beanstalk解决方案堆栈使用/opt/elasticbeanstalk/support/conf/pumaconf.rb的配置文件,并忽略Rails应用程序目录中的config/puma.rb 我可以通过自定义的文件覆盖上面的文件.ebextensions但我犹豫不决,因为我想避免破坏,以防PID路径 – 或者更重要的是 – unix套接字文件在即将推出的解决方案堆栈版本中发生变化。 在Beanstalk上自定义Puma配置的最佳实践是什么?

尝试设置亚马逊的S3存储桶:403禁止错误和设置权限

我正在关注Hartl的railstutorial.org并且已经到了11.4.4:生产中的图像上传 。 我做了什么: 注册amazon web services 在Amazon Identity and Access Management中,我创建了一个用户。 用户已成功创建。 在Amazon S3中,我创建了一个新存储桶。 设置新存储桶的权限: 权限:本教程指示“授予对上一步中创建的用户的读写权限”。 但是,在存储桶的“Permissons”下,未提及新用户的名称。 我只能选择Everyone,Authenticated用户,Log delivery,Me和用户名,亚马逊似乎已经从我的名字+数字创建了自己。 我通过选择Authenticated用户并选中了上传/删除和查看权限(而不是选择列表和编辑权限)框来尝试它。 我也通过选择Everyone并检查所有四个框来尝试它。 结果是一样的。 我按照本教程的说明在我的Rails应用程序中实现(我不相信那里有任何错误,所以我没有在这里包含这些步骤,以免使它太长)。 初始化程序carrier_wave.rb设置为以下代码。 我已经添加了region: ‘eu-west-1’到初始化器(我从这里得到的一个想法)来摆脱connecting to the matching region will be more performant的消息connecting to the matching region will be more performant 。 if Rails.env.production? CarrierWave.configure do |config| config.fog_credentials = { # Configuration for Amazon […]

连接到S3时,获取“SSL_connect返回= 1 errno = 0状态=错误:证书validation失败”

我一直试图将照片上传到我的AWS桶,但遇到了标题中提到的错误。 我知道它很可能与我的OpenSSL证书有关,但是我尝试过的任何建议的解决方案到目前为止都失败了。 我在OSX Yosemite上遇到了ruby 2.3.1,Rails 4.1.8,aws-sdk-core 2.3.4和carrierwave 0.11.0这个问题。 我已经尝试了在这个类似问题上找到的所有可用内容,以及其他(这一个在Windows中): https : //github.com/aws/aws-sdk-core-ruby/issues/166#issuecomment-111603660 以下是我的一些文件: carrierwave.rb CarrierWave.configure do |config| # required config.aws_credentials = { access_key_id: Rails.application.secrets.aws_access_key_id, # required secret_access_key: Rails.application.secrets.aws_access_key, # required region: ‘eu-west-2’ # optional, defaults to ‘us-east-1’ } config.aws_bucket = Rails.application.secrets.aws_bucket # required config.fog_attributes = { ‘Cache-Control’ => “max-age=#{365.day.to_i}” } # optional, defaults to {} […]

为Amazon S3编写IAM策略和CORS配置

我对这一切都很陌生,但已经能够在我的Rails应用程序中使用头像/图像上传器。 用户可以将新的化身上传到我的S3桶,并且化身显示在Web应用程序中。 为此,我不得不向用户授予“AmazonS3FullAccess”政策。 这看起来有点太多了,因为来自应用程序的用户只需要写入(上传他的头像)并阅读(在网页上显示头像)权限。 您是否同意编写自定义策略而不是使用AmazonS3FullAccess更好? 如果是这样,我已经尝试了下面的政策代码(从这里采用),但这不起作用(尝试上传头像图像时出现403 Forbidden错误)。 有任何建议如何更正此代码? { “Version”: “2012-10-17”, “Statement”: [ { “Effect”: “Allow”, “Action”: [“s3:ListBucket”], “Resource”: [“arn:aws:s3:::mybucket”] }, { “Effect”: “Allow”, “Action”: [ “s3:PutObject”, “s3:GetObject”, “s3:DeleteObject” ], “Resource”: [“arn:aws:s3:::mybucket/*”] } ] }

Rails 3.2.5中的Paperclip / S3问题“无法加载此类文件 – aws-sdk”

图像上传工作正常,但当我尝试将其切换到S3时,它开始抛出错误。 我尝试创建新的图片上传时收到以下错误: cannot load such file — aws-sdk (You may need to install the aws-sdk gem) 相关gem: gem ‘rails’, ‘3.2.5’ gem ‘paperclip’ gem ‘aws-sdk’ 配置/ s3.yml: development: bucket: bucketname access_key_id: # secret_access_key: # test: bucket: bucketname access_key_id: # secret_access_key: # image_upload.rb: has_attached_file :image, :styles => { :normal => “1680×6000”, :result => “560×3000”, :thumb => “140×500” […]