Beweise

Aktualisiert: November 2007

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. http://www.microsoft.com/germany.

Starker Name

Kryptografisch starker Name der Assembly.

URL

Ursprungs-URL.

Zone

Ursprunszone, 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 außer Kraft setzen 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.

Community-Beiträge

Anzeigen: