Безопасность на уровне сообщений Wcf с САМОЗАВЕРЯЮЩИМ сертификатом IIS
Дорогие,
У меня есть служба WCF, размещенная на IIS, и я создал самозаверяющий сертификат на IIS.
Что делать дальше, чтобы обезопасить сервис с помощью Безопасность на уровне сообщений и это Сертификат IIS?
И как я должен настроить клиент, который будет использовать эту защищенную службу? (зная, что клиент находится на другой машине, а не на том же сервере, что и служба)
Я читал много статей в интернете, но они либо используют безопасность уровня Trasport, либо создают самозаверяющий сертификат с помощью makecert команда вне IIS.
Кроме того, почти все примеры реализуют как службу, так и ее потребляющий клиент на одной машине, поэтому я запутался в создании сертификата и ссылках на него в конфигурационных файлах.
Любая помощь будет оценена по достоинству. Спасибо
Что я уже пробовал:
Я использовал эту статью для создания сертификата на IIS и настройки службы (в web.config), но я не мог реализовать клиент, как они это сделали, потому что они работают на одной машине, я думаю.
безопасность сообщений в сертификате wcf | security[^]
F-ES Sitecore
Это только для внутреннего тестирования? Самозаверяющие сертификаты действительно предназначены только для локального тестирования, вы не можете использовать их должным образом, вам нужно получить фактический подписанный сертификат, который может быть проверен клиентом.
nina4ever
Сервис будет вызываться только созданной нами веб-страницей. Эта веб-страница доступна пользователям из интернета, но служба находится на внутреннем сервере и не будет доступна публично. Так что самоподписанного сертификата в нашем случае достаточно, как я читал во многих статьях.
F-ES Sitecore
Если веб-страница размещена внутри вас и вызывает службу, также размещенную внутри вас, то на самом деле вам вообще не нужен https. Если что-то из этого происходит через интернет, то самоподписанный сертификат никогда не будет достаточно хорош.
Самозаверяющие сертификаты-это только заполнители для тех случаев, когда вы хотите протестировать службу с помощью https без необходимости в надлежащем сертификате, и ничего больше.
nina4ever
Да, веб-страница и служба взаимодействуют внутренне. Но сама веб - страница открыта для доступа в интернет. Мой босс попросил, чтобы мы зашифровали связь между сервисом и страницей, и у меня нет опыта в вопросах безопасности, чтобы обсуждать возможные угрозы. Как ты думаешь, что мне делать?
F-ES Sitecore
Здесь у вас есть два соединения: клиент с веб-страницей и веб-страница со службой. https в основном необходим для связи через общедоступные сети, такие как интернет. Таким образом, соединение между веб-страницей и клиентом должно быть https. Если соединение между веб-страницей и сервисом не проходит через интернет, то на самом деле ему не нужен https, поскольку вы можете предположить, что ваши внутренние коммуникации защищены от шпионов.
nina4ever
Если мы хотим защитить внутреннюю коммуникацию от потенциальных шпионов, достаточно ли самозаверяющего сертификата ?
F-ES Sitecore
Нет, этого ни на что не хватит :) Вот почему люди получают их от сертифицированных органов.
nina4ever
Мы не можем его достать.. Можете ли вы предложить альтернативу?
F-ES Sitecore
Просто используйте http.