LambdaTokenAuthorizer - AWS Serverless Application Model

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

LambdaTokenAuthorizer

配置 Lambda 授权方以通过 Lambda 函数控制对 API 的访问。

有关更多信息以及示例,请参阅 使用 AWS SAM 模板控制 API 访问

语法

要在您的 AWS Serverless Application Model (AWS SAM) 模板中声明此实体,请使用以下语法。

属性

DisableFunctionDefaultPermissions

指定 true 以防止 AWS SAM 自动创建 AWS::Lambda::Permissions 资源以在您的 AWS::Serverless::Api 资源和授权方 Lambda 函数之间配置权限。

默认值false

类型:布尔值

必需:否

AWS CloudFormation 兼容性:此属性为 AWS SAM 独有,没有 AWS CloudFormation 等效属性。

FunctionArn

指定 Lambda 函数的函数 ARN,该函数为 API 提供授权。

注意

当为 AWS::Serverless::Api 指定 FunctionArn 时,AWS SAM 将自动创建 AWS::Lambda::Permissions 资源。该 AWS::Lambda::Permissions 资源在您的 API 和授权方 Lambda 函数之间配置权限。

类型:字符串

必需:是

AWS CloudFormation 兼容性:此属性为 AWS SAM 独有,没有 AWS CloudFormation 等效属性。

FunctionInvokeRole

将授权者凭证添加到 Lambda 授权方的 OpenApi 定义中。

类型:字符串

必需:否

AWS CloudFormation 兼容性:此属性为 AWS SAM 独有,没有 AWS CloudFormation 等效属性。

FunctionPayloadType

此属性可用于定义 Api 的 Lambda 授权方的类型。

有效值TOKENREQUEST

类型:字符串

必需:否

默认值TOKEN

AWS CloudFormation 兼容性:此属性为 AWS SAM 独有,没有 AWS CloudFormation 等效属性。

Identity

此属性可用于在授权方传入请求中指定 IdentitySource。仅当属性 FunctionPayloadTypeREQUEST 时,该属性是必需属性。

类型Lambda 令牌授权身份

必需:条件

AWS CloudFormation 兼容性:此属性为 AWS SAM 独有,没有 AWS CloudFormation 等效属性。

示例

Lambdata 令牌授权

YAML

Authorizers: MyLambdaTokenAuth: FunctionArn: Fn::GetAtt: - MyAuthFunction - Arn Identity: Header: MyCustomAuthHeader # OPTIONAL; Default: 'Authorization' ValidationExpression: mycustomauthexpression # OPTIONAL ReauthorizeEvery: 20 # OPTIONAL; Service Default: 300

基本 Lambdata 令牌授权

YAML

Authorizers: MyLambdaTokenAuth: FunctionArn: Fn::GetAtt: - MyAuthFunction - Arn