Sichere Clientanwendungen (ADO.NET)
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 Deployment for Windows Forms Applications
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. |
|
Enthält allgemeine Sicherheitsinformationen und Links zu weiteren Erläuterungen. |
Remoting
Mit .NET-Remoting können Sie auf einfache Weise weit verteilte Anwendungen erstellen, wobei sich die einzelnen Anwendungskomponenten auf demselben Computer oder weltweit an verschiedenen Standorten befinden können. Sie können Clientanwendungen erstellen, die Objekte in anderen Prozessen auf demselben Computer oder auf einem beliebigen anderen Computer im Netzwerk verwenden. Sie können .NET-Remoting auch verwenden, um im selben Prozess mit anderen Anwendungsdomänen zu kommunizieren.
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)