Schützen von Ressourcen

Die Windows Installer-Funktion zum Festlegen von Zugriffsberechtigungen für Dienste, Dateien, erstellte Ordner und Registrierungseinträge kann dazu beitragen, Installationsanwendungen sicherer zu gestalten. Die Verwendung der Tabelle MsiLockPermissionsEx oder LockPermissions zum Schützen von Ressourcen ist eine der empfohlenen Richtlinien für die Erstellung sicherer Installationen. Die MsiLockPermissionsEx-Tabelle kann es Paketersteller*innen ermöglichen, eine Ressource zu schützen, ohne eine benutzerdefinierte Aktion schreiben zu müssen.

Beginnend mit Paketen, die für Windows Installer 5.0 entwickelt wurden, sollte die Tabelle MsiLockPermissionsEx anstelle der Tabelle LockPermissions verwendet werden. Die erweiterte Funktionalität der MsiLockPermissionsEx-Tabelle ermöglicht es einem Paket, Dienste, Dateien, Ordner und Registrierungsschlüssel unter Windows zu schützen. Ein Paket darf nicht die beiden Tabellen „MsiLockPermissionsEx“ und „LockPermissions“ enthalten.

Windows Installer 4.5 und frühere Versionen ignorieren die Tabelle MsiLockPermissionsEx. Ab Windows Installer 5.0 schlägt die Installation mit der Fehlermeldung 1941 fehl, wenn das Paket sowohl die Tabelle LockPermissions als auch die Tabelle „MsiLockPermissionsEx“ enthält. Vorhandene Installationspakete, die nur die Tabelle „LockPermissions“ enthalten, können weiterhin mit Windows Installer 5.0 installiert werden.

Windows Installer 5.0 verarbeitet die Informationen in der Tabelle MsiLockPermissionsEx, wenn die Standardaktionen InstallFiles, InstallServices, WriteRegistryValues und CreateFolders ausgeführt werden. Ein sicherungsfähiges Objekt muss installiert oder neu installiert werden, um geschützt zu werden, und es ist nicht möglich, eine Zugriffssteuerungsliste (Access Control List, ACL) an ein vorhandenes Objekt anzufügen, ohne dieses Objekt neu zu installieren.

Um den Dienst, die Datei, das Verzeichnis oder den Registrierungsschlüssel anzugeben, der/die/das geschützt werden soll, geben Sie die Identifizierungsinformationen in die Felder „LockObject“ und „Table“ der Tabelle MsiLockPermissionsEx ein. Ein Objekt wird durch seinen Primärschlüssel in der ServiceInstall-Tabelle, File-Tabelle, Registry-Tabelle oder CreateFolder-Tabelle identifiziert.

Um anzufordern, dass die angegebenen Berechtigungen für ein Objekt gelten, geben Sie eine gültige Zeichenfolge für die Sicherheitsbeschreibung in das Feld SDDLText der Tabelle MsiLockPermissionsEx mithilfe der gültigenDefinitionssprache der Sicherheitsbeschreibung (Security Descriptor Definition Langauge, SDDL) ein. Die Tabelle MsiLockPermissionsEx kann eine Sicherheitsbeschreibung angeben, die Berechtigungen verweigert, die Vererbung von Berechtigungen von einer übergeordneten Ressource angibt oder die Berechtigungen eines neuen Kontos angibt. Eine Liste aller Berechtigungen, die gewährt, verweigert oder geerbt werden können, finden Sie unter ACE-Zeichenfolgen. Windows Installer 5.0 erweitert den Satz der verfügbaren Sicherheits-IDs (SIDs). Eine Liste der gültigen SIDs finden Sie unter SID-Zeichenfolgen.

Hinweis

Wenn Sie die Sicherheitsbeschreibung einer übergeordneten Ressource konfigurieren möchten, um anzugeben, dass ihre Berechtigungen von untergeordneten Objekten geerbt werden, muss Ihr Installationsprogramm Berechtigungen auf die übergeordnete Ressource anwenden, bevor die untergeordneten Objekte erstellt werden. Wenn Ihr Installationsprogramm die untergeordneten Objekte erstellt, bevor es die vererbbaren Berechtigungen auf die übergeordnete Ressource anwendet, werden die Berechtigungen der übergeordneten Ressource nicht an die untergeordneten Objekte weitergegeben.

Ab Windows Installer 5.0 erweitert der Datentyp FormattedSDDLText den Datentyp Formatted. Der Windows Installer überprüft, ob die FormattedSDDLText-Zeichenfolge, die in die Spalte „SDDLText“ der Tabelle MsiLockPermissionsEx eingegeben wurde, dem Zeichenfolgenformat der Sicherheitsbeschreibung entspricht.

Windows Installer 4.5 oder früher: Nicht unterstützt. Die Tabelle MsiLockPermissionsEx und der Datentyp FormattedSDDLText sind ab Windows Installer 5.0 verfügbar.