У нас есть веб-служба, которую использует ваше приложение, и разработчикам требуются https-соединения с веб-службой. Поскольку это внутренний веб-сервис, вы бы использовали самоподписанный сертификат?
Вместо самозаверяющего сертификата я бы создал локальный корневой ЦС, а затем сгенерировал бы из него сертификат SSL, гарантируя, что все внутренние системы имеют копию открытого ключа корневого ЦС.
Сгенерированные таким образом ключи имеют множество применений за пределами обычного HTTPS, их также можно использовать для OpenVPN, POP3S, SMTPS и т. Д., Даже для отдельных учетных записей SMIME.
Иметь единый корневой ЦС для вашей организации намного лучше, чем требовать выкуп от признанных ЦС, которые будут взимать с вас плату за каждый сервер, для которого требуется сертификат, и осмеливаются взимать с вас «лицензионный сбор», если вы хотите. разместить один и тот же сертификат на нескольких серверах в кластере с балансировкой нагрузки.
попробуйте CAcert. они бесплатны, вам просто нужно установить рут. на один шаг выше, имея самоподписанные сертификаты.
Если стоимость является проблемой и вы ориентированы на Windows, как предлагает г-н Денни, воспользуйтесь услугами Microsoft Certificate Services и разверните сертификаты как часть GPO домена по умолчанию. Скорее всего, вам понадобятся три системы, но тогда могут быть и виртуальные машины. Вам понадобится корневой ЦС, который следует использовать только для выдачи сертификатов для промежуточных ЦС. У вас должен быть один промежуточный ЦС в качестве ЦС предприятия, а затем третий в качестве «автономного» ЦС, чтобы вы могли выдавать сертификаты для активов вне домена.
Если у вас много клиентов и вы достаточно большой, вы можете посмотреть на наличие root-прав от одного из сторонних решений и выдачу собственных сертификатов из центра сертификации, который получает свой сертификат от указанной третьей стороны. Таким образом, вам не нужно развертывать сертификат ЦС. Например, есть решение от GeoTrust.
Из-за низкой цены на стартовые сертификаты, такие как rapidssl, я бы, вероятно, купил один из них, по крайней мере, если вам нужно их минимальное количество. Я считаю, что стоит небольшая плата за то, чтобы пользователей не просили принять ненадежный самоподписанный сертификат, так как это всегда вызывает некоторые проблемы у нетехнических пользователей.
Предполагая, что вы являетесь доменом Windows для своих настольных компьютеров, настройте собственный центр сертификации Windows, которому через AD будут автоматически доверять все компьютеры в компании. Таким образом, вы можете выдавать сертификаты для любых внутренних приложений, которые вам нужны, без необходимости покупать сертификат.
Обычно да, я бы использовал самоподписанный сертификат PEM для таких вещей. Однако насколько чувствителен сайт в вашей интрасети? Существуют передовые методы, которым следует следовать в отношении машины, которая фактически подписывает сертификаты ... и других, которые могут или не могут относиться к вам.
Кроме того, как можно настроить внутреннее хранилище ЦС для пользователей? Как только вы примете сертификат, вы узнаете, изменится ли он ... что возвращает меня к передовым методам работы с машиной, которая их подписывает (то есть подписывает, а затем отсоединяет).
Удобно иметь свой внутренний ЦС, если правильно им управлять. Пожалуйста, предоставьте дополнительную информацию.
Проблема с самозаверяющим сертификатом заключается в том, что клиенты обычно выдают предупреждения о том, что он не проверен. В зависимости от настроек безопасности некоторые могут полностью заблокировать его.
Если это чисто внутренняя потребность, зачем вообще использовать https вместо http?
Лично я бы либо придерживался http, либо купил дешевый сертификат (они не такие дорогие).