attach lambda authorizer to http API

0

Hi team,

I want to create an API gw lambda authorizer and attach it to the HTTP API

this is the piece of code I did :

// create api gw authorizer
    const apiGwAuthorizer = new HttpLambdaAuthorizer(
      "ApiGwLambdaAuthorizer",
      myLambdaFuncAuth,
      {
        responseTypes: [HttpLambdaResponseType.SIMPLE], 
        identitySource: ["$request.header.my-header"],
        resultsCacheTtl: Duration.seconds(300),
      }
    );

    //attach the authorizer to the ANY route
    myhttpapi.addRoutes({
      integration: new HttpLambdaIntegration(
        "authorizer-lambda-integration",
        authorizerLambda
      ),
      path: "/ANY /{proxy+}",
      authorizer: apiGwAuthorizer ,
    });

but when I deploy the CDK this authorizer created but it's not associated with the API GW

the API GW is passed as parameter from other stack in this stack

Not sure what I miss here, is it because the route 'ANY /{proxy+}' already exists?

1 回答
0

Not sure, but try doing it the other way around (if you want to split into two stacks). Create the Lambda function in one stack. In the API GW stack, attach the authorizer to the right routes.

profile pictureAWS
专家
Uri
已回答 2 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则