本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
LambdaTokenAuthorizer
配置 Lambda 授权方以通过 Lambda 函数控制对 API 的访问。
有关更多信息以及示例,请参阅 使用 AWS SAM 模板控制 API 访问。
语法
要在您的 AWS Serverless Application Model (AWS SAM) 模板中声明此实体,请使用以下语法。
YAML
DisableFunctionDefaultPermissions:
Boolean
FunctionArn:String
FunctionInvokeRole:String
FunctionPayloadType:String
Identity:LambdaTokenAuthorizationIdentity
属性
-
指定
true
以防止 AWS SAM 自动创建AWS::Lambda::Permissions
资源以在您的AWS::Serverless::Api
资源和授权方 Lambda 函数之间配置权限。默认值:
false
类型:布尔值
必需:否
AWS CloudFormation 兼容性:此属性为 AWS SAM 独有,没有 AWS CloudFormation 等效属性。
-
指定 Lambda 函数的函数 ARN,该函数为 API 提供授权。
注意
当为
AWS::Serverless::Api
指定FunctionArn
时,AWS SAM 将自动创建AWS::Lambda::Permissions
资源。该AWS::Lambda::Permissions
资源在您的 API 和授权方 Lambda 函数之间配置权限。类型:字符串
必需:是
AWS CloudFormation 兼容性:此属性为 AWS SAM 独有,没有 AWS CloudFormation 等效属性。
-
将授权者凭证添加到 Lambda 授权方的 OpenApi 定义中。
类型:字符串
必需:否
AWS CloudFormation 兼容性:此属性为 AWS SAM 独有,没有 AWS CloudFormation 等效属性。
-
此属性可用于定义 Api 的 Lambda 授权方的类型。
有效值:
TOKEN
或REQUEST
类型:字符串
必需:否
默认值:
TOKEN
AWS CloudFormation 兼容性:此属性为 AWS SAM 独有,没有 AWS CloudFormation 等效属性。
-
此属性可用于在授权方传入请求中指定
IdentitySource
。仅当属性FunctionPayloadType
为REQUEST
时,该属性是必需属性。必需:条件
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