Требуется ли ValidateAntiForgeryToken в WebAPI - PullRequest
0 голосов
/ 26 ноября 2018

Я использую WebAPI с ядром asp.net ... Мне интересно, нужен ли мне что-то вроде атрибута ValidateAntiForgeryToken в моих действиях или его эквивалент?

Я буду использовать токены носителя / JWT какчасть авторизации пользователей ...

API будет использоваться SPA или мобильными клиентами.

1 Ответ

0 голосов
/ 26 ноября 2018

Если вы не используете куки / базовую аутентификацию, это не обязательно.Ссылаясь на этот ответ на бирже стеков безопасности: https://security.stackexchange.com/a/166798/128394.

Причина, по которой CSRF существует, заключается в том, что браузеры автоматически включают файлы cookie для домена в запросы из других источников.В настоящее время вы можете фактически контролировать это с помощью свойства SameSite для файлов cookie.

Так как токены на предъявителя отправляются в виде заголовков авторизации и хранятся, например, в локальном хранилище, они никогда не будут отправляться автоматически браузером + другие сайты не имеют доступав локальное хранилище вашего сайта (по крайней мере, они не должны, это будет серьезной ошибкой безопасности в браузерах).И поэтому никакой CSRF не может произойти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...