Как защитить вызовы RESTful от Silverlight?

У меня есть приложение Silverlight, которое отправляет/получает конфиденциальные данные на некоторые конечные точки WCF RESTful. Я знаю, что кто-то может перепроектировать приложение Silverlight, чтобы получить любые ключи, поэтому шифрование/дешифрование может оказаться невозможным.

Существуют ли какие-либо способы защиты данных, кроме использования HTTPS?


person Brandon    schedule 31.01.2011    source источник


Ответы (2)


Вы также можете попробовать службы RIA, если вам не нужно предоставлять услуги кому-либо еще или они находятся на том же сервере.

person Dustin Davis    schedule 31.01.2011
comment
Это казалось лучшим решением для наших приложений Silverlight. - person Brandon; 02.02.2011

Много, просто зависит от того, сколько работы вы хотите сделать. Вы можете использовать подпись через x509, шифрование сообщения с помощью x509, ограничение запросов (разрешить доступ только с домена xyz или ip) или комбинацию всех/некоторых из этих вариантов.

Некоторые из них будут менее безопасными, чем другие, так как Silverlight можно отменить, поэтому вы можете попробовать запутать свое приложение Silverlight.

person Dustin Davis    schedule 31.01.2011
comment
Я боялся, что это будет единственный вариант. Я считаю, что лучшим вариантом является настройка моих служб WCF RESTful для поддержки соединений HTTP и HTTPS, принудительное соединение HTTPS для моих приложений Silverlight и использование соединения HTTP для приложений, отличных от Silverlight. - person Brandon; 01.02.2011
comment
Почему бы не использовать общедоступные конечные точки в качестве службы и не использовать службы RIA, как предложил Titan2782? Таким образом, вам не нужно беспокоиться о шифровании от Silverlight к вашей службе, и ваши общедоступные конечные точки по-прежнему будут доступны для использования. - person Dustin Davis; 01.02.2011