Skip to content

Provide option for disabling field introspection with GraphQL #29248

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
bclozel opened this issue Jan 3, 2022 · 0 comments
Closed

Provide option for disabling field introspection with GraphQL #29248

bclozel opened this issue Jan 3, 2022 · 0 comments
Assignees
Labels
type: enhancement A general enhancement
Milestone

Comments

@bclozel
Copy link
Member

bclozel commented Jan 3, 2022

Most GraphQL implementations allow field introspection by default or even consider it as part of the spec. Without this feature, clients relying on introspection (like GraphiQL) won't work.

As discussed in the OWASP guide, some consider that introspection allows attacker to learn about queries and data types. In this case, GraphQL clients should be given the schema out-of-band and rely on a different source of information to learn about the API.

The same guide argues that disabling introspection won't prevent attackers to learn about the API, since brute-forcing and GraphQL error hints will give the information away quite easily anyway.

Spring Boot should provide an option to disable introspection, but not enable it by default.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: enhancement A general enhancement
Projects
None yet
Development

No branches or pull requests

1 participant