2015-10-11 1 views
0

Я ищу функцию, которая позволяет мне поместить диалоговое окно (с паролем) до того, как будет доступ к папке. Есть ли такая функция? Кроме того, этот будет отлично, если эта защита существует перед любой программой, даже Windows Explorer/cmd.exe имеют доступ к этим файлам. Это можно сделать?.NET Windows API Проверьте, не удалось ли получить доступ к папке

Я не использую что-то вроде IOContainer, passwd. защищенные ZIP-файлы или любые другие вещи, которые слишком медленны, потому что, по-моему, 20 ГБ в одном файле немного переборщит, и для дешифрования этого файла потребуется много времени. Возможно ли решение VFS для C#, которое поддерживает защиту паролем и может использоваться как обычная файловая система или папка на диске?

Спасибо!

+0

В окнах нет ничего, что вы могли бы использовать. Тем не менее, есть варианты для того, чтобы вы могли написать драйвер, который перехватывает доступ к файлу ввода/вывода, а затем вы можете показать свою защиту паролем. –

+0

@MikeDinescu: Знаете ли вы какие-либо веб-сайты, которые вводят меня в такие сложные вещи? Кроме того, спасибо! – Felipe

+0

[Введение в драйверы фильтра файловой системы] (https://msdn.microsoft.com/en-us/library/windows/hardware/ff548202.aspx). Альтернативно, [Расширение пространства имен оболочки] (https://msdn.microsoft.com/en-us/library/windows/desktop/cc144095.aspx). – IInspectable

ответ

1

Существует два варианта. Более простой способ состоит в том, чтобы виртуальная файловая система отображалась из файла. Наш продукт, SolFS (OS edition), выполняет именно то, что вы задаете во второй части вашего вопроса, - он предоставляет контейнер с дополнительным шифрованием, который открывается как виртуальный диск, чтобы доступ к содержимому был прозрачным. Расшифровка в таких системах выполняется на страницах, поэтому файл размером 20 ГБ не будет дешифрован полностью, поскольку вы беспокоитесь.

Другой вариант - использовать драйвер фильтра файловой системы, который будет перехватывать запросы на открытие каталога и будет запрашивать у пользователя пароль. Такой подход возможен (у нас даже есть продукт для этого, называемый CallbackFilter), но в нем есть два недостатка: во-первых, удалить драйвер невозможно, оставив данные незащищенными. Вторая проблема заключается в том, что если вы попросите пользователя ввести пароль в обратном вызове, а ОС ждет доступа к каталогу, вы можете оказаться в тупике или таймауте, пока пользователь думает.

С учетом этих двух ограничений что-то вроде SolFS является предпочтительным и рекомендуемым подходом.

PS: и у нас есть бесплатные некоммерческие лицензии.

Смежные вопросы