diff --git a/packages/graphql-mesh-server/lib/fargate.ts b/packages/graphql-mesh-server/lib/fargate.ts index c68796b9..3ed97d53 100644 --- a/packages/graphql-mesh-server/lib/fargate.ts +++ b/packages/graphql-mesh-server/lib/fargate.ts @@ -61,6 +61,11 @@ export interface MeshServiceProps { * SSM values to pass through to the container as secrets */ secrets?: { [key: string]: ssm.IStringParameter | ssm.IStringListParameter }; + /** + * Name of the WAF + * Defaults to 'graphql-mesh-web-acl' + */ + wafName?: string; /** * List of IPv4 addresses to block */ @@ -457,6 +462,7 @@ export class MeshService extends Construct { } this.firewall = new WebApplicationFirewall(this, "waf", { + name: props.wafName, scope: Scope.REGIONAL, visibilityConfig: { cloudWatchMetricsEnabled: true, diff --git a/packages/graphql-mesh-server/lib/graphql-mesh-server.ts b/packages/graphql-mesh-server/lib/graphql-mesh-server.ts index 2d269630..ce13c938 100644 --- a/packages/graphql-mesh-server/lib/graphql-mesh-server.ts +++ b/packages/graphql-mesh-server/lib/graphql-mesh-server.ts @@ -86,6 +86,11 @@ export type MeshHostingProps = { * Region of the SNS Topic that deployment notifications are sent to */ notificationRegion?: string; + /** + * Name of the WAF + * Defaults to 'graphql-mesh-web-acl' + */ + wafName?: string; /** * List of IPv4 addresses to block */