Создайте защищенное приложение с basicHttpBinding

Я действительно действительно устал они день из-за направления с этой проблемой. Я создаю приложение XBAP (Приложение браузера WPF), который использует Сервис WCF. Это приложение требует:

  • Пользователи могут войти в систему при помощи их имени пользователя и пароля (что хранилище в моей базе данных)
  • Пользователи не должны устанавливать ни один сертификат X509 (*.pfx или *.cert...)
  • Сервис WCF должен использовать basicHttpBinding (для поддержания другого приложения Silverlight)

Я попробовал много пути, но они не соответствие эти требования. У Вас есть какое-либо решение?Заранее спасибо.

1
задан Juergen 14 April 2015 в 21:44
поделиться

1 ответ

basicHttpBinding, как следует из названия, является очень простым в том, что предлагает. Это особенно важно, когда речь идет о безопасности.

Насколько я знаю, вы не можете добиться того, что пытаетесь сделать. BasicHttpBinding поддерживает только транспортную безопасность (с использованием протокола https) с учетными данными Windows (не подходит для Интернета с настраиваемыми пользователями) или цифровыми сертификатами, или безопасность сообщений с помощью цифрового сертификата (который вы явно исключаете - почему?).

Ознакомьтесь с этой статьей CodeProject 8 шагов, чтобы включить проверку подлинности Windows в WCF BasicHttpBinding или Google для «безопасности basicHttpBinding» - вы найдете множество статей, но, вероятно, не найдете реального решения для ваших требований - вы просто не можете сделайте это с помощью basicHttpBinding.

Обновление: по умолчанию в WCF вы должны передавать учетные данные вызывающего абонента при каждом вызове, но не как параметры в методе службы, а вместо этого путем указания учетных данных клиента на стороне клиента, созданной прокси-сервером службы. Примерно так:

 myService.ClientCredentials.UserName.UserName = "username";
 myService.ClientCredentials.UserName.Password = "p@ssw0rd";
2
ответ дан 2 September 2019 в 23:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: