Я изо всех сил пытаюсь подписать XLA из Excel 2016 с отметкой времени .Это важно, потому что без метки времени подпись становится недействительной, когда срок действия сертификата подписи кода истекает.К сожалению, по умолчанию Excel не применяет отметку времени к подписи.
Документация Microsoft (https://docs.microsoft.com/en-us/deployoffice/security/use-digital-signatures-with-office) заявляет:
Чтобы использовать функцию отметки времени с цифровыми подписями, вынеобходимо выполнить следующие задачи:
Установить сервер отметок времени, соответствующий RFC 3161
Использовать параметр групповой политики, указать серверname, чтобы указать местоположение сервера отметок времени в сети.
Мой эмитент сертификатов Comodo заявляет, что их сервер отметок времени (http://timestamp.comodoca.com
) поддерживает RFC 3161(https://support.comodo.com/index.php?/Knowledgebase/Article/View/68/0/time-stamping-server).
Я загрузил и установил файлы административных шаблонов Office 2016 (ADMX / ADML) из https://go.microsoft.com/fwlink/p/?LinkID=626001, чтобы применить параметры групповой политики. Затем в редакторе локальной групповой политики я могудоступ Конфигурация пользователя, Административные шаблоны, Microsoft Office 2016, Параметры безопасности, Цифровые подписи , где находятся соответствующие параметры групповой политики.
Первоначально я установил следующее:
- Укажите имя сервера метки времени в
http://timestamp.comodoca.com
- Установите тайм-аут сервера метки времени в
20
... затем, когда это не сработало (см. Ниже), я также установил:
- Укажите минимальный уровень XAdES для генерации цифровой подписи *От 1051 * до
XAdES-T
- Запрошенный уровень XAdES для генерации подписи до
XAdES-T
... потому что XAdES-T "Добавляет отметку времени кразделы подписи XML-DSig и XAdES-EPES, которые помогают защитить от истечения срока действия сертификата »- что звучит как то, что мне нужно.
Я подписываюсь в VBA Editor, используя Цифровая подпись из меню Инструменты .
Однако, когда я проверяю подпись, я все еще не вижу отметку времени .
Я проверяю подпись следующим образом(Я не знаю более простого способа):
На ленте Developer нажмите Macro Security , выберите Надстройки , затем установите флажок Требуется, чтобы надстройки приложений были подписаны Trusted Publisher .Нажмите OK, затем закройте Excel.(Я не являюсь доверенным издателем, поэтому намеренно отключаю свою надстройку.)
Перезапустите Excel и создайте пустую книгу.(Моя надстройка настроена для автоматической загрузки.) ПРЕДУПРЕЖДЕНИЕ О БЕЗОПАСНОСТИ отображается при выполнении шага 1.
Нажмите для получения более подробной информации в ответ на запрос, затем выберите
Дополнительные параметры в меню
Включить содержимое .
В диалоговом окне
Параметры безопасности Microsoft Office прокрутите вниз до надстройки, которая была подписана, и нажмите
Показать сведения о подписи .Откроется диалоговое окно
Сведения о цифровой подписи , в котором отображается
Время подписи :
Not available
, что указывает на отсутствие отметки времени:
Насколько я понимаю, подпись с отметкой времени покажет это здесь, например,
... но яне удалось добиться этого с моим XLA.