Gun*_*t.r 7 amazon-web-services aws-lambda
我在尝试sam deploy我的 lambda 函数时遇到了这个问题。我在这里找到了相同问题的链接:
当使用引导部署并接受默认选项时,我收到安全约束不满足!错误。· 问题 #1990 · awslabs/aws-sam-cli
但是,即使通读了它和文档,我也不明白如何修复它。有人可以向我解释一下吗?
Sam*_*Sam 11
这通常发生在所有开始使用 AWS SAM Hello World 模板并在没有任何更改或遵循 AWS SAM 教程的情况下进行部署的人。(并不意味着您不应该从该模板开始或不使用 AWS SAM 教程,而是您应该添加更多配置来摆脱此消息)。
此处,AWS SAM 通知您您的应用程序在未经授权的情况下配置了 API 网关 API。当您部署相同的应用程序时,AWS SAM 会创建一个公开可用的 URL/API。
为了摆脱这个消息,你需要为你的 API 定义一些访问控制机制。
您可以使用 AWS SAM 通过在您的 AWS SAM 模板中启用授权来控制谁可以访问您的 API Gateway API。例子,
MyApi:
Type: AWS::Serverless::Api
Properties:
StageName: Prod
Auth:
DefaultAuthorizer: MyLambdaTokenAuthorizer
Authorizers:
MyLambdaTokenAuthorizer:
FunctionArn: !GetAtt MyAuthFunction.Arn
MyAuthFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: ./src
Handler: authorizer.handler
Runtime: nodejs12.x
Run Code Online (Sandbox Code Playgroud)
上面的代码片段是名为Lambda Authorizer的授权机制的示例。还有一些其他的机制。例如,IAM 权限、API 密钥等。
您可以从以下链接中找到有关这些授权的更多信息 https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-controlling-access-to-apis.html
| 归档时间: |
|
| 查看次数: |
3546 次 |
| 最近记录: |