Мне нужно создать веб-сервис для сбора данных из приложений моего клиента.
Эти приложения запрограммированы с использованием различных технологий, и все они имеют одну общую черту: они могут использовать простую веб-службу SOAP.
У меня уже есть служба WCF, которую можно открыть, но, поскольку она была создана только для внутренних целей, мне никогда не приходилось защищать ее.
Я прочитал много статей о том, как защитить службу WCF и как использовать ее из клиентского приложения Microsoft. Тем не менее, я действительно обеспокоен тем, что клиентские приложения, не принадлежащие Microsoft, могут реализовывать стандартную службу безопасности WCF. Я должен помнить, что некоторые из них могут не иметь состояния и не могут удерживать сеанс или что-либо, что может потребоваться для безопасной службы WCF.
Итак, вот варианты, которые у меня есть сейчас.
1) Добавьте параметры имени пользователя / пароля для каждой функции WCF и выполняйте проверку учетных данных при каждом вызове. (У меня есть сертификат SSL ... достаточно ли этого варианта считать защищенным?)
2) Отбросьте мою службу WCF и создайте простую веб-службу SOAP с параметрами имени пользователя и пароля, как указано в варианте № 1, чтобы приблизиться к возможностям приложений моего клиента.
3) Внедрить стандартную безопасность WCF и позволить клиентам найти способ справиться с ней самостоятельно. (Настоящий вопрос здесь: достаточно ли проста безопасность WCF для реализации любым SOAP-клиентом?)
4) Измените мое имя и переезжайте на Ямайку с деньгами моих клиентов, прежде чем они узнают, что я являюсь новичком в области безопасности веб-службы.
5) Что-то еще ...
Так какой мой лучший вариант здесь?