Функция 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 (включая Fltkernel.h) |
Библиотека | FltMgr.lib |
IRQL | <= APC_LEVEL |