2009-11-20 1 views
1

Исследовательский вопрос, здесь. После некоторого чтения у меня возникает ощущение, что параметры проверки подлинности WCF не являются «дружественными» для клиентов, не принадлежащих Microsoft, или требуют больших усилий для реализации. Я создаю службу REST WCF, для которой мне нужна простая простая проверка дайджеста; например Я сохраняю имя пользователя и пароль в Web.config и сообщаю об этом с командой, которая будет использовать эту службу. Команда, которая будет использовать эту услугу, - это устаревший магазин, не разбирающийся в инструментах или помощниках Microsoft; например ANSI C/C++, PHP и т. Д.Аутентификация WCF «дружественная» для клиентов, не относящихся к Microsoft?

В любом случае, MSDN tells me, для проверки подлинности которого требуется, чтобы сервер находился в домене. Я не хочу или нуждаюсь в том, чтобы эта служба была в домене. Это похоже на странное требование. Поэтому я отклонил этот вариант.

Итак, я прочитал о проверке подлинности NTLM и Windows, но я беспокоюсь, что я буду налагать нагрузку на другую команду, поддерживая только методы аутентификации, основанные на Microsoft; не придется ли им приложить гораздо больше усилий, чтобы закодировать такую ​​услугу? Эти методы кажутся неразрывно связаны с понятиями, как домены Windows, и учетных записей пользователей и т.д.

ответ

1

Если вы просто ищете «дружелюбие», вы можете пойти на базовую аутентификацию, которая в значительной степени поддерживается повсюду.

Однако, если это не связано с каким-либо уровнем шифрования транспортного уровня, тогда пароли будут переданы в виде чистого текста - довольно плохая ситуация с точки зрения безопасности.

Проверка подлинности NTLM и Kerberos поддерживается несколькими технологиями, отличными от WCF, но является бременем/требованием к среде, в которой они используются.

Вы можете изучить аутентификацию уровня сообщения, означающую, что учетные данные будут частью сообщения, а не обрабатываться транспортом. WCF поддерживает спецификации WS- *, которые относятся к безопасности на уровне сообщений. Эти спецификации снова не привязаны к WCF или Windows.

Похоже, что самый простой способ в вашей настройке - использовать базовую аутентификацию и использовать HTTPS для транспорта.

+0

Прошлый опыт заставил меня одобрить дайджест по базовой аутентификации, не задумываясь, но это действительно лучший маршрут здесь. У меня создалось впечатление, что аутентификация дайджеста была хорошим (не идеальным) решением для избежания передачи учетных данных cleartext * и * избежания транспортного шифрования. Я озадачен тем, почему в WCF это «особый случай». Почему на * Земле * вам нужен домен, чтобы сделать это? –

+0

Проверка дайджеста WCF проверяет пользователей на соответствие AD. Дополнительную информацию см. По адресу http://blogs.msdn.com/drnick/archive/2006/05/12/understanding-http-authentication.aspx. – HakonB

1

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

Вам необходимо проверить Forms Authentication, который, вероятно, удовлетворит ваши потребности.

+0

Это вопрос WCF (веб-сервис). –

+0

Я думаю, что это по-прежнему актуально, так как техника говорит о том, как ее реализовать, а не только при наличии кнопки _Form с кнопкой submit_ – Amirshk

+0

Возможно, больше ссылок WCF поможет: http://msdn.microsoft.com/en-us/ библиотека/bb386582.aspx. –

Смежные вопросы