В CreateFile(), какой самый быстрый способ назначить разрешения только для чтения для обычного пользователя Everybody. И никаких разрешений никому другому

В Windows у меня есть приложение, которое должно установить контроль доступа только для пользователя / группы "Все". И устанавливает разрешения только для чтения. Под линуксом простой open() звонок с восьмеричным 004 разрешений достаточно. На Windows, как мне сделать то же самое? Желательно в звонке CreateFile(),

1 ответ

Решение

Создать SECURITY_DESCRIPTOR с соответствующими атрибутами. Функции, связанные с этим, являются хорошей отправной точкой для создания правильного дескриптора безопасности (это далеко не тривиально). На этой странице показан хороший пример его создания, включая способ получения SID для группы "Все" (pEveryoneSID в коде).

Затем просто передайте этот дескриптор безопасности CreateFile как lpSecurityAttributes параметр.

Другие вопросы по тегам