Я защищаю RDP, добавляя свой сертификат SSL на свой хост Windows, и, конечно же, я работаю над написанием сценариев. У меня он готов на 99%, единственный шаг, который я не могу понять, как скрипт, связан с разрешениями.
1. Пуск> Выполнить> mmc
2. Файл> Добавить оснастку для удаления> Сертификаты> Добавить> Учетная запись компьютера> Локальный компьютер> ОК
3. В левом окне щелкните правой кнопкой мыши Сертификаты (локальный компьютер) Личные, выберите Все задачи / Импорт…
4. Найдите файл pfx и импортируйте его, я предлагаю из соображений безопасности не делать его экспортируемым.
5.Развернув ваши личные / сертификаты, вы должны увидеть 3 сертификата, один из которых является сертификатом вашего сайта (например, mysite.com). Щелкните правой кнопкой мыши этот сертификат сайта и щелкните правой кнопкой мыши, выберите Все задачи / Управление закрытыми ключами…
6. Добавьте пользователя NETWORK SERVICE с разрешением только на чтение (не полный доступ), затем примените
7. закрыть mmc
Я пытаюсь написать сценарий шага 6 в этом руководстве. Есть ли у кого-нибудь идеи, с чего начать?
На самом деле есть 2 метода, которые я нашел, чтобы заставить это работать. Конечно, лучший ответ пришел от StackOverflow, а не от Microsoft.
Ты можешь использовать winhttpcertcfg.exe
который необходимо загружать отдельно, так как он не поставляется с Windows. Другая проблема была предоставлена Full Control
разрешения, когда только Read
был нужен. Я не нашел способа исправить это, но в своих поисках нашел способ получше.
Эта команда предоставит NETWORK SERVICE
READ
Разрешения для всех файлов в каталоге SSL Cert:
icacls.exe "C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys\*" /grant "NETWORK SERVICE":R
https://stackoverflow.com/questions/1678584/winhttpcertcfg-giving-access-to-iis-user-in-windows-7