Sichere Clientanwendungen (ADO.NET)
Aktualisiert: November 2007
Anwendungen bestehen in der Regel aus vielen Teilen, die alle so geschützt werden müssen, dass keine Daten verloren gehen oder das System nicht anderweitig gefährdet wird. Durch das Erstellen sicherer Benutzeroberflächen lassen sich viele Probleme vermeiden, weil Angreifer damit bereits blockiert werden, bevor sie überhaupt auf Daten oder Systemressourcen zugreifen können.
Validieren von Benutzereingaben
Beim Erstellen einer Anwendung mit Datenzugriff müssen Sie davon ausgehen, dass jede Benutzereingabe an sich schädlich sein kann, solange nichts Gegenteiliges bewiesen ist. Andernfalls gefährden Sie Ihre Anwendung. In .NET Framework gibt es Klassen, mit deren Hilfe Sie für Eingabesteuerelemente festlegen können, wie gültige Werte aussehen müssen. So können Sie z. B. festlegen, wie viele Buchstaben maximal eingegeben werden dürfen. Ereignishooks ermöglichen es Ihnen, Prozeduren zum Prüfen der Gültigkeit von Werten zu schreiben. Benutzereingabedaten können validiert und stark typisiert werden, sodass die Anwendung weniger anfällig für Skriptexploits und SQL Injection-Angriffe ist.
Sicherheitshinweis: |
---|
Zusätzlich muss die Benutzereingabe sowohl an der Datenquelle als auch in der Clientanwendung validiert werden, da Angreifer ansonsten Ihre Anwendung umgehen und die Datenquelle direkt angreifen könnten. |
Sicherheit und Benutzereingaben
Beschreibt die Vorgehensweise bei kleinen und potenziell gefährlichen Fehlern im Zusammenhang mit der Benutzereingabe.Überprüfen der Benutzereingabe in ASP.NET-Webseiten
Enthält eine Übersicht über das Validieren der Benutzereingabe mit ASP.NET-Validierungssteuerelementen.Benutzereingaben in Windows Forms
Enthält Links und Informationen zum Validieren von Eingaben mit Maus und Tastatur in einer Windows Forms-Anwendung.Reguläre Ausdrücke von .NET Framework
Beschreibt die Verwendung der Regex-Klasse, mit der die Gültigkeit der Benutzereingabe geprüft werden kann.
Windows-Anwendungen
In der Vergangenheit wurden Windows-Anwendungen i. d. R. mit vollständigen Berechtigungen ausgeführt. .NET Framework stellt mit der Codezugriffssicherheit (Code Access Security, CAS) die Infrastruktur bereit, die erforderlich ist, um die Ausführung von Code in Windows-Anwendungen zu beschränken. CAS allein reicht aber zum Schutz Ihrer Anwendung nicht aus.
Sicherheit in Windows Forms
Erläutert das Sichern von Windows Forms-Anwendungen und stellt Links zu verwandten Themen bereit.Windows Forms und nicht verwaltete Anwendungen
Beschreibt die Interaktion mit nicht verwalteten Anwendungen in einer Windows Forms-Anwendung.ClickOnce-Bereitstellung für Windows Forms-Anwendungen
Beschreibt die Verwendung einer ClickOnce-Bereitstellung in einer Windows Forms-Anwendung und erläutert die Auswirkungen auf die Sicherheit.
ASP.NET und XML-Webdienste
ASP.NET-Anwendungen müssen im Allgemeinen den Zugriff auf einige Teile der Website einschränken und stellen andere Mechanismen für Datenschutz und die Sicherheit von Websites bereit. Über diese Links erhalten Sie nützliche Informationen zum Absichern Ihrer ASP.NET-Anwendung.
XML-Webdienste stellen Daten bereit, die von ASP.NET-Anwendungen, Windows Forms-Anwendungen oder anderen Webdiensten genutzt werden können. Um die Sicherheit des Webdiensts und die der Clientanwendung müssen Sie sich selbst kümmern.
Weitere Informationen dazu finden Sie in den folgenden Ressourcen:
Ressource |
Beschreibung |
---|---|
Erläutert das Sichern von ASP.NET-Anwendungen. |
|
Veranschaulicht das Implementieren von Sicherheit für einen ASP.NET-Webdienst. |
|
Erläutert, wie Sie sich vor Angriffen mit Skriptexploits schützen können, bei denen versucht wird, bösartige Zeichen in eine Webseite einzufügen. |
|
Grundlegende Sicherheitsmaßnahmen für ASP.NET-Webanwendungen |
Enthält allgemeine Sicherheitsinformationen und Links zu weiteren Erläuterungen. |
Remoting
.Mit .NET Remoting können Sie schnell und problemlos weit verteilte Anwendungen erstellen, und zwar unabhängig davon, ob sich die Anwendungskomponenten alle auf einem Computer oder irgendwo weit verstreut in der Welt befinden. Sie können Clientanwendungen erstellen, die Objekte in anderen Prozessen auf demselben Computer oder auf einem anderen Computer verwenden, der über das Netzwerk erreichbar ist. Sie können .NET Remoting auch für die Kommunikation mit anderen Anwendungsdomänen im selben Prozess verwenden.
Ressource |
Beschreibung |
---|---|
Erläutert, wie Sie Remoting-Anwendungen so konfigurieren können, dass allgemeine Probleme vermieden werden. |
|
Beschreibt die Authentifizierung und Verschlüsselung und enthält darüber hinaus weitere Sicherheitsthemen im Zusammenhang mit Remoting. |
|
Beschreibt Sicherheitsprobleme mit geschützten Objekten und dem anwendungsdomänenübergreifenden Arbeiten. |
Siehe auch
Konzepte
Empfehlungen zur Zugriffsstrategie auf Daten
Schützen von Verbindungsinformationen (ADO.NET)