所以我试图初始化一个现有的“反应”放大项目,其中配置了大约8个服务。当我运行放大推送时,除了以下内容,一切似乎都很好,也很成功,我得到了这个错误:
Resource Name: 2021/10/08/[$LATEST]c1c602b361e347ad83d49f77293e6aae (Custom::LambdaCallout)
Event Type: create
Reason: Received response status [FAILED] from custom resource. Message returned: See the details in CloudWatch Log Stream: 2021/10/08/[$LATEST]c1c602b361e347ad83d49f77293e6aae (RequestId: 90c39ffc-b3ee-4830-ae87-7df3cd3a0770)
以下是给定地址的cloudwatch日志:
2021-10-08T06:28:37.448Z d30823f5-a9f8-4d7e-a823-dd53b298a2fb INFO Response body:
{
"Status": "FAILED",
"Reason": "See the details in CloudWatch Log Stream: 2021/10/08/[$LATEST]3b533dd8fb9a43bc921cfe635d2bc945",
"PhysicalResourceId": "2021/10/08/[$LATEST]3b533dd8fb9a43bc921cfe635d2bc945",
"StackId": "arn:aws:cloudformation:us-east-1:474847889857:stack/amplify-storyliner-staging-44500-authstorylinerb9277983-1V5J90W5KFK1A/cef02b40-2800-11ec-bcb5-0adb3c7f2f15",
"RequestId": "f7b5fc9e-0a46-43ae-bf7e-eb19fb81285e",
"LogicalResourceId": "MFALambdaInputs",
"NoEcho": false,
"Data": {
"err": {
"message": "User: arn:aws:sts::474847889857:assumed-role/storylb9277983_totp_lambda_role-staging/amplify-storyliner-staging-44500-authsto-MFALambda-tA8KTT12iWvY is not authorized to perform: iam:PassRole on resource: arn:aws:iam::474847889857:role/snsb927798344500-staging because no identity-based policy allows the iam:PassRole action",
"code": "AccessDeniedException",
"time": "2021-10-08T06:28:37.445Z",
"requestId": "3978bf89-5872-460d-b991-c3cd4e5280e1",
"statusCode": 400,
"retryable": false,
"retryDelay": 38.192028876441576
}
}
}
我试图创建角色“snsb927798344500 staging”并添加所需的策略,但当我尝试重新运行放大推送
命令时,我收到一个错误,称snsb927798344500 staging已经存在
。所以我认为是amplify在每一次推送中创建了角色,并且在过程失败后删除了它。这就是为什么在推送过程之后,我无法再次看到“snsb927798344500 staging”角色的原因。
该特定消息似乎与CLI:https://github.com/aws-amplify/amplify-cli/issues/8363上的GitHub问题有关
我们今天遇到了同样的问题,下面的人帮我们解决了。
解决方案复制到这里:
这个问题是由于MFALambda角色中缺少策略造成的,该角色在#7729中修复。能否尝试将以下策略添加到您的auth cloudformation中,看看这是否解决了问题。需要添加的部分是名为corecocf3573d0_sns_pass_role_policy的策略
# Snippet
MFALambdaRole:
Type: AWS::IAM::Role
Properties:
RoleName:
Fn::If:
- ShouldNotCreateEnvResources
- corecocf3573d0_totp_lambda_role
- Fn::Join:
- ''
- - corecocf3573d0_totp_lambda_role
- '-'
- Ref: env
AssumeRolePolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Principal:
Service:
- lambda.amazonaws.com
Action:
- sts:AssumeRole
Policies:
- PolicyName: corecocf3573d0_totp_pass_role_policy
PolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Action:
- iam:PassRole
Resource:
Fn::If:
- ShouldNotCreateEnvResources
- arn:aws:iam:::role/corecocf3573d0_totp_lambda_role
- Fn::Join:
- ''
- - arn:aws:iam:::role/corecocf3573d0_totp_lambda_role
- '-'
- Ref: env
# New policy
- PolicyName: corecocf3573d0_sns_pass_role_policy
PolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Action:
- 'iam:PassRole'
Resource: !GetAtt SNSRole.Arn
我用的是nodejs,serverless和aws dynamodb。我试图创建一个lambda,在这里我调用一个API,获取数据(1000条记录),现在,我想将这些数据插入到我的dynamodb中。 我使用batchWrite来实现这一点,并通过创建每个包含25个json对象的bucket来使用它。但我得到了一个错误:<br><code>AccessDeniedException: 当我在没有批
我是AWS新手,我尝试使用Elastic beanstalk在AWS EC2实例中部署Springboot应用程序。我想利用AWS SES服务向订阅的应用程序用户发送通知。 作为其中的一部分,在AWS SDK SES API和IAM凭据的帮助下,我能够使用springboot应用程序发送验证用户电子邮件,但我也想发送未验证用户的电子邮件,因此,我已请求AWS支持团队将我的IAM用户从AWS SES
我有一个 AWS 账户,在该账户中,我代入一个名为 A() 的角色,我从该角色通过 Web 控制台创建了另一个名为 B() 的角色,并将管理员策略附加到该角色 这是cli配置 我从 创建 当我试图得到角色细节时 我收到以下错误 调用假设角色操作时发生错误 (访问消除): 用户: arn:aws:iam::
问题内容: 我正在制作一个音乐播放页面,在这里我将SoundManager 2用于AngularJs。我正在使用远程API获取要播放的歌曲URL。我增强了angular-soundmanager2 click事件处理程序: 我在其中添加了声部的地方调用了该函数,并在该函数加载了歌曲URL后调用了回调以将控件返回给angular- soundmanager2。 问题是在chrome for andr
这一节我们要实现 2.1.1 节设定的用户数据模型,还会为这个模型创建 Web 界面。二者结合起来就是一个“用户资源”(Users Resource)。“资源”的意思是把用户设想为对象,可以通过 HTTP 协议在网页中创建(create)、读取(read)、更新(update)和删除(delete)。正如前面提到的,用户资源使用 Rails 内置的脚手架生成。我建议你先不要细看脚手架生成的代码,这
我正计划使用JWT。JWT将包含权限列表,单个微服务将使用“位置”和“权限”的组合来确定。 不幸的是,我无法在Keycloak中配置客户端来分配策略和权限,也无法在Internet上找到任何示例。