Ausführen von Intranetanwendungen mit voller Vertrauenswürdigkeit
Aktualisiert: Juli 2008
Ab .NET Framework-Version 3.5 Service Pack 1 (SP1) können Anwendungen und deren Bibliothekassemblys als vollständig vertrauenswürdige Assemblys über eine Netzwerkfreigabe ausgeführt werden. Der Zonenbeweis MyComputer wird Assemblys automatisch hinzugefügt, die von einer Netzwerkfreigabe im Intranet geladen werden. Dieser Beweis gibt solchen Assemblys denselben Berechtigungssatz (üblicherweise vollständig vertrauenswürdig) wie den Assemblys, die sich auf dem Computer befinden. Diese Funktionalität gilt nicht für ClickOnce-Anwendungen oder für Anwendungen, die darauf ausgerichtet sind, auf einem Host ausgeführt zu werden.
Regeln für Bibliotheksassemblys
Die folgenden Regeln gelten für Assemblys, die von einer ausführbaren Datei in einer Netzwerkfreigabe geladen werden:
Bibliotheksassemblys müssen sich im gleichen Ordner wie die ausführbare Assembly befinden. Assemblys, die sich in einem Unterordner befinden oder auf die von einem anderen Pfad verwiesen wird, erhalten nicht den voll vertrauenswürdigen Berechtigungssatz.
Wenn die ausführbare Datei eine Assembly verzögert lädt, muss sie denselben Pfad verwenden, mit dem auch die ausführbare Datei gestartet wurde. Wenn z. B. die Netzwerkfreigabe \\Netzwerkcomputer\Freigabe einem Laufwerkbuchstaben zugeordnet ist, und die ausführbare Datei von diesem Pfad ausgeführt wird, wird Assemblys, die von dieser ausführbaren Datei unter Verwendung des Netzwerkpfads geladen werden, nicht die volle Vertrauenswürdigkeit gewährt. Um eine Assembly in der MyComputer-Zone verzögert zu laden, muss die ausführbare Datei den Pfad mit dem Laufwerkbuchstaben verwenden.
Wiederherstellen der früheren Intranetrichtlinie
In früheren Versionen von .NET Framework wurde freigegebenen Assemblys der Intranet-Zonenbeweis gewährt. Sie mussten Sicherheitsrichtlinien für den Codezugriff festlegen, um einer Assembly auf einer Freigabe volle Vertrauenswürdigkeit zu gewähren.
Dieses neue Verhalten ist das Standardverhalten für Intranetassemblys. Sie können zum früheren Verhalten der Bereitstellung des Intranet-Beweises zurückkehren, indem Sie einen Registrierungsschlüssel festlegen, der für alle Anwendungen auf dem Computer gilt. Dieser Prozess ist für 32-Bit- und 64-Bit-Computer unterschiedlich:
Erstellen Sie auf 32-Bit-Computern in der Systemregistrierung einen Unterschlüssel unter dem Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework. Verwenden Sie den Schlüsselnamen "LegacyMyComputerZone" mit dem DWORD-Wert 1.
Erstellen Sie auf 64-Bit-Computern in der Systemregistrierung einen Unterschlüssel unter dem Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework. Verwenden Sie den Schlüsselnamen "LegacyMyComputerZone" mit dem DWORD-Wert 1. Erstellen Sie denselben Unterschlüssel auch unter dem Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework.
Siehe auch
Weitere Ressourcen
Änderungsprotokoll
Date |
Versionsgeschichte |
Grund |
---|---|---|
Juli 2008 |
Thema hinzugefügt. |
SP1-Featureänderung. |