Codezugriffssicherheit

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 gedownloadet 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

Verwandte Abschnitte

  • Sicherheitstools
    Beschreibt die Tools zum Implementieren und Verwalten des Sicherheitssystems in .NET Framework.