Запрос прав доступа к объекту
При открытии дескриптора для объекта возвращенный дескриптор имеет некоторое сочетание прав доступа к объекту. Для некоторых функций, таких как CreateSemaphore, не требуется определенный набор запрошенных прав доступа. Эти функции всегда пытаются открыть дескриптор для полного доступа. Другие функции, такие как CreateFile и OpenProcess, позволяют указать нужный набор прав доступа. Следует запрашивать только необходимые права доступа, а не открывать дескриптор для полного доступа. Это предотвращает непреднамеренное использование дескриптора и увеличивает вероятность успешного выполнения запроса на доступ, если DACL объекта разрешает только ограниченный доступ.
Используйте универсальные права доступа , чтобы указать тип доступа, необходимый при открытии дескриптора к объекту. Обычно это проще, чем указать все соответствующие стандартные и конкретные права. Кроме того, используйте константу MAXIMUM_ALLOWED, чтобы запросить открытие объекта со всеми правами доступа, действительными для вызывающего объекта.
Примечание
Константу MAXIMUM_ALLOWED нельзя использовать в ACE.
Чтобы получить или задать saCL в дескрипторе безопасности объекта, запросите право доступа к ACCESS_SYSTEM_SECURITY при открытии дескриптора для объекта.