Beweise

Wichtiger HinweisWichtig

In .NET Framework, Version 4 ist es nicht mehr die Aufgabe der CLR (Common Language Runtime), Sicherheitsrichtlinien für Computer bereitzustellen.Microsoft empfiehlt die Verwendung von Windows-Richtlinien für die Softwareeinschränkung anstelle der CLR-Sicherheitsrichtlinie.Die Informationen in diesem Thema gelten für .NET Framework, Version 3.5 oder früher, nicht für Version 4 oder höher.Weitere Informationen über diese und andere Änderungen finden Sie unter Änderungen der Sicherheit in .NET Framework 4.

Beweise sind die Informationen, die die Common Language Runtime verwendet, um auf der Basis von Sicherheitsrichtlinien Entscheidungen zu treffen. Beweise geben der Laufzeit an, dass Code ein bestimmtes Merkmal besitzt. Häufige Formen von Beweisen sind digitale Signaturen und der Ursprung von Code. Zur Darstellung weiterer, für die Anwendung aussagekräftiger Informationen können jedoch auch benutzerdefinierte Beweise verwendet werden. Sowohl Assemblys als auch Anwendungsdomänen werden Berechtigungen auf der Grundlage von Beweisen gewährt.

Die folgende Tabelle zeigt die üblichen Beweistypen, die ein Host an die Common Language Runtime übergeben kann.

Beweise

Beschreibung

Anwendungsverzeichnis

Das Installationsverzeichnis der Anwendung.

Hash

Kryptografischer Hash, z. B. SHA1.

Herausgeber

Signatur des Softwareherstellers, d. h. desjenigen, der den Authenticode des Codes signiert hat.

Site

Ursprungssite, z. B. https://www.microsoft.com/germany.

Starker Name

Kryptografisch starker Name der Assembly.

URL

Ursprungs-URL.

Zone

Ursprungszone, z. B. Internetzone.

Zusätzlich zu den in der Tabelle aufgelisteten Formen von Beweisen können der Laufzeit auch anwendungs- oder systemdefinierte Beweise übergeben werden. Vertrauenswürdige Anwendungsdomänenhosts können der Common Language Runtime Beweise über eine Assembly oder Anwendungsdomäne übergeben. Die Laufzeit verwendet diese Informationen zur Auswertung von Organisations-, Computer- und Benutzerrichtlinien (sowie von Anwendungsdomänen-Richtlinien für Assemblys, sofern diese vom vertrauenswürdigen Anwendungsdomänenhost festgelegt sind) und gibt den Berechtigungssatz zurück, der der Assembly oder Anwendungsdomäne gewährt wird. Wenn der vertrauenswürdige Anwendungsdomänenhost nicht über die Berechtigung verfügt, Beweise bereitzustellen, werden der Assembly oder Anwendungsdomäne die dem Host gewährten Berechtigungen erteilt.

Die Laufzeit erhält Beweise über Assemblys entweder von vertrauenswürdigen Anwendungsdomänenhosts oder direkt vom Ladeprogramm. Einige Beweise, z. B. der Ursprung von Code, werden i. d. R. vom vertrauenswürdigen Anwendungsdomänenhost übergeben, da nur der Host diese Informationen kennt. Vertrauenswürdige Anwendungsdomänenhost können vom Ladeprogramm bereitgestellte Beweise überschreiben und eigene Beweise bereitstellen.

Andere Beweise wie die digitale Signatur einer Assembly gehören zum Code selbst und können vom Ladeprogramm oder einem vertrauenswürdigen Anwendungsdomänenhost stammen. Normalerweise überprüft die Laufzeit beim Laden von Code die digitale Signatur jeder Assembly. Wenn die digitale Signatur gültig ist, übergibt der vertrauenswürdige Anwendungsdomänenhost die Signaturinformationen als Beweise an das Richtlinienverfahren der Laufzeit. Zusätzlich kann eine Assembly oder ein vertrauenswürdiger Anwendungsdomänenhost benutzerdefinierte Beweise als Ressource bereitstellen, die Teil der Assembly ist. Administratoren und Entwickler können benutzerdefinierte Beweise definieren und Sicherheitsrichtlinien so erweitern, dass diese Beweise erkannt und verwendet werden können.

Um die Mitgliedschaft eines Codeabschnitts in einer Codegruppe zu bestimmen, verwendet das Richtlinienverfahren der Laufzeit sowohl die Beweise des vertrauenswürdigen Anwendungsdomänenhosts als auch die Beweise der Assembly.

Siehe auch

Konzepte

Anwendungsdomänenhosts

Codegruppen

Weitere Ressourcen

Verwaltung der Sicherheitsrichtlinien