26 апр. 2012 г.

Как запретить открытие файлов TIF?


Автор: Рэймонд Чен.
Оригинал статьи: How do I prevent users from opening TIF files?

У одного клиента был вопрос по Windows XP. (Это было несколько лет назад, поэтому важным здесь является не столько подробное описание проблемы, сколько возможность прокомментировать ситуацию.)

Клиент хотел удалить все файловые ассоциации для файлов TIFF. Сначала он попытался удалить разделы реестра HKEY_CLASSES_ROOT\.tif и HKEY_CLASSES_ROOT\.tiff. После этого файлы TIFF стали отображаться с общим значком файла, однако при двойном щелчке регистрация восстанавливалась, и файл открывался в «Программе просмотра изображений и факсов».
В компании была странная политика безопасности, которая требовала, чтобы файлы TIFF не были связаны ни с одной программой. Я не знаю причины, но требовалось лишь блокировать файловые ассоциации по умолчанию. Политика не запрещала явное создание новой файловой ассоциации посредством диалога «Открыть с помощью…».
Удаление регистрации не работало, потому что Windows XP автоматически восстанавливала определённые файловые ассоциации, в т.ч. для файлов TIFF. Если регистрация файлов TIFF повреждена, и пользователь принадлежит группе «Администраторы», Windows XP восстанавливает файловую ассоциацию по умолчанию. (Если пользователь не входит в состав группы «Администраторы», появляется сообщение "Windows не может открыть файл".)
Поэтому решение странной проблемы заключается не в удалении регистрации файлов TIFF (после чего она будет считаться поврежденной), а в задании нового обработчика для файлов TIFF, который просто отображает сообщение. Это может быть программа из одной строки с использованием Windows Script Host:
WScript.Echo("Открытие файлов TIFF запрещено.")
Внимательный читатель, наверное, уже заметил серьезную проблему в настройке системы. Автовосстановление регистрации файлов TIFF означает, что служащие компании работают с привилегиями администратора. Так называемое "требование политики безопасности" похоже на беспокойство по поводу проникновении в здание через вентиляционную решетку, в то время как у всех есть ключ от парадного входа.

Комментариев нет:

Отправить комментарий