Функция SetFileSecurity()

#c #winapi

#c #winapi

Вопрос:

Я использую ОС Windows.

В моем приложении на c я создаю файлы, редактирую и считываю уже существующие файлы.

Мое требование заключается в том, что доступ к файлам должен осуществляться только через мое приложение. Доступ к этим файлам (открытие, редактирование, чтение) не должен осуществляться другими пользователями, кроме моего приложения.

Могу ли я выполнить свои требования, используя Windows api SetFileSecurity()?

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

1. Первое, что я получаю при поиске этой функции, это «Эта функция устарела. Вместо этого используйте функцию SetNamedSecurityInfo»..

2. Вы не можете сделать это надежно — администратор всегда может взять на себя ответственность. Если вы хотите более безопасный подход, зашифруйте содержимое ключом, известным только вашему приложению (опять же, не на 100% надежным)

3. модель безопасности Windows, основанная на пользователе, а не на приложении. вы можете предоставить или деннировать доступ к пользователю, но не к приложению

4. Единственный надежный способ — защитить файл с помощью пароля, предоставленного пользователем (не сохраненного или жестко заданного), и это при условии, что никто не регистрирует ключи или не отлаживает ваше приложение во время сохранения.