Django CSRF Protection GraphQL API
У меня есть graphqlAPI, который я использую для CRUD-операций с моей базой данных. Аутентификация основана на токенах. Поэтому, если пользователь хочет сделать cruds (мутации) к моей базе данных, ему нужен действительный токен, чтобы сделать это.
Я не знаю, защищен ли мой API graphql от CSRF-атак, поскольку я исключил эту защиту с помощью csrf_exempt
без csrf_exempt ему требуется токен csrf. Есть ли способ запросить действительный токен csrf без отправки его через frontend? Graphql api используется только для бэкенда для вставки данных в базу данных, в которой я не могу получить токен csrf через фронтенд.
Бэкенд/Фронтенд: Django База данных: Mongo
Спасибо
Если маркер аутентификации передается в поле заголовка (а не в cookie), то нет необходимости в защите CSRF. Это связано с тем, что если пользователь обманом заставит сделать нежелательный запрос к конечной точке, браузер не автоматически вставит маркер в запрос, поэтому он будет неаутентифицированным. Можно также сказать, что токен аутентификации уже служит анти-CSRF токеном.
Браузеры будут автоматически вставлять (не односайтовые, не сторонние) куки в запросы, напротив.