Codezugriffssicherheit
Aktualisiert: November 2007
Auf modernen, hochgradig vernetzten Computersystemen befindet sich häufig Code aus unterschiedlichen, teilweise auch unbekannten Quellen. Code kann an E-Mail-Nachrichten angehängt, in Dokumenten enthalten oder aus dem Internet heruntergeladen sein. Zahlreiche Computerbenutzer waren schon direkt von bösartigem mobilem Code betroffen, beispielsweise von Viren oder Würmern, die Daten beschädigen oder zerstören und deren Beseitigung zeit- und kostenintensiv ist.
Bei den gängigen Sicherheitsverfahren werden Benutzern Rechte auf Grundlage der Anmeldeinformationen (üblicherweise des Kennworts) verliehen, und der Zugriff auf Ressourcen, bei denen es sich häufig um Verzeichnisse und Dateien handelt, wird eingeschränkt. Auf diese Weise bleiben jedoch einige Sachverhalte unberücksichtigt: Benutzer erhalten Code aus zahlreichen Quellen, von denen einige u. U. nicht vertrauenswürdig sind. Code kann Fehler oder Anfälligkeiten enthalten, die durch schädigenden Code ausgenutzt werden und darüber hinaus zu unerwartetem Verhalten führen können. Wenn vertrauenswürdige Benutzer schädigende oder fehlerhafte Software ausführen, kann es daher zur Beschädigung von Computersystemen oder zum Verlust privater Daten kommen. Bei den meisten Sicherheitsverfahren für Betriebssysteme muss sämtlicher Code, der ausgeführt werden soll, vollständig vertrauenswürdig sein. Skripts auf einer Webseite können davon ausgenommen sein. Daher ist ein umfassend einsetzbares Sicherheitsverfahren erforderlich, das die geschützte Ausführung von Code aus einem Computersystem auf einem anderen System ermöglicht, selbst wenn keine gegenseitige Vertrauensstellung der Systeme besteht.
In .NET Framework steht ein als Codezugriffssicherheit bezeichnetes Sicherheitsverfahren zur Verfügung, das Computersysteme vor bösartigem, mobilem Code schützt, die geschützte Ausführung von Code unbekannter Herkunft ermöglicht und die absichtliche oder unabsichtliche Verletzung der Sicherheit durch vertrauenswürdigen Code verhindert. Mithilfe der Codezugriffssicherheit können für Code aufgrund des Ursprungs und weiterer Identitätsaspekte verschiedene Vertrauensebenen festgelegt werden. Um die Menge von Code zu verringern, für dessen Ausführung vollständige Vertrauenswürdigkeit erforderlich ist, werden die Vertrauensebenen für Code durch die Codezugriffssicherheit erzwungen. Der Einsatz der Codezugriffssicherheit kann die Wahrscheinlichkeit senken, dass Code durch bösartigen oder fehlerhaften Code missbraucht wird. Dadurch kann das Ausmaß Ihrer Haftung verringert werden, da sowohl die zulässigen als auch die unzulässigen Operationen für den Code festgelegt werden können. Codezugriffssicherheit kann auch den Schaden begrenzen, der durch Sicherheitsanfälligkeiten im Code entstehen kann.
Die Vorteile der Codezugriffssicherheit gelten für den gesamten verwalteten Code, der für die Common Language Runtime geschrieben wird, selbst wenn dieser die Codezugriffssicherheit nicht aufruft. Wie unter Grundlagen der Codezugriffssicherheit erläutert, sollten dennoch alle Anwendungen Codezugriff anfordern.
In diesem Abschnitt
Einführung in die Codezugriffssicherheit
Bietet eine Übersicht über die Codezugriffssicherheit.Grundlagen der Codezugriffssicherheit
Beschreibt die Codezugriffssicherheit und die häufigsten Anwendungsgebiete.Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code
Beschreibt das Aktivieren von Bibliotheken zur Verwendung mit nicht verwaltetem Code und das Verwenden von Bibliotheken aus nicht verwaltetem Code.Erstellen von sicheren Klassenbibliotheken
Enthält Sicherheitsüberlegungen für Klassenbibliotheken.Schreiben von sicheren verwalteten Steuerelementen
Enthält Sicherheitsüberlegungen für die Entwicklung und Bereitstellung von verwalteten Steuerelementen.Erstellen von eigenen Codezugriffsberechtigungen
Beschreibt das Erstellen eigener Berechtigungen.
Verwandte Abschnitte
Schlüsselbegriffe der Sicherheit
Bietet eine Übersicht über zahlreiche Schlüsselbegriffe und -konzepte im Sicherheitssystem von .NET Framework.Rollenbasierte Sicherheit
Beschreibt die Einführung von Sicherheit auf der Grundlage von Rollen.Kryptografische Dienste
Beschreibt die Einbindung von Kryptografie in Anwendungen.Verwaltung der Sicherheitsrichtlinien
Beschreibt die Verwaltung von Sicherheitsrichtlinien.Sicherheitstools
Beschreibt die Tools zum Implementieren und Verwalten des Sicherheitssystems in .NET Framework.