本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
LambdaTokenAuthorizer
配置 Lambda 授权方以通过 Lambda 函数控制对 API 的访问。
有关更多信息以及示例,请参阅 控制对 API Gateway API 的访问。
语法
要在您的中声明此实体Amazon Serverless Application Model(Amazon SAM) 模板,请使用以下语法。
YAML
AuthorizationScopes:ListFunctionArn:StringFunctionInvokeRole:StringFunctionPayloadType:StringIdentity:LambdaTokenAuthorizationIdentity
属性
-
AuthorizationScopes -
此授权者的授权范围列表。
类型:List
必需:否
Amazon CloudFormation兼容性:该属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
-
FunctionArn -
指定提供 API 授权的 Lambda 函数的函数 arn。
类型:字符串
必需:是
Amazon CloudFormation兼容性:该属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
-
FunctionInvokeRole -
将授权者凭据添加到 Lambda 授权者的 OpenAPI 定义中。
类型:字符串
必需:否
Amazon CloudFormation兼容性:该属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
-
FunctionPayloadType -
此属性可用于定义 API 的 Lambda 授权方的类型。
有效值:
TOKEN或REQUEST类型:字符串
必需:否
默认值:
TOKENAmazon CloudFormation兼容性:该属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
-
Identity -
此属性可用于指定
IdentitySource在收到的授权人请求中。此属性只有在FunctionPayloadType属性将设定为REQUEST.必需:条件
Amazon CloudFormation兼容性:该属性是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
示例
lambdatokenAuth
YAML
Authorizers: MyLambdaTokenAuth: FunctionArn: Fn::GetAtt: - MyAuthFunction - Arn Identity: Header: MyCustomAuthHeader # OPTIONAL; Default: 'Authorization' ValidationExpression: mycustomauthexpression # OPTIONAL ReauthorizeEvery: 20 # OPTIONAL; Service Default: 300
BasiclambdatokenAuth
YAML
Authorizers: MyLambdaTokenAuth: FunctionArn: Fn::GetAtt: - MyAuthFunction - Arn