Brian Clozel 89d5b7e9df Support CSRF protection in GraphiQL with cookie-to-header strategy
Prior to this commit, secured applications with CSRF protection could
not easily use the GraphiQL integration shipped with Spring for GraphQL,
as the JavaScript code would not work with any CSRF protection strategy
for single page apps.

This commit checks whether the main HTTP response contains a
`XSRF-TOKEN` Cookie value, and uses it as a `X-XSRF-TOKEN` request
header for the next AJAX request to the `/graphql` endpoint.

Note that a specific configuration must be set in Spring Security to
achieve that:
* the CSRF token must be sent as a response Cookie for the initial
  authenticated request
* if the application is protected against BREACH, all new token values
  must be sent as response cookies as well and a request handler must be
  configured

Closes gh-758
2023-08-18 20:51:26 +02:00
2023-07-17 16:20:17 +02:00
2023-07-17 17:40:54 +02:00
2023-03-02 12:15:08 +00:00
2023-03-21 17:47:04 +01:00
2020-07-23 09:40:14 +03:00

Spring for GraphQL Build status

GraphQL support for Spring applications with GraphQL Java.

Code of Conduct

This project is governed by the Spring Code of Conduct. By participating, you are expected to uphold this code of conduct. Please report unacceptable behavior to spring-code-of-conduct@pivotal.io.

Documentation

This project has reference documentation (published and source), an API reference. The are samples in the 1.0.x branch that will be moved out into a separate repository.

Continuous Integration Builds

Information regarding CI builds can be found in the project's Concourse pipeline documentation.

Stay in Touch

Follow @SpringCentral.

Getting Support

Check out the Spring GraphQL tags on Stack Overflow. Commercial support is available too.

License

This project is released under version 2.0 of the Apache License.

Description
No description provided
Readme 5.9 MiB
Languages
Java 97.9%
CSS 1.2%
Shell 0.7%
HTML 0.2%