использовать приложение wsHttpBinding или basicHttpBinding для silverlight, какое? - PullRequest
4 голосов
/ 15 марта 2011

Я хочу разработать службу wcf, которая размещается на сервере iis и использует приложение silverlight в Интернете (приложение SL используется из этой службы wcf).также я хочу использовать аутентификацию по имени пользователя и паролю для моих пользователей, которые запрашивают у приложения silverlight.

я хочу знать, что для этой цели я должен использовать wsHttpBinding или basicHttpBinding?я не мог использовать wsHttpBinding на silverlight и при использовании basicHttpBinding, я не мог создать аутентификацию и авторизацию для этой привязки

также я работаю с .net4 (wcf 4 и silverlight 4)

, пожалуйста, помогите мнеспасибо за ваши ответы

Ответы [ 2 ]

1 голос
/ 15 марта 2011

BasicHttpBinding не поддерживает безопасность на уровне сообщений для аутентификации.Можно реализовать проверку подлинности на транспортном уровне, но для этого потребуется, чтобы вы полагались на проверку подлинности Windows, и поэтому она, вероятно, не является кроссплатформенной

. Дополнительные сведения см. Здесь.* Я бы лично рекомендовал вам изучить службы WCF в стиле REST, доступные через стек Silverlight BrowserHttp ... поэтому, если пользователь прошел аутентификацию на вашем серверном приложении через ASP.NET (я предполагаю, что ваше приложение Silverlight размещено в ASP.NET/IIS) клиентское приложение Silverlight будет использовать те же учетные данные для проверки подлинности (передавая тот же файл cookie проверки подлинности ASP.NET со своими запросами).Это сработало для меня лучше (и менее суетно), чем пытаться бороться с BasicHttpBinding.Этот подход означает, что вы отказываетесь от использования «Добавить ссылку на службу ...».Я рекомендую этот блог для получения дополнительной информации об этом подходе.

1 голос
/ 15 марта 2011

Я могу быть далеко отсюда, но я только начал аналогичный проект. Моим первым понятием было бы использовать basicHttpBinding. Ваш веб-сервис будет затем принимать имя пользователя и пароль в качестве параметров для любого вызова метода (имя пользователя / пароль могут быть сохранены в сеансе или в файле настроек). На серверной стороне вы будете проверять учетные данные пользователя для каждого вызова. Использование этого метода будет означать, что вы захотите использовать Https, поэтому вам потребуется установить свойство привязки

<security mode="Transport">

Надеюсь, это поможет!

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