IIS Webdav, Basic Auth und Office

Aus einer IIS Schulung kam die Problemstellung auf, wie man einen Webserver als Fileshare nutzen kann. NAS Lösungen wie das Synology bieten die Möglichkeit ein Laufwerk zu mappen und nutzen dafür das WebDav Protokoll.

IIS Konfiguration

Zunächst braucht man zwei Dinge die mit dem IIS recht wenig zu tun haben. Der Grund ist, das man von überall mit Benutzername und Passwort zugreifen können will.

Für den öffentlich erreichbaren Webserver wird ein DNS FQDN Eintrag benötigt. Also zb files.ppedv.de. Da das WebDav Protokoll in der Regel mit Basic Authentifizierung arbeitet, unterbinden folgerichtig viele Clients (wie auch Microsoft Office) den http Zugriff. Also brauchen Sie als zweite Sache ein zur Domain passendes Zertifikat.

Auch auf Windows Ebene muss sichergestellt sein, das ein Benutzer mit passenden Rechten ausgestattet wird. Hier in meinen Fall habe ich eine WDUser mit einem Passwort 1BingBing ausgestattet.

webdava

Dieser Benutzer braucht auf Filesystem Ebene die Rechte. In der Praxis ziemlich viele. Ich sehe deshalb einen Bereich außerhalb von wwwroot vor, den ich Dokumente nenne und tatschlich alle Rechte einräume.

In einer Root Website des IIS wird mit der MMC ein virtuelles Verzeichnis auf das physikalische auf der Festplatte gemappt.

webdavb

Die Namen müssen nicht ident sein.

Dann wählen Sie den Root Webserver (zb Default Website) im IIS Managment Console aus. Es wird vorausgesetzt, das Binding auf den FQDN und auf HTTPS samt passenden Zertifikat. Im Ergebnis muss die Website im Browser per https://files.ppedv.de (Exemplarisch) erreichbar sein.

Im mittleren Bereich wählen Sie das Symbol WebDAV Einstellungen per Doppelklick

webdavc

Im rechten Tab – Action Pane oder auch Aktionen – wird die Option Web Dav aktivieren genutzt.

Noch sind keine WebDav Rechte abgebildet. Dazu wählen Sie den Knoten Dokumente in der Management Konsole und wiederum das Symbol WebDav Einstellungen.

webdavd

Diese Einstellungen gelten zusätzlich zu den NTFS Rechten und nur für Dokumente. Im Root der Webanwendung kann der Nutzer später nichts sehen oder ändern.

Welches Authentifzierungsverfahren wählen wir nun? Solange Sie sich innerhalb einer Windows Domain bewegen ist das in der Regel Kerberos oder NTLM basiert. Dazu setzen Sie im IIS Windows Authentication. Wahrscheinlicher ist allerdings, das wie in meinem Fall irgendwer im Internet zugreifen möchte und da bleibt eigentlich nur Standard Authentifizierung

webdavf

Ein Browser (oder anderer Client) schickt dann im HTTP Header, per Basic Schlüssel Username und Passwort Base64 Codiert mit. Deswegen nennt man das auch im Volksmund Basic Authentication.

Authorization: Basic d2ViZGF2OkJpbmdCaW5nMQ==

Tja und das Problem ist, das lässt sich reverse super einfach entschlüsseln. Deswegen muss um jeden Preis verhindert werden das der HTTP Header in falsche Hände gerät und das https Protokoll genutzt werden.

Für einen schnellen Test mappen wir ein Laufwerk auf der Kommando Zeile. Da hier ein Testsystem genutzt wird, müssen Sie in der Praxis die IP Adresse durch ihren FQDN ersetzen

C:\Users\Student>net use * https://172.16.101.24/dokumente 1BingBing /user:wduser
Laufwerk Z: ist jetzt mit
https://172.16.101.24/dokumente verbunden.

Der Befehl wurde erfolgreich ausgeführt.

Der Webdav Client

Obiges Kommando wird am Windows Server scheitern. Das Microsoft Betriebssystem benötigt einen Webdav Redirector Service, der beim Desktop installiert und beim Server fehlt,

webdave

Also wir gehen davon aus, hat alles geklappt und wir sehen im Datei Explorer ein Netzlaufwerk.

webdavg

Anlegen eine Text Datei, speichern, ändern, klappt alles wunderbar. Der Spaß ist vorbei, wenn man mit einem Microsoft Office Programm auf einem WebDav File Share speichern will. Offensichtlich nutzt Office einen eigenen Redirector (je nach Version) und Microsoft hat Ende 2022 das Aus für Basic Authentifizierung beschlossen und umgesetzt. Zur aller Verwirrung klappt es im Intranet weiter und als Erkennung wird ein Punkt im Namen des Servers genutzt. Also IP und FQDN ist extern und es wird der direkte Zugriff verweigert. Zunächst fordert Sie Office beim öffnen auf, den Benutzernamen und Passwort in einen Windows Sicherheit Dialog einzugeben. Auf einer Windows 11 Maschine mit O365 geht nicht mal das.

Es gibt einen Artikel von Microsoft der sich dieser Aufgabe annimmt. Leider konnte ich damit keine Lösung des WebDav Office Problems erreichen. Zwar konnte ich per Login die Datei öffnen, aber ich musste jedes Mal die Benutzerdaten wieder eingeben,

Allerdings ist der Ansatz per Registry das System zu überlisten an anderer Stelle erfolgreich. Öffnen sie den Registry Editor und navigieren zum Knoten

Computer\HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\Identity

Erstellen Sie einen Key basichostallowlist vom Typ REG_EXPAND_SZ und füllen Sie den Wert mit den FQDN Domains separiert per Strickpunkt.

webdavh

Kommentare sind geschlossen