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

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

LambdaAuthorizer

配置 Lambda 授权方以使用 Amazon API Gateway 函数控制对 AWS Lambda HTTP API 的访问。

有关更多信息和示例,请参阅 中的AWS Lambda使用适用于 HTTP APIs 的 授权方。API 网关 开发人员指南

语法

在您的 中声明此实体 AWS 无服务器应用程序模型 (AWS SAM) 模板时,请使用以下语法。

属性

AuthorizerPayloadFormatVersion

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

这将传递到 authorizerPayloadFormatVersion 定义的 x-amazon-apigateway-authorizer 部分中的 securitySchemes 的 OpenAPI 部分。

有效值1.0或者2.0

类型: 字符串

必需: 是

兼容性AWS CloudFormation: 此属性对于 AWS SAM 是唯一的,没有等效的 AWS CloudFormation。

EnableSimpleResponses

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

这将传递到 enableSimpleResponses 定义的 x-amazon-apigateway-authorizer 部分中的 securitySchemes 的 OpenAPI 部分。

类型:布尔值

必需: 否

兼容性AWS CloudFormation: 此属性对于 AWS SAM 是唯一的,没有等效的 AWS CloudFormation。

FunctionArn

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

这将传递到 authorizerUri 定义的 x-amazon-apigateway-authorizer 部分中的 securitySchemes 的 OpenAPI 部分。

类型: 字符串

必需: 是

兼容性AWS CloudFormation: 此属性对于 AWS SAM 是唯一的,没有等效的 AWS CloudFormation。

FunctionInvokeRole

具有调用授权方所需凭证的 IAM 角色的 ARN。

这将传递到 authorizerCredentials 定义的 x-amazon-apigateway-authorizer 部分中的 securitySchemes 的 OpenAPI 部分。

类型: 字符串

必需: 否

兼容性AWS CloudFormation: 此属性对于 AWS SAM 是唯一的,没有等效的 AWS CloudFormation。

Identity

在 授权方的传入请求中指定 IdentitySource

这将传递到 identitySource 定义的 x-amazon-apigateway-authorizer 部分的 securitySchemes 部分。OpenAPI

类型: LambdaAuthorizationIdentity

必需: 否

兼容性AWS CloudFormation: 此属性对于 AWS SAM 是唯一的,没有等效的 AWS CloudFormation。

示例

LambdaAuthorizer

LambdaAuthorizer 示例

YAML

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