Examples autorizadores de Lambda - AWS Serverless Application Model

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Examples autorizadores de Lambda

LaAWS::Serverless::Apiadmite dos tipos de autorizadores Lambda:TOKENautorizadores de yREQUESTautorizadores. LaAWS::Serverless::HttpApiEl tipo de recurso solo admiteREQUESTautorizadores. A continuación se muestran ejemplos de cada tipo de.

Lambda:TOKENEjemplo de autorizador (AWS::Serverless::Api)

Puede controlar el acceso a sus API definiendo un LambdaTOKENautorizador dentro de suAWS SAMPlantilla de plantilla. Para ello, utilice elApiAuthTipos de datos de.

A continuación se muestra un ejemploAWS SAMsección de plantilla para un LambdaTOKENautorizador:

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

Para obtener más información sobre los autorizadores de Lambda, consulteUso de autorizadores Lambda de API Gatewayen laGuía API Gateway.

Lambda:REQUESTEjemplo de autorizador (AWS::Serverless::Api)

Puede controlar el acceso a sus API definiendo un LambdaREQUESTautorizador dentro de suAWS SAMPlantilla de plantilla. Para ello, utilice elApiAuthTipos de datos de.

A continuación se muestra un ejemploAWS SAMsección de plantilla para un LambdaREQUESTautorizador:

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

Para obtener más información sobre los autorizadores de Lambda, consulteUso de autorizadores Lambda de API Gatewayen laGuía API Gateway.

Ejemplo de autorizador de Lambda (AWS::Serverless::HttpApi)

Puede controlar el acceso a sus API HTTP definiendo un autorizador de Lambda en suAWS SAMPlantilla de plantilla. Para ello, utilice elHttpApiAuthTipos de datos de.

A continuación se muestra un ejemploAWS SAMsección de plantilla para un autorizador Lambda:

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