2014-01-21 4 views
0

Я знаю, что с помощью SetNamedSecurityInfo() мы можем ограничить или запретить доступ к файлам, но разрешения можно легко изменить, щелкнув правой кнопкой мыши по файлу, идущему на вкладку безопасности, и изменив то, что мы хотим для разных групп пользователей. Но рассмотрите такие программы, как GiliSoft. когда он блокирует файл, даже администраторы не могут изменять разрешение и получать к ним доступ. Это может быть своего рода ошибка для окон. Забавно, что администратор может заблокировать файл, но он не может разблокировать и получить к нему доступ снова. В любом случае, я хочу знать, как это сделать. Кто-нибудь знает?Полностью запретить доступ к файлам C++

+0

Serverfault бы лучшее место, чтобы спросить о безопасности Windows. – gbjbaanb

+0

Существует несколько способов сделать это. Если вы можете объяснить, почему вам нужна эта функция, мы можем предложить соответствующие предложения. – egrunin

+0

@egrunin Я хочу изменить разрешения, чтобы кто-то не удалял какой-либо файл. – user2808671

ответ

0

Администратор всегда может изменять разрешение файла, однако сначала им может потребоваться его владение.

+0

Хорошо, если они возьмут на себя ответственность, что нового владельца? Как они это делают? А также программа должна иметь возможность изменять разрешения позже, пока пользователь хочет. Также они могут ограничить доступ, например, Deny write ... – user2808671

+0

правой кнопкой мыши откройте вкладку безопасности, нажмите кнопку «Дополнительно», перейдите на вкладку «владелец». Когда вы являетесь владельцем, вы можете изменить любые разрешения, которые вам нравятся в «вашем» файле. – gbjbaanb

+0

У меня его нет сейчас, чтобы проверить. К чему сменяет владелец программы? Создает ли она новую группу пользователей? у тебя есть идеи? – user2808671

1

(я ставлю это в «ответ», потому что комментарии не позволяют абзацы, и это слишком долго для одного пункта.)

Там нет буквально никакой возможности быть 100% уверены, что ваш файл вона Не удаляться. Вопрос будет , как далеко вы идете? Вы можете:

  • скрыть файл обычным способом
  • скрыть файл из ОС с крюком
  • скрыть файл из ОС с руткит
  • маркировать файл только для чтения обычным способом
  • «замок» файл, имея процесс открыть его
  • держать два процесса запуска, каждый из которых перезапускает другой и оба из которых заблокировать файл
  • держать запущенный демон, который позволяет удалить файл, но заменяет сразу
  • эти процессы могут быть скрыты разными способами, конечно

Это не «теоретические» решения, как и любой, кто имеет работа с вирусами и антивирусами может вам рассказать.

И, конечно же, я забыл спросить, какую ОС вы используете ...

+0

Идея «Два процесса, которые перезапускают друг друга» идеальны.Я так думаю, что даже с кодированной программой завершения оба они не могут быть немедленно завершены. – user2808671

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