gpt4 book ai didi

amazon-web-services - AWS SAM API 与 Cognito 用户池授权者

转载 作者:行者123 更新时间:2023-12-03 23:54:02 25 4
gpt4 key购买 nike

如何使用 AWS SAM 创建 API使用 Cognito 用户池授权者进行授权?

AWS::ApiGateway::Authorizer 。但是...

{
"Type" : "AWS::ApiGateway::Authorizer",
"Properties" : {
"AuthorizerCredentials" : String,
"AuthorizerResultTtlInSeconds" : Integer,
"AuthorizerUri" : String,
"IdentitySource" : String,
"IdentityValidationExpression" : String,
"Name" : String,
"ProviderARNs" : [ String, ... ],
"RestApiId" : String,
"Type" : String
}
}

看起来像RestApiId指的是使用该授权者的API?但使用 AWS SAM,我的 API 定义如下:

Resources:
Ec2Index:
Type: AWS::Serverless::Function
Properties:
Handler: ec2/index.handler
Runtime: nodejs6.10
CodeUri: ./src
FunctionName: 'ApiEc2IndexHandler'
Description: 'List EC2 resources'
Timeout: 30
Role: 'arn:aws:iam::598545985414:role/awsmanagement-lambda-management'
Events:
Ec2Index:
Type: Api
Properties:
Path: /ec2
Method: get

我不明白如何将它们关联在一起?

最佳答案

您现在可以使用“ServerlessRestApi”引用隐式创建的 API 网关。因此,在您的 SAM 模板中添加这段常规的 Cloudformation,一切都会正常工作

ApiCognitoAuthorizer:          
Type: AWS::ApiGateway::Authorizer
Properties:
IdentitySource: 'method.request.header.Authorization'
Name: ApiCognitoAuthorizer
ProviderARNs:
- 'arn:aws:cognito-idp:{region}:{userpoolIdentifier}'
RestApiId: !Ref ServerlessRestApi
Type: COGNITO_USER_POOLS

关于amazon-web-services - AWS SAM API 与 Cognito 用户池授权者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45717123/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com