amazon-web-services - 无服务器框架部署错误:您无权访问此资源
问题描述
当我使用 AWS 作为提供者部署我的无服务器框架项目时,我得到:
您无权访问此资源。- 请联系支持人员并提供此标识符以引用此问题 BLAHBLAH
我登录到无服务器框架serverless login
我的 serverless.yaml:
org: vladimirorg
app: vladimirapp
service: backend-rest
provider:
name: aws
runtime: nodejs12.x
apiGateway: {
shouldStartNameWithService: true
}
environment:
DYNAMODB_TABLE: ${self:service}-${opt:stage, self:provider.stage}
DYNAMODB_LOCAL_PORT: 9000
iamRoleStatements:
- Effect: Allow
Action:
- dynamodb:Query
- dynamodb:Scan
- dynamodb:GetItem
- dynamodb:PutItem
- dynamodb:UpdateItem
- dynamodb:DeleteItem
Resource: "arn:aws:dynamodb:#{AWS::Region}:#{AWS::AccountId}:table/${self:provider.environment.DYNAMODB_TABLE}"
functions:
create:
handler: src/handlers/create.create
events:
- http:
path: todos
method: post
cors: true
request:
schema:
application/json: ${file(src/schemas/create.json)}
...
解决方案
我找到了根本原因 - 如果您希望部署无服务器框架应用程序,您必须使用与您在无服务器框架中注册的组织 (org) 和应用程序名称 (app) 完全相同的组织 (org) 和应用程序名称 (app)。
要找出您当前的应用程序/组织名称,请更改它们或https://app.serverless.com/
使用与部署相同的凭据创建新的应用程序/组织登录到无服务器框架的仪表板帐户,并确保您使用文件中的确切组织和应用程序serverless.yaml
:
org: orgname <---
app: appname <---
service: backend-rest
...
因此,您不能只使用任意 org/app 名称,您必须使用在无服务器框架中注册的确切 org/app。
推荐阅读
- python - 使用 WHILE 循环创建一个程序,计算从 1 到 100 的数字相加的数量(例如:1+2+3+4+5....等等)
- python - 如何使用python解析非结构化的xml文件?
- vue.js - 在 Vue 单文件组件中访问 props 的首选方式
- sql - Apache HIVE 的计数结果不一致
- javascript - 如何检查一个数组中的值是否在一个单独的数组中具有特征,然后如果有,则在将它们各自转换为新值后返回这些值
- python - python中的熊猫;无法理解在 python-csv 库中使用 replace()
- python - 具有混合数据类型的 Numpy 数组为字符串抛出“invalid literal for int() with base 10”
- ms-word - 如何在 word Addin 中将表格行高和单元格选项设置为带有内容控件的适合文本 | Officejs
- angular - Angular5,Openlayers5 使您的弹出(覆盖)可拖动
- python - 从图像python测量物体的实际尺寸