Skip to content
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

Secure Configuration for GraphiQL and Introspection #38

Closed
rstoyanchev opened this issue Mar 9, 2021 · 4 comments
Closed

Secure Configuration for GraphiQL and Introspection #38

rstoyanchev opened this issue Mar 9, 2021 · 4 comments
Labels
in: web Issues related to web handling status: superseded Issue is superseded by another type: enhancement A general enhancement

Comments

@rstoyanchev
Copy link
Contributor

According to the OWASP cheatsheet for GraphQL, GraphiQL and introspection should not be on and accessible without authentication by default. For now simply having GraphiQL disabled by default, but beyond that we need to consider the options more broadly. How it works out of the box, how it is configured and controlled, how it relates to development mode, security settings, and so on.

@rstoyanchev rstoyanchev added the type: enhancement A general enhancement label Mar 9, 2021
@rstoyanchev rstoyanchev added this to the 0.1.0 milestone Mar 9, 2021
@andimarek
Copy link
Contributor

andimarek commented Mar 9, 2021

I must say that I don't understand why Introspection should be ever disabled. Introspection is an integral part of GraphQL and no service I know disables it. In fact there is no obvious way to do that in GraphQL Java and nobody ever asked for it afaik.

Of course you can argue you want it authenticated, which is a reasonable ask.

@rstoyanchev
Copy link
Contributor Author

rstoyanchev commented Mar 9, 2021

I know even less but probably applies in cases where the data is sensitive. There is a link to a real-world example that's along those lines. My best guess is it probably comes down to a convenient way to control it and what the default settings should be.

@rstoyanchev rstoyanchev modified the milestones: 1.0 M1, 1.0 M2 Jun 28, 2021
@rstoyanchev rstoyanchev modified the milestones: 1.0.0-M2, 1.0 Backlog Aug 26, 2021
@cforce
Copy link

cforce commented Jan 15, 2022

relates to #252

@bclozel
Copy link
Member

bclozel commented Jan 17, 2022

I'm closing this issue as superseded by spring-projects/spring-boot#29248 as it's adressed the introspection part.
#252 and #257 are covering other aspects of this, and I'm sure other issues will point new ones.

@bclozel bclozel closed this as completed Jan 17, 2022
@bclozel bclozel added in: web Issues related to web handling status: superseded Issue is superseded by another labels Jan 17, 2022
@bclozel bclozel removed this from the 1.0 Backlog milestone Jan 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in: web Issues related to web handling status: superseded Issue is superseded by another type: enhancement A general enhancement
Projects
None yet
Development

No branches or pull requests

4 participants