Инструкции по установке сертификата сервера в службах IIS
Чтобы запускать примеры, которые безопасным образом взаимодействуют со службами IIS, необходимо создать и установить сертификат сервера.
Шаг 1. Создание сертификатов
Чтобы создать сертификат для компьютера, откройте командную строку разработчика для Visual Studio с правами администратора и запустите Setup.bat, включенную в каждый из примеров, использующих безопасное взаимодействие с IIS. Перед запуском пакетного файла убедитесь, что путь включает папку, содержащую программу Makecert.exe. Следующая команда служит для создания сертификата в файле Setup.bat.
makecert -sr LocalMachine -ss My -n CN=ServiceModelSamples-HTTPS-Server -sky exchange -sk ServiceModelSamples-HTTPS-Key
Шаг 2. Установка сертификатов
Шаги, необходимые для установки созданных сертификатов, зависят от используемой версии IIS.
Установка IIS в IIS 5.1 (Windows XP) и IIS 6.0 (Windows Server 2003)
Откройте оснастку консоли MMC диспетчера служб IIS.
Щелкните правой кнопкой мыши веб-сайт по умолчанию и выберите "Свойства".
Перейдите на вкладку "Безопасность каталога".
Нажмите кнопку "Сертификат сервера". Будет запущен мастер сертификатов веб-сервера.
Завершите работу мастера. Выберите назначение сертификата. Из отображаемого списка сертификатов выберите сертификат ServiceModelSamples-HTTPS-Server.
Проверьте доступ к службе в браузере с помощью HTTPS-адреса
https://localhost/servicemodelsamples/service.svc
.
Если до этого был настроен протокол SSL с помощью Httpcfg.exe
С помощью программы Makecert.exe (или запустив файл Setup.bat) создайте сертификат сервера.
Запустите диспетчер IIS и установите сертификат в соответствии с описанными выше действиями.
Добавьте следующую строку кода в клиентскую программу.
Внимание
Этот код необходим только для тестовых сертификатов, наподобие созданных с помощью Makecert.exe. Для кода производственного назначения это делать не рекомендуется.
PermissiveCertificatePolicy.Enact("CN=ServiceModelSamples-HTTPS-Server");
Установка IIS в IIS 7.0 (Windows Vista и Windows Server 2008)
В меню "Пуск" нажмите кнопку "Выполнить", а затем введите inetmgr, чтобы открыть оснастку MMC службы IIS (IIS).
Щелкните правой кнопкой мыши веб-сайт по умолчанию и выберите "Изменить привязки".
Нажмите кнопку "Добавить " диалогового окна "Привязки сайта".
Выберите HTTPS из раскрывающегося списка "Тип ".
Выберите ServiceModelSamples-HTTPS-Server в раскрывающемся списке SSL-сертификата и нажмите кнопку "ОК".
Проверьте доступ к службе в браузере с помощью HTTPS-адреса
https://localhost/servicemodelsamples/service.svc
.
Примечание.
Так как тестовый сертификат, который вы только что установили, не является доверенным сертификатом, при просмотре на локальные веб-адреса, защищенные этим сертификатом, могут возникнуть дополнительные предупреждения системы безопасности.
Удаление сертификатов
Выполните с помощью диспетчера служб IIS действия, описанные выше, но вместо добавления сертификата или привязки удалите их.
Удалите сертификат компьютера с помощью следующей команды.
httpcfg delete ssl -i 0.0.0.0:443