ruby-on-rails AWS Elastic Beanstalk无法承担角色

hl0ma9xz  于 2023-11-20  发布在  Ruby
关注(0)|答案(2)|浏览(123)

我正在遵循教程here使用Elastic Beanstalk将Ruby on Rails应用部署到AWS。

Unable to assume role "arn:aws:iam::xxxxxxxxxx:role/aws-elasticbeanstalk-service-role". 
Verify that the role exists and is configured correctly.

字符串
所以我在IAM中创建了一个角色,并给出了AWSElasticBeanstalkFullAccess策略。我想知道我错过了什么。
另外,当我做eb打开,它给了我一个502坏网关错误。这是与上述错误?

dphi5xsq

dphi5xsq1#

您需要给予角色正确的权限。服务角色授予elasticbeanstalk代表您调用其他服务的权限。
您可以在这里阅读您的角色所需的权限。也不要混淆服务角色和示例配置文件。它们是两个不同的角色,具有不同的目的。请阅读我的回答以获得更详细的解释here

cyej8jka

cyej8jka2#

我也有同样的问题,为了解决这个问题,我只是创建了一个新的角色,而不是使用默认的角色选项。
template.yml:

AWSTemplateFormatVersion: '2010-09-09'
Description: CloudFormation template to create a service-linked role for Elastic Beanstalk

Resources:

  ElasticBeanstalkServiceRole:
    Type: 'AWS::IAM::Role'
    Properties:
      RoleName: 'cicd-role'
      AssumeRolePolicyDocument:
        Version: '2012-10-17'
        Statement:
          - Effect: 'Allow'
            Action: 'sts:AssumeRole'
            Principal:
              Service: 'elasticbeanstalk.amazonaws.com'
      Description: 'Allows Elastic Beanstalk to create and manage AWS resources on your behalf.'
      ManagedPolicyArns:
        - arn:aws:iam::aws:policy/AdministratorAccess-AWSElasticBeanstalk
        - arn:aws:iam::aws:policy/service-role/AWSElasticBeanstalkEnhancedHealth
        - arn:aws:iam::aws:policy/service-role/AWSElasticBeanstalkService

Outputs:
  RoleArn:
    Description: 'ARN of the Elastic Beanstalk service role'
    Value: !GetAtt [ElasticBeanstalkServiceRole, Arn]

字符串

  • 或在AWS管理控制台中:*
  • 角色>创建
  • 可信实体类型> AWS服务
  • 应用案例>弹性豆茎
  • (其他均为默认)
  • 创建
  • 列表项

上一篇:eb create $EB_CONFIG-env --platform "$EBS_PLATFORM" --service-role $EB_SERVICE_ROLE

相关问题