Создание токена доступа для дескриптора безопасности конкретного процесса
Можно ли создать собственный токен доступа для создания записей контроля доступа для дискреционного списка контроля доступа, который позволит только определенным процессам получать доступ к глобальному объекту мьютекса, если у них есть соответствующий токен доступа?
Это в Windows, используя C++.
1 ответ
DACL содержит SID, представляющие пользователей или группы. Таким образом, вы можете изменить права доступа для определенных пользователей или групп, а не для процессов. Это означает, что если вы измените DACL объекта, это повлияет на процессы, имеющие совпадающие SID.
Вы можете создать дескриптор безопасности и передать его в CreateMutex() или изменить его DACL после создания мьютекса, используя, например,
SetSecurityInfo(Mutex, SE_KERNEL_OBJECT, DACL_SECURITY_INFORMATION, NULL, NULL, pDACL, NULL);