Disable GraphQL Introspection

A plugin for Traefik to disable GraphQL Introspection.

Configuration

Static

pilot:
  token: xxx
experimental:
  plugins:
    traefik-plugin-disable-graphql-introspection:
      modulename: github.com/hongbo-miao/traefik-plugin-disable-graphql-introspection
      version: v0.1.0

Dynamic

http:
  routers:
    graphql-server-entrypoint:
      service: graphql-server-service
      entrypoints:
        - graphql-server-entrypoint
      rule: Host(`localhost`)
      middlewares:
        - my-traefik-plugin-disable-graphql-introspection
  services:
    graphql-server-service:
      loadBalancer:
        servers:
          - url: http://localhost:5000/
  middlewares:
    my-traefik-plugin-disable-graphql-introspection:
      plugin:
        traefik-plugin-disable-graphql-introspection:
          GraphQLPath: /graphql

Testing

You can run tests by running following command:

docker compose build && docker compose run plugin make test