У меня есть ситуация, когда у меня есть веб-служба, обслуживающая данные (изображения, мультимедиа и т. Д.), Которые необходимо защитить, чтобы к ним мог получить доступ только соответствующий клиент Silverlight. Их может быть много: одни имеют доступ к одним средствам массовой информации, а другие - к другим.
Веб-сервис существует, и сейчас это .asmx, но мы собираемся обновить его до WFC.
Пока что, прочитав множество блогов по WCF и авторизации, я пришел к этой идее:
- Каждый клиент Silverlight имеет ключ клиента где-то в своей конфигурации.
- Сервер веб-службы защищен протоколом SSL, поэтому идентификатор клиента зашифрован как параметр веб-службы.
- Аутентификация осуществляется с помощью клиентского ключа.
- Авторизация осуществляется через клиентский ключ.
Насколько я понимаю, я думаю, что это должно быть безопасно, но, пожалуйста, не стесняйтесь проделывать дыры!
Единственное, что меня беспокоит, так это то, что мои исследования показывают, что использование WCF для аутентификации и авторизации так сильно нравится, но мне это кажется слишком сложным для того, что мне нужно! Не говоря уже о понимании того, как сложные файлы конфигурации клиента будут работать для приложения Silverlight, обращающегося к службе WCF.
В любом случае, насколько я понимаю, для использования аутентификации WCF требуется хотя бы имя пользователя и пароль или сертификат, которые кажутся очень неуклюжими, вместо того, чтобы просто выдавать вместо этого хороший клиентский ключ.
Кажется ли моя идея безопасной и разумной, или мне следует продолжать изучение WFC, поскольку фреймворк - лучшее решение?
Если для обеспечения безопасности предпочтительнее фреймворк WCF, можете ли вы дать мне какой-либо совет высокого уровня относительно того, какой поток мне понадобится для защиты моей веб-службы?
Будем рады услышать советы и опыт людей! :)
Большое спасибо!
Энди