Функция FltBuildDefaultSecurityDescriptor (fltkernel.h)
FltBuildDefaultSecurityDescriptor создает дескриптор безопасности по умолчанию для использования с FltCreateCommunicationPort.
Синтаксис
NTSTATUS FLTAPI FltBuildDefaultSecurityDescriptor(
[out] PSECURITY_DESCRIPTOR *SecurityDescriptor,
[in] ACCESS_MASK DesiredAccess
);
Параметры
[out] SecurityDescriptor
Указатель на переменную, выделенную вызывающим объектом, которая получает непрозрачный указатель на только что созданный SECURITY_DESCRIPTOR.
[in] DesiredAccess
Битовая маска флагов, указывающая тип доступа, который вызывающий объект требует для объекта порта. Набор системных флагов DesiredAccess определяет следующие определенные права доступа для объектов порта связи с минифильтратором драйверов.
Флаги DesiredAccess | Значение |
---|---|
FLT_PORT_CONNECT | Вызывающий объект может подключиться к порту. |
FLT_PORT_ALL_ACCESS | FLT_PORT_CONNECT | STANDARD_RIGHTS_ALL |
Возвращаемое значение
FltBuildDefaultSecurityDescriptor возвращает STATUS_SUCCESS или соответствующее значение NTSTATUS, например одно из следующих:
Возвращаемый код | Описание |
---|---|
|
FltBuildDefaultSecurityDescriptor возникла ошибка выделения пула. Это код ошибки. |
Замечания
При создании порта связи с драйвером мини-фильтра драйвер может вызывать FltBuildDefaultSecurityDescriptor для создания дескриптора безопасности по умолчанию для порта. Затем драйвер минифильтра создает порт, вызывая InitializeObjectAttributes и FltCreateCommunicationPort. Дескриптор безопасности передается в качестве параметра для InitializeObjectAttributes.
FltBuildDefaultSecurityDescriptor приводит к тому, что система выделяет дескриптор безопасности по умолчанию из пула страниц. Если этот дескриптор безопасности применяется к объекту, доступ к объекту имеют только пользователи с правами системы или администратора.
Драйверы минифильтра обычно вызывают FltBuildDefaultSecurityDescriptor непосредственно перед вызовом FltCreateCommunicationPort и FltFreeSecurityDescriptor сразу после вызова FltCreateCommunicationPort.
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | fltkernel.h (include Fltkernel.h) |
библиотеки | FltMgr.lib |
IRQL | <= APC_LEVEL |