Связь службы WCF с поддержкой Silverlight защищена с помощью USB-токена / смарт-карты.Первый доступ должен быть подтвержден путем ввода PIN-кода.После проверки подлинности вредоносный веб-сайт может запускать CSRF-запросы к службе WCF с использованием IMG-тегов и / или JavaScript.В соответствии с Руководством по безопасности при написании и развертывании приложений Silverlight , обычным способом здесь является использование (сеансовых) токенов или так называемого «nonce», хотя проверка заголовка HTTP Referrer оказалась небезопасной.
Я понимаю идею, лежащую в основе этого, насколько я понимаю, она работает хорошо, если у вас есть одна форма (например, форма контакта) и одна служба, где вы можете убедиться, что пользователь должен увидеть и заполнить форму передотправка.В приложении Silverlight я не могу предопределить такую последовательность действий, многие запросы (например, запрос обновления цены для продукта) могут быть запущены в произвольном порядке.
Есть ли у вас какие-либо советы, как я могудолжен защищать связь Silverlight с WCF для предотвращения CSRF-атак, гарантируя, что уже аутентифицированный вызывающий абонент запрашивает доверенный сайт?