Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Dieser Artikel ist spezifisch für .NET Framework. Sie gilt nicht für neuere Implementierungen von .NET, einschließlich .NET 6 und höherer Versionen.
Ab der .NET Framework-Version 3.5 Service Pack 1 (SP1) können Anwendungen und ihre Bibliotheksassemblys als vollvertrauenswürdige Assemblys von einem Netzwerkshare ausgeführt werden. Der Zonenbeweis MyComputer wird automatisch zu Assemblys hinzugefügt, die aus einer Intranetfreigabe geladen wurden. Durch diesen Beweis erhalten alle Assemblys den gleichen Satz an Berechtigungen (normalerweise volles Vertrauen) wie die Assemblys, die sich auf dem Computer befinden. Diese Funktionalität gilt nicht für ClickOnce-Anwendungen oder Anwendungen, die auf einem Host ausgeführt werden sollen.
Regeln für Bibliotheksassemblys
Die folgenden Regeln gelten für Assemblys, die von einer ausführbaren Datei in einer Netzwerkfreigabe geladen wurden:
Bibliotheksassemblys müssen sich im selben Ordner wie die ausführbare Assembly befinden. Assemblys, die sich in einem Unterordner befinden oder auf die mit einem anderen Pfad verwiesen wird, erhalten nicht das Berechtigungsset des vollen Vertrauens.
Wenn die ausführbare Datei eine Assembly verzögert lädt, muss sie denselben Pfad verwenden, der zum Starten der ausführbaren Datei verwendet wurde. Wenn z.B. die Freigabe \\network-computer\share einem Laufwerkbuchstaben zugeordnet wird und die ausführbare Datei von diesem Pfad ausgeführt wird, erhalten Assemblys, die von der ausführbaren Datei mithilfe des Netzwerkpfads geladen werden, kein volles Vertrauen. Um eine Assembly in der MyComputer-Zone verzögert zu laden, muss die ausführbare Datei den Pfad des Laufwerkbuchstabens verwenden.
Wiederherstellen der ehemaligen Intranetrichtlinie
In früheren Versionen von .NET Framework wurden freigegebenen Assemblys Intranet-Zonenbeweise erteilt. Sie mussten die Codezugriffs-Sicherheitsrichtlinie angeben, um Assemblys einer Freigabe volles Vertrauen zu erteilen.
Dieses neue Verhalten ist die Standardeinstellung für Intranetassemblys. Sie können zum früheren Verhalten der Bereitstellung Intranet von Nachweisen zurückkehren, indem Sie einen Registrierungsschlüssel festlegen, der für alle Anwendungen auf dem Computer gilt. Dieser Prozess unterscheidet sich für 32-Bit- und 64-Bit-Computer:
Erstellen Sie auf 32-Bit-Computern unter dem HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework Schlüssel in der Systemregistrierung einen Unterschlüssel. Verwenden Sie den Schlüsselnamen LegacyMyComputerZone mit einem DWORD-Wert von 1.
Erstellen Sie auf 64-Bit-Computern unter dem HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework Schlüssel in der Systemregistrierung einen Unterschlüssel. Verwenden Sie den Schlüsselnamen LegacyMyComputerZone mit einem DWORD-Wert von 1. Erstellen Sie denselben Unterschlüssel unter dem schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework.