Внедрение проверки на подделку для пользовательского приложения Blazor

#csrf #blazor #blazor-server-side #asp.net-blazor

#csrf #blazor #blazor-на стороне сервера #asp.net-blazor

Вопрос:

Наше приложение создано с использованием сервера Blazor и .razor pages, который взаимодействует с API Azure. Я хотел бы знать, следует ли нам внедрять для пользовательского интерфейса Blazor защиту от подделки CSRF / XSRF, если да, могу ли я получить некоторую информацию о том, как реализовать?

Я наблюдал за сообщениями о внедрении защиты от подделки для ASP.Приложения Net core MVC https://exceptionnotfound.net/using-anti-forgery-tokens-in-asp-net-core-razor-pages а также в блогах упоминалось, что страницы Razor по умолчанию реализуют проверку на подделку.

Но для Blazor хотелось бы знать, какому шаблону следовать?

Ответ №1:

Из документации Microsoft:

Серверные приложения Blazor могут быть доступны из разных источников, если не будут приняты дополнительные меры для предотвращения этого. Чтобы отключить доступ из разных источников, либо отключите CORS в конечной точке, добавив промежуточное программное обеспечение CORS в конвейер и атрибут DisableCorsAttribute к метаданным конечной точки Blazor, либо ограничьте набор разрешенных источников, настроив SignalR для совместного использования ресурсов из разных источников.

Если CORS включен, могут потребоваться дополнительные шаги для защиты приложения в зависимости от конфигурации CORS. Если CORS включен глобально, CORS можно отключить для серверного концентратора Blazor, добавив метаданные DisableCorsAttribute к метаданным конечной точки после вызова MapBlazorHub в построителе маршрутов конечной точки.