BorlandIMHO
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору JohnRD Цитата: каким образом можно выкладывая новые сертификаты в определенную папку и выполняя при логоне пк через GPO скрипт, сравнивать, например серийники или отпечатки тех сертификатов, что в папке и тех, что установлены на данном пк и соответственно устанавливать те, которых нет, игнорируя те номера что присутствуют. | 1. Проще всего - игнорировать состояние "установлен" и тупо устанавливать всё, что есть в папке. Код: for /F "usebackq tokens=*" %%C in (`dir /B "\\SRV\Share\folder with certs\*.crt"`) do ( certutil -f -addstore "addressbook" "%%~fC" ) | 2. Если ОЧЕНЬ хочется поизвращаться, то алгоритм довольно прост: список серийников установленных сертификатов во временный файл; для каждого сертификата из папки проверяется наличие его серийника в этом списке и при наличии отсутствия - устанавливается сертификат; временный файл удаляется. {Можно и без временного файла, но тогда полный список серийников установленного придётся запрашивать заново для каждого из сертификатов в папке, что довольно ресурсоёмко}. Код: @echo OFF copy /y nul "%TEMP%\cert_serials.tmp" ||exit for /F "usebackq tokens=2 delims=: " %%N in (`certutil.exe -v -store addressbook^|findstr "Serial.Number"`) do 1>>"%TEMP%\cert_serials.tmp" echo %%~N for /F "usebackq tokens=*" %%C in (`dir /B "\\SRV\Share\folder with certs\*.crt"`) do ( for /F "usebackq tokens=2 delims=: " %%F in (`certutil.exe -v "%%~fF"^|findstr "Serial.Number"`) do find /I "%%~C" "%TEMP%\cert_serials.tmp" || certutil -f -addstore "addressbook" "%%~fF" ) del /q "%TEMP%\cert_serials.tmp" goto :EOF | Цитата: Сугубо параллельно. Для любой другой локализации достаточно выполнить "chcp 437" перед certutil, чтобы выдача команды пошла на английском. И таки да, если сертификаты не все из одного удостоверяющего центра - то S/N запросто может оказаться неуникальным (уникальность гарантирована только в пределах одного УЦ). Надёжнее в качестве уникального идентификатора сертификата использовать "Subject Key Identifier"...
| Всего записей: 2594 | Зарегистр. 12-10-2006 | Отправлено: 00:23 17-09-2021 | Исправлено: BorlandIMHO, 12:38 23-09-2021 |
|