Основы безопасности при использовании макросов
Краткое описание
В продолжение тематики обучения макросам Excel и VBA публикуем небольшую статью о безопасности применения своих и/или сторонних разработок. Надеемся, данная информация никого не отпугнет от последующего обучения (освоения, использования) VBA, а послужит лишь пищей для ума.
Подробное описание
Желание человека научиться писать и, тем более, использовать и применять макросы - очень хорошее стремление. Но старайтесь придерживаться одного простого правила: запускайте только тот макрос, в котором вы уверены.
Это важно по нескольким причинам:
- Автоматизация может сыграть с вами злую шутку. Например, вместо того, чтобы считать названия файлов в определенной директории, вы "случайно" можете всё удалить. Стоит всего лишь ошибиться в одном операторе, забыть закоментировать важную строку и досадное недоразумение необратимо. Возможность в автоматическом режиме выполнять операции над большими массивами данных - это серьезно, и когда используете какие-либо ответственные функции/процедуры нужно быть крайне внимательным.
- Нарушение конфиденциальности данных или иными словами воровство. Макросы пишут люди. Большинство пишут макросы в целях отчетности, а некоторые (нехорошие люди) могут написать макрос, чтобы получить доступ к конфиденциальным данным. Стоит вам всего лишь разрешить выполнение такого макроса (запустить его), и данные, доступные под вашим логином, могут быть переданы злоумышленнику. При этом такой код может состоять всего-лишь из нескольких строк, быть запрятан в любой отчет и самоудалиться после работы макроса. Особенно это актуально, когда скачиваете какие-то коды/файлы из интернета или получаете их иным образом из непроверенного источника.
- Широкие возможности использования и применения макросов. Это и работа с реестром, и работа с WinAPI функциями, работа с файлами/папками, работа с командной строкой, работа с SQL, работа с изображениями, работа с системными настройками, работа с интернетом и много чего еще. Важно! Если вы не уверены в действии какого-либо оператора, функции и тд. - не используйте его. Потратьте время на изучение описания/функционала данного блока кода, но зато вы точно будете знать его назначение и правила применения. Поверьте, поиск ошибок и их исправление будет куда утомительнее, чем чтение документации по интересующим вас функциям.
Перефразируя и обобщив обозначенные выше моменты, можно сказать:
- внимательность
- осторожность
- предусмотрительность.
Это, пожалуй, основное. В процессе написания макросов у каждой конкретной задачи будет много своих нюансов, но про вышеуказанные никогда не стоит забывать.
Комментарии ()