AddIntegrityLabelToBoundaryDescriptor-Funktion (winbase.h)

Fügt dem angegebenen Begrenzungsdeskriptor eine neue erforderliche Sicherheits-ID (SID) hinzu.

Syntax

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

Parameter

[in, out] BoundaryDescriptor

Ein Handle zum Begrenzungsdeskriptor. Die CreateBoundaryDescriptor-Funktion gibt dieses Handle zurück.

[in] IntegrityLabel

Ein Zeiger auf eine SID-Struktur , die die obligatorische Integritätsebene für den Namespace darstellt. Verwenden Sie einen der folgenden RID-Werte, um die SID zu erstellen:

SECURITY_MANDATORY_UNTRUSTED_RIDSECURITY_MANDATORY_LOW_RIDSECURITY_MANDATORY_MEDIUM_RIDSECURITY_MANDATORY_SYSTEM_RIDSECURITY_MANDATORY_PROTECTED_PROCESS_RID Weitere Informationen finden Sie unter Bekannte SIDs.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Ein Prozess kann einen privaten Namespace nur mit einer Integritätsebene erstellen, die der aktuellen Integritätsebene des Prozesses entspricht oder niedriger ist. Daher kann ein Prozess auf hoher Integritätsebene einen Namespace auf hoher, mittlerer oder niedriger Integritätsebene erstellen. Ein Prozess auf mittlerer Integritätsebene kann nur einen Namespace auf mittlerer oder niedriger Integritätsebene erstellen.

Ein Prozess würde in der Regel einen Namespace mit der gleichen Integritätsebene wie der Prozess zum Schutz vor Angriffen mit niedrigerer Integritätsebene angeben.

Der Sicherheitsdeskriptor, den der Ersteller im Namespace platziert, bestimmt, wer den Namespace öffnen kann. Daher könnte einem Prozess mit niedriger oder mittlerer Integritätsebene die Berechtigung zum Öffnen eines Namespace mit hoher Integritätsebene erteilt werden, wenn der Sicherheitsdeskriptor des Namespace dies zulässt.

Um eine Anwendung zu kompilieren, die diese Funktion verwendet, definieren Sie _WIN32_WINNT als 0x0601 oder höher.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winbase.h (Windows.h einschließen)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

CreateBoundaryDescriptor