Функция AddIntegrityLabelToBoundaryDescriptor (winbase.h)

Добавляет новый обязательный идентификатор безопасности (SID) в указанный дескриптор границы.

Синтаксис

BOOL AddIntegrityLabelToBoundaryDescriptor(
  [in, out] HANDLE *BoundaryDescriptor,
  [in]      PSID   IntegrityLabel
);

Параметры

[in, out] BoundaryDescriptor

Дескриптор границ. Функция CreateBoundaryDescriptor возвращает этот дескриптор.

[in] IntegrityLabel

Указатель на структуру sid , представляющую обязательный уровень целостности для пространства имен. Используйте одно из следующих значений RID для создания идентификатора безопасности:

SECURITY_MANDATORY_UNTRUSTED_RIDSECURITY_MANDATORY_LOW_RIDSECURITY_MANDATORY_MEDIUM_RIDSECURITY_MANDATORY_SYSTEM_RIDSECURITY_MANDATORY_PROTECTED_PROCESS_RID Дополнительные сведения см. в разделе Известные идентификаторы безопасности.

Возвращаемое значение

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Процесс может создать частное пространство имен только с уровнем целостности, равным или ниже текущего уровня целостности процесса. Таким образом, процесс высокого уровня целостности может создать пространство имен высокого, среднего или низкого уровня целостности. Процесс среднего уровня целостности может создать только пространство имен среднего или низкого уровня целостности.

Процесс обычно задает пространство имен на том же уровне целостности, что и процесс для защиты от атак на корточках процессами более низкого уровня целостности.

Дескриптор безопасности, который создатель помещает в пространство имен, определяет, кто может открывать пространство имен. Таким образом, процессу с низким или средним уровнем целостности может быть предоставлено разрешение на открытие пространства имен высокого уровня целостности, если это разрешено дескриптором безопасности пространства имен.

Чтобы скомпилировать приложение, использующее эту функцию, определите _WIN32_WINNT как 0x0601 или более поздней версии.

Требования

   
Минимальная версия клиента Windows 7 [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header winbase.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

CreateBoundaryDescriptor