Как средствами Windows осуществить проверку прав доступа для сущностей с различным логическим набором прав?
То есть, один тип объекта необходимо проверять исключительно на Access == True/False, другой на Read/Write/Execute/All, а вот третий Read/Listen/Look/Smell/Touch/Write/Execute/.../All
Реализуя в ISecurityInformation метод GetAccessRights можно отобразить в диалоге редактирования прав сколь угодно много стандартных и специальных прав, но реальное их сохранение и проверка завязаны на комбинации полей _GENERIC_MAPPING. И если даже наплодить этих комбинаций, то получится, что активированное специальное право активирует базовое, и соответственно вторично будут активированы все остальные специальные, подчиненные данному базовому.
Или я ошибаюсь... Пните плз в верном направлении
ЗЫ заюзалъ PrivateObjectSecurity для создания защищенного объекта, естессно, AccessCheck для проверки прав, ISecurityInformation для интерфейса раздачи прав. В общем, все как доктор Рихтер прописал.