How can i reuse an existing authorizer in a rest api through AWS CDK?

0

It seems there is no method to get an existing authorizer by its attributes, is there any other way?

Eran
asked 2 months ago152 views
1 Answer
0

In AWS CDK, you can reuse an existing authorizer in a REST API by referencing it using its ARN (Amazon Resource Name). Since there isn't a direct method to get an existing authorizer by its attributes, you would typically create an instance of CfnAuthorizer using its ARN. Here's how you can do it in typescript:


import * as cdk from '@aws-cdk/core';
import * as apigateway from '@aws-cdk/aws-apigateway';

const app = new cdk.App();
const stack = new cdk.Stack(app, 'MyStack');

// Assuming you have an existing authorizer ARN
const existingAuthorizerArn = 'arn:aws:apigateway:region::/restapis/api-id/authorizers/authorizer-id';

// Create a reference to the existing authorizer
const existingAuthorizer = apigateway.CfnAuthorizer.fromAuthorizerId(stack, 'ExistingAuthorizer', existingAuthorizerArn);

// Now you can use this existing authorizer in your API Gateway
const api = new apigateway.RestApi(stack, 'MyRestApi');

const resource = api.root.addResource('myresource');
resource.addMethod('GET', new apigateway.HttpIntegration('http://example.com'), {
    authorizer: existingAuthorizer // Attach the existing authorizer
});

app.synth();
profile picture
EXPERT
answered 2 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions