Поделиться через


Функция 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, например одно из следующих:

Возвращаемый код Описание
STATUS_INSUFFICIENT_RESOURCES
FltBuildDefaultSecurityDescriptor возникла ошибка выделения пула. Это код ошибки.

Замечания

При создании порта связи с драйвером мини-фильтра драйвер может вызывать FltBuildDefaultSecurityDescriptor для создания дескриптора безопасности по умолчанию для порта. Затем драйвер минифильтра создает порт, вызывая InitializeObjectAttributes и FltCreateCommunicationPort. Дескриптор безопасности передается в качестве параметра для InitializeObjectAttributes.

FltBuildDefaultSecurityDescriptor приводит к тому, что система выделяет дескриптор безопасности по умолчанию из пула страниц. Если этот дескриптор безопасности применяется к объекту, доступ к объекту имеют только пользователи с правами системы или администратора.

Драйверы минифильтра обычно вызывают FltBuildDefaultSecurityDescriptor непосредственно перед вызовом FltCreateCommunicationPort и FltFreeSecurityDescriptor сразу после вызова FltCreateCommunicationPort.

Требования

Требование Ценность
целевая платформа Всеобщий
заголовка fltkernel.h (include Fltkernel.h)
библиотеки FltMgr.lib
IRQL <= APC_LEVEL

См. также

ACCESS_MASK

FltCreateCommunicationPort

FltFreeSecurityDescriptor

InitializeObjectAttributes

RtlCreateSecurityDescriptor

RtlCreateSecurityDescriptorRelative

SECURITY_DESCRIPTOR