Подписывание макросов в Excel
Модератор: Naeel Maqsudov
Когда мы добавляем макросы в рабочую книгу,
при запуске начинает выходить предупреждение пользователю.
Уровень безопасности = "Средняя"
Вопрос в том, чтобы это окно не выводить, не снижая уровень безопасности, а методом подписывания макросов.
Кто-нибудь занимался подписыванием своих макросов и
есть ли в этом реальная польза?
P.S. В помощи сказано, что для подписывания макросов необходима специальная программа (???)
при запуске начинает выходить предупреждение пользователю.
Уровень безопасности = "Средняя"
Вопрос в том, чтобы это окно не выводить, не снижая уровень безопасности, а методом подписывания макросов.
Кто-нибудь занимался подписыванием своих макросов и
есть ли в этом реальная польза?
P.S. В помощи сказано, что для подписывания макросов необходима специальная программа (???)
Подписывание макросов производится в меню VBA
Tools\digital Signature
Но для того, что бы его подписать нужно получить цифровой сертификат. Как его получить я пока не разобрался, но есть информация, что это платно,но весьма не дорого.
А вот список имеющихся сертификатов можно посмотреть в консоле mmc "Сертификаты"
Я пробовол подпихнуть то, что там есть. Эффекта это не имеет, но конечно же это не показатель.
Tools\digital Signature
Но для того, что бы его подписать нужно получить цифровой сертификат. Как его получить я пока не разобрался, но есть информация, что это платно,но весьма не дорого.
А вот список имеющихся сертификатов можно посмотреть в консоле mmc "Сертификаты"
Я пробовол подпихнуть то, что там есть. Эффекта это не имеет, но конечно же это не показатель.
Спасибо treider, все получилось !!!
Немного отчитаюсь:
1. Установка и удаление программ\Microsoft Office 2000\Средства Office\Цифровая подпись для проектов VBA - доустанавливаем компонент.
2. Создаем свой цифровой сертификат - C:\Program Files\Microsoft Office\Office\SELFCERT.EXE
3. Подписываем определенный проект - рабочую книгу Excel - VBA\Tools\Digital Signature\ своим созданным сертификатом.
При первом открытии на каждой ПЭВМ пользователей устанавливаем крыжик "Всегда доверять макросам из этого источника" и больше сообщение о наличии макросов в книге не выходит, что нам и требовалось.
Немного отчитаюсь:
1. Установка и удаление программ\Microsoft Office 2000\Средства Office\Цифровая подпись для проектов VBA - доустанавливаем компонент.
2. Создаем свой цифровой сертификат - C:\Program Files\Microsoft Office\Office\SELFCERT.EXE
3. Подписываем определенный проект - рабочую книгу Excel - VBA\Tools\Digital Signature\ своим созданным сертификатом.
При первом открытии на каждой ПЭВМ пользователей устанавливаем крыжик "Всегда доверять макросам из этого источника" и больше сообщение о наличии макросов в книге не выходит, что нам и требовалось.
C Excel и Word все нормально, но защита Outlook 2002 на цифровую подпись вообще ни как не риагирует. т.е. при отправки письма продолжает выдавать предупреждение.
Avsha, Обратите внимание на тот факт, что при любом изменении кода в подписанном проекте макроса его цифровая подпись удаляется.
Не говоря уже о том, что на других машинах Ваша рабочая книга всё равно будет вызывать стандартное диалоговое окно, от которого Вы и хотели избавиться. Правда только до тех пор, пока не пользователь не поставит галочку доверять ...
Не говоря уже о том, что на других машинах Ваша рабочая книга всё равно будет вызывать стандартное диалоговое окно, от которого Вы и хотели избавиться. Правда только до тех пор, пока не пользователь не поставит галочку доверять ...
pashulka,
Но если идти дальше...
Похоже эта настройка имеет общее действие на все книги Excel, которые подписаны на определенный источник, и хотелось бы поставить этот крыжик предварительно на станции, незаметно для пользователя, чтобы вообще его не тревожить установками этого крыжика.
Или например мне понадобилось отменить действие крыжика "Всегда доверять макросам из этого источника" на какой-нибудь станции, как это сделать? Где храниться значение этой настройки?
Пробовал всячески изменять код модулей, записывал новые макросы в книге, но подпись удалить мне не удалось.Обратите внимание на тот факт, что при любом изменении кода в подписанном проекте макроса его цифровая подпись удаляется.
Это условие меня устраивает, пользователь один раз поставит галочку и больше это его не будет беспокоить.Не говоря уже о том, что на других машинах Ваша рабочая книга всё равно будет вызывать стандартное диалоговое окно, от которого Вы и хотели избавиться. Правда только до тех пор, пока не пользователь не поставит галочку доверять ...
Но если идти дальше...
Похоже эта настройка имеет общее действие на все книги Excel, которые подписаны на определенный источник, и хотелось бы поставить этот крыжик предварительно на станции, незаметно для пользователя, чтобы вообще его не тревожить установками этого крыжика.
Или например мне понадобилось отменить действие крыжика "Всегда доверять макросам из этого источника" на какой-нибудь станции, как это сделать? Где храниться значение этой настройки?
Avsha, Самая первая цитата принадлежит не мне, так как является выдержкой из help Поэтому думаю имеет смысл привести ~ полный текст, дабы не вводить Вас в заблуждение, почему у меня удаляется цифровая подпись, а у Вас нет …
Подпись проектов макросов
После установки цифрового сертификата появляется возможность подписывать проекты макросов
. Это следует делать только после соответствующего тестирования при готовности проекта к распространению, поскольку при любом изменении кода в подписанном проекте макроса его цифровая подпись удаляется. Тем не менее, если на компьютере имеется надлежащий цифровой сертификат, проект макроса будет снова автоматически подписан при его сохранении.
Если требуется предотвратить случайное изменение пользователями проекта макроса и нарушение цифровой подписи, то перед тем как подписать проект макроса, следует заблокировать его. Цифровая подпись говорит лишь о том, что гарантируется безопасность проекта — она не является подтверждением того, что проект создан именно подписавшим его лицом, — поэтому блокировка проекта макроса не позволяет избежать замены цифровой подписи другой подписью. Администраторы сети организации могут заново подписывать шаблоны и надстройки, с тем чтобы контролировать, какие макросы запускаются пользователями на компьютерах.
При создании надстройки, добавляющей код в проект макроса, следует предусмотреть возможность проверки цифровой подписи проекта и предупреждения пользователя о последствиях изменения подписанного проекта. При изменении книги, содержащей подписанный проект, цифровая подпись не нарушается, поскольку подписывается проект макроса, а не книга.
Примечание. Цифровые подписи применимы только на компьютерах, на которых установлен Microsoft Internet Explorer версии 4.0 или более поздней. При открытии книги, содержащей макросы (подписанные или нет), на компьютере, где отсутствует Internet Explorer версии 4.0 или выше, отображается стандартное диалоговое окно защиты от макровирусов, позволяющее включить или отключить макросы перед открытием книги. © Microsoft Excel help
pashulka,
Если мою книгу Excel, кто-нибудь подредактирует по части макросов на своей станции, а на этой станции не окажеться моего цифрового сертификата, то цифровая подпись будет удалена.
Тогда вопрос, как переносить цифровой сертификат с одного ПК на другой, например если несколько разработчиков книги Excel?
И отвечу на свой вопрос,
Это следует делать только после соответствующего тестирования при готовности проекта к распространению, поскольку при любом изменении кода в подписанном проекте макроса его цифровая подпись удаляется.
Я проверил, действительно вы правы,Тем не менее, если на компьютере имеется надлежащий цифровой сертификат, проект макроса будет снова автоматически подписан при его сохранении.
Если мою книгу Excel, кто-нибудь подредактирует по части макросов на своей станции, а на этой станции не окажеться моего цифрового сертификата, то цифровая подпись будет удалена.
Тогда вопрос, как переносить цифровой сертификат с одного ПК на другой, например если несколько разработчиков книги Excel?
И отвечу на свой вопрос,
Сервис\Макрос\Безопасность\Вкладка "Надежные источники" - выбираем необходимый источник и удаляем.например мне понадобилось отменить действие крыжика "Всегда доверять макросам из этого источника" на какой-нибудь станции, как это сделать? Где храниться значение этой настройки?
В mmc есть консоль "Сертификаты" при помощи неё можно произвести экспорт цифровых удостоверений, но тот сертификат который создавался при помощи SELFCERT.EXE является индивидуальным и поэтому экспортируется без внутринего ключа. Поэтому на сколько я понимаю на другом компьютере подписывать макросы этим ключом не получится.