LambdaAuthorizer - Amazon Serverless Application Model
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

LambdaAuthorizer

使用以下方配置 Lambda 授权方以控制对 Amazon API Gateway HTTP API 的访问。Amazon Lambdafunction.

有关详细信息和示例,请参阅使用Amazon LambdaHTTP API 的授权方中的API Gateway 开发人员指南.

语法

要在您的版本中申报此实体Amazon Serverless Application Model(Amazon SAM) 模板,请使用以下语法。

属性

AuthorizerPayloadFormatVersion

指定发送到 HTTP API Lambda 授权方的负载的格式。对于 HTTP API Lambda 授权方必须指定。

这将传递至authorizerPayloadFormatVersion的部分x-amazon-apigateway-authorizer中的securitySchemesOpenAPI 定义的部分。

有效值1.02.0

类型:字符串

必需:是

Amazon CloudFormation兼容性:此属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项

EnableSimpleResponses

指定 Lambda 授权方是否以简单格式返回响应。默认情况下,Lambda 授权方必须返回Amazon Identity and Access Management(IAM) 策略。如果启用,Lambda 授权方可以返回布尔值,而不是 IAM 策略。

这将传递至enableSimpleResponses的部分x-amazon-apigateway-authorizer中的securitySchemesOpenAPI 定义的部分。

类型:Boolean

必需:否

Amazon CloudFormation兼容性:此属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项

FunctionArn

提供 API 授权的 Lambda 函数的 Amazon 资源名称 (ARN)。

这将传递至authorizerUri的部分x-amazon-apigateway-authorizer中的securitySchemesOpenAPI 定义的部分。

类型:字符串

必需:是

Amazon CloudFormation兼容性:此属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项

FunctionInvokeRole

具有 API Gateway 所需凭证的 IAM 角色的 ARN 以调用授权方函数。如果您的函数的基于资源的策略未授权 API Gateway,请指定此参数lambda:InvokeFunction权限。

这将传递至authorizerCredentials的部分x-amazon-apigateway-authorizer中的securitySchemesOpenAPI 定义的部分。

有关更多信息,请参阅 。创建 Lambda 授权方中的API Gateway 开发人员指南.

类型:字符串

必需:否

Amazon CloudFormation兼容性:此属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项

Identity

指定IdentitySource在收到的授权人请求中。

这将传递至identitySource的部分x-amazon-apigateway-authorizer中的securitySchemesOpenAPI 定义的部分。

类型lambda 授权身份

必需:否

Amazon CloudFormation兼容性:此属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项

示例

lambdaA授权器

Lambda 授权方示例

YAML

Auth: Authorizers: MyLambdaAuthorizer: AuthorizerPayloadFormatVersion: 2.0 FunctionArn: Fn::GetAtt: - MyAuthFunction - Arn FunctionInvokeRole: Fn::GetAtt: - LambdaAuthInvokeRole - Arn Identity: Headers: - Authorization