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