Beispiele für Lambda-Autorisierer für AWS SAM - AWS Serverless Application Model

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Beispiele für Lambda-Autorisierer für AWS SAM

Der AWS::Serverless::Api Ressourcentyp unterstützt zwei Arten von Lambda-Autorisierern: Autorisierer und TOKEN Autorisierer. REQUEST Der Ressourcentyp unterstützt nur Autorisierer. AWS::Serverless::HttpApi REQUEST Im Folgenden finden Sie Beispiele für jeden Typ.

Beispiel für einen TOKEN Lambda-Authorizer () AWS::Serverless::Api

Sie können den Zugriff auf Ihre steuern, APIs indem Sie in Ihrer AWS SAM Vorlage einen TOKEN Lambda-Autorisierer definieren. Dazu verwenden Sie den ApiAuth Datentyp.

Im Folgenden finden Sie ein Beispiel für einen AWS SAM Vorlagenabschnitt für einen TOKEN Lambda-Autorisierer:

Anmerkung

Im folgenden Beispiel SAM FunctionRole wird der implizit generiert.

Resources: MyApi: Type: AWS::Serverless::Api Properties: StageName: Prod Auth: DefaultAuthorizer: MyLambdaTokenAuthorizer Authorizers: MyLambdaTokenAuthorizer: FunctionArn: !GetAtt MyAuthFunction.Arn MyFunction: Type: AWS::Serverless::Function Properties: CodeUri: ./src Handler: index.handler Runtime: nodejs12.x Events: GetRoot: Type: Api Properties: RestApiId: !Ref MyApi Path: / Method: get MyAuthFunction: Type: AWS::Serverless::Function Properties: CodeUri: ./src Handler: authorizer.handler Runtime: nodejs12.x

Weitere Informationen zu Lambda-Autorisierern finden Sie unter Verwenden von API Gateway-Lambda-Autorisierern im Gateway Developer Guide. API

Beispiel für einen REQUEST Lambda-Authorizer () AWS::Serverless::Api

Sie können den Zugriff auf Ihre steuern, APIs indem Sie in Ihrer AWS SAM Vorlage einen REQUEST Lambda-Autorisierer definieren. Dazu verwenden Sie den ApiAuth Datentyp.

Im Folgenden finden Sie ein Beispiel für einen AWS SAM Vorlagenabschnitt für einen REQUEST Lambda-Autorisierer:

Resources: MyApi: Type: AWS::Serverless::Api Properties: StageName: Prod Auth: DefaultAuthorizer: MyLambdaRequestAuthorizer Authorizers: MyLambdaRequestAuthorizer: FunctionPayloadType: REQUEST FunctionArn: !GetAtt MyAuthFunction.Arn Identity: QueryStrings: - auth MyFunction: Type: AWS::Serverless::Function Properties: CodeUri: ./src Handler: index.handler Runtime: nodejs12.x Events: GetRoot: Type: Api Properties: RestApiId: !Ref MyApi Path: / Method: get MyAuthFunction: Type: AWS::Serverless::Function Properties: CodeUri: ./src Handler: authorizer.handler Runtime: nodejs12.x

Weitere Informationen zu Lambda-Autorisierern finden Sie unter Verwenden von API Gateway-Lambda-Autorisierern im Gateway Developer Guide. API

Beispiel für einen Lambda-Authorizer () AWS::Serverless::HttpApi

Sie können den Zugriff auf Ihre steuern, HTTP APIs indem Sie in Ihrer AWS SAM Vorlage einen Lambda-Autorisierer definieren. Dazu verwenden Sie den HttpApiAuth Datentyp.

Im Folgenden finden Sie ein Beispiel für einen AWS SAM Vorlagenabschnitt für einen Lambda-Autorisierer:

Resources: MyApi: Type: AWS::Serverless::HttpApi Properties: StageName: Prod Auth: DefaultAuthorizer: MyLambdaRequestAuthorizer Authorizers: MyLambdaRequestAuthorizer: FunctionArn: !GetAtt MyAuthFunction.Arn FunctionInvokeRole: !GetAtt MyAuthFunctionRole.Arn Identity: Headers: - Authorization AuthorizerPayloadFormatVersion: 2.0 EnableSimpleResponses: true MyFunction: Type: AWS::Serverless::Function Properties: CodeUri: ./src Handler: index.handler Runtime: nodejs12.x Events: GetRoot: Type: HttpApi Properties: ApiId: !Ref MyApi Path: / Method: get PayloadFormatVersion: "2.0" MyAuthFunction: Type: AWS::Serverless::Function Properties: CodeUri: ./src Handler: authorizer.handler Runtime: nodejs12.x