Назад | Перейти на главную страницу

Может ли центр сертификации Windows Server отделить ключи подписи кода от ключей для других целей?

Я разработчик программного обеспечения. Моя команда шифрует конфиденциальные разделы наших файлов ASP.NET web.config. aspnet_regiis.exe используется для управления локальным хранилищем ключей, шифрования и дешифрования.

Я хочу создать инструмент быстрого управления ключами, чтобы не запоминать его местоположение и синтаксис на основе скрипт Powershell, который я нашел с помощью известной поисковой системы. Это заблокировано политикой домена:

PS H:\> Get-ExecutionPolicy
Restricted

Прежде чем я прошу изменить это на RemoteSigned...

Если все машины в интрасети были настроены на RemoteSigned, можно ли создать сертификат в домене CS для гипотетической группы безопасности кода, чтобы этот сертификат нельзя было использовать для SSL или других процессов, защищенных сертификатом?

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

Да. Вы можете создать сертификат, который подходит только для подписи кода. Вы даже можете автоматически зарегистрировать членов своей группы для получения этого сертификата, чтобы они получали его автоматически, если вы используете службы сертификатов Active Directory в домене.

Обратите внимание на «Подписание кода» в столбце «Предполагаемые цели». Такой сертификат нельзя будет использовать для аутентификации сервера, шифрования EFS и т. Д. Вы можете изменить безопасность этого шаблона сертификата так, чтобы только определенные пользователи домена (например, ваша команда разработчиков) имели право на получение такого сертификата.

Я еще немного написал о подписании скриптов Powershell Вот и Вот.

Чтобы расширить ответ Райана ..

Да, вы можете создать сертификат подписи кода, единственная цель которого - подписать AuthentiCode. И Райан указывает вам прямо на шаблон для этого. Вам нужно будет создать тип сертификата из этого шаблона и сделать его доступным для регистрации, но ваш администратор CA может сделать это довольно быстро (пара минут плюс любой контроль изменений, который у вас есть).

Следующая важная часть - опубликовать все выпущенные сертификаты на всех ваших компьютерах. Это можно сделать с помощью групповой политики, просто добавьте отдельные сертификаты для каждого человека, подписывающего код, в хранилище «Доверенные издатели» на компьютерах.

Опять же, очень быстрое изменение, которое ваш администратор AD / GPO может выполнить всего за несколько минут. Кикер заключается в том, что вы должны делать это для каждой подписывающей стороны, поскольку доверие AuthentiCode не следует цепочкам доверия. (читайте: дизайн таков, что вы должны доверять каждому издателю / подписывающей стороне индивидуально, чтобы никто не купил сертификат из доверенного корня и не опубликовал худший вирус в мире как надежное программное обеспечение)