Zwei Methoden zur Kontrolle des Zugriffs auf .NET-Webdienste

Es besteht auch die Möglichkeit, die Benutzerauthentifizierung über IIS durch das Betriebssystem ausführen zu lassen. Auf diese Weise schützen die Standardauthentifizierungsfeatures von IIS den Zugriff auf das virtuelle Verzeichnis, in dem sich der Webdienst befindet, und verlangen eine Benutzer-ID und ein Passwort für den Zugriff auf das Verzeichnis. Der Client des Benutzers wird eine Benutzer-ID und ein Passwort benötigen, um den Dienst nutzen zu können, was für Entwickler, die den Dienst in Anspruch nehmen, lästig sein kann. Diese Methode erspart dem Webdienst-Entwickler jedoch das Erstellen einer Überprüfungsroutine und die Pflege einer Liste gültiger Schlüssel.

Ein Vorteil der Authentifizierung in IIS durch das Betriebssystem ist, dass der Webdienst ohne Bezug auf Benutzerüberprüfung codiert und getestet werden kann, ohne eine Überprüfung zu erfordern. Ist der Dienst dann einsatzbereit, kann die Standardauthentifizierung für das virtuelle Verzeichnis aktiviert werden. Ab diesem Zeitpunkt regelt dann IIS alle Authentifizierungsfälle noch bevor der Webdienst erreicht wird.

Während die programmgesteuerte Überprüfung erfordert, dass sowohl Client als auch Webdienst Teile der Überprüfungslogik bereitstellen, bedeutet die Authentifizierung durch das Betriebssystem, dass eine Authentifizierungslogik nur bei dem Client existiert. Die Clientanwendung muss das Objekt System.Net.NetworkCredential zum Verkapseln der Benutzer-ID und des Passwortes erstellen. Nachdem die Clientanwendung die Credentials-Eigenschaft des Webdienstes auf das von ihr erstellte NetworkCredential -Objekt setzt, lässt sich die Webdienstmethode normal aufrufen. Außerdem kann die Credentials-Eigenschaft auch auf einer Anwendungsebene gesetzt werden, so dass die Daten nur einmal während der Lebensdauer einer Anwendung weitergegeben werden müssen.

Der Autor der Clientanwendung, der dafür verantwortlich ist, die für die Nutzung des Dienstes erforderlichen Informationen zu erstellen, hat mehrere Möglichkeiten: die Benutzer-ID und das Passwort in der Anwendung festcodieren, die Eingabe der Benutzer-ID und des Passworts durch den Benutzer zwingend vorgeben, oder die Benutzer-ID und das Passwort einer Datenbank entnehmen. Die erste der genannten Möglichkeiten wird in Listing B aufgezeigt. Zu beachten ist, dass keinerlei Schlüssel an die Webdienstmethode weitergegeben werden muss, wenn diese aufgerufen ist.

Während die Authentifizierung durch das Betriebssystem etliche Vorteile hat, so ist sie trotzdem nicht perfekt. Die Pros und Contras der Standardauthentifizierung sind unter anderem:

Vorteile der Überprüfung durch das Betriebssystem

  • Im Webdienst keine Codierung erforderlich – Die Authentifizierung durch das Betriebssystem kann für jeden bestehenden Webdienst ohne das Schreiben von zusätzlichem Code realisiert werden, da die Überprüfung durch das Betriebssystem ausgeführt wird, bevor der Webdienst erreicht wird.
  • Vereinfachte Funktionen – Jede Funktion benötigt nur ihre jeweiligen Betriebsdaten. Gesonderte Schlüsselparameter oder eine Überprüfungsfunktion sind nicht erforderlich. Die Clientanwendung muss nicht bei jedem Aufruf des Webdienstes einen Schlüssel weitergeben.

Nachteile der Überprüfung durch das Betriebssystem

  • Administrator erforderlich – Ein kompetenter Administrator ist erforderlich, um die Standardauthentifizierung zu aktivieren und um die Dienstanwender- und Passwortlisten auf dem neuesten Stand zu halten.
  • Für den Cliententwickler komplizierter – Die Clientanwendung muss den Benutzernamen und das Passwort irgendwie speichern und abrufen. Ob das nun in der Anwendung festcodiert ist, bei der Laufzeit gelesen oder durch den Benutzer eingegeben wird: Wichtig ist sicherzustellen, dass diese Informationen weitergegeben werden.

Keine perfekte Antwort

Leider gibt es noch keine perfekte Lösung, um den Zugriff auf Webdienste zu sichern, doch ist die übliche Methode die, dass ein Client irgendwelche Überprüfungsinformationen an den Dienst weiterleiten muss. Wie man das erreicht, ist von entscheidender Bedeutung. Eine der beiden hier beschriebenen Methoden kann für bestimmte Situationen durchaus die beste Lösung darstellen.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Top-Malware im November: Infostealer Formbook bleibt Nummer 1

Sein Anteil an allen Infektionen steigt in Deutschland auf 18,5 Prozent. Das Botnet Androxgh0st integriert…

1 Woche ago

Google schließt schwerwiegende Sicherheitslücken in Chrome

Betroffen sind Chrome 131 und früher für Windows, macOS und Linux. Angreifer können unter Umständen…

1 Woche ago

Data Analytics: Dienstleister wachsen zweistellig

Marktforscher Lündendonk erwartet für das Jahr 2025 ein durchschnittliches Umsatzwachstum von 14,9 Prozent.

2 Wochen ago

Open-Source-Malware auf Rekordniveau

Alarmierender Anstieg von Open-Source-Malware / Seit 2019 haben Sonatype-Analysen mehr als 778.500 bösartige Pakete aufgedeckt

2 Wochen ago

Bayerische KI-Agentur bietet KI-KOMPASS

Das KI-Werkzeug "BAIOSPHERE KI-KOMPASS" soll Unternehmen den Einstieg in KI erleichtern.

2 Wochen ago

Cloudflare: Weltweiter Internettraffic wächst 2024 um 17,2 Prozent

Das Wachstum konzentriert sich wie im Vorjahr auf das zweite Halbjahr. Google dominiert bei den…

2 Wochen ago