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

指定提供 API 授權之 Lambda 函數的函數 ARN。

注意

AWS SAM 當指定給時FunctionArn,會自動建立AWS::Lambda::Permissions資源AWS::Serverless::Api。資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的傳入請求中指定。只有在屬性設定為時,才需要此FunctionPayloadType屬性REQUEST

類型:LambdaTokenAuthorizationIdentity

必要:有條件

AWS CloudFormation 兼容性:此屬性是唯一的, AWS SAM 並且沒有相 AWS 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