SSL Verschlüsselung für alle
Mittlerweile muss jede Webseite per SSL (also https:// ...) erreichbar sein, alles andere wird von den Browsern als unsicher angesehen und ich habe auch schon gelesen, dass dies nach der Europäischen Datenschutzgrundverordnung zwingend notwendig wäre.
Um dies zu realisieren, kauft man normalerweise ein Zertifikat, das kostet pro Jahr und für eine Site wie robert-brands.com so um die 50 EUR. Das ist noch verschmerzbar, so habe ich es auch für diese Site gemacht.
English Français EspagnolWenn man allerdings auch Subdomains wie admin.robert-brands.com absichern will, braucht man ein weiteres Zertifikat. Irgendwann lohnt sich dann ein sog. Wildcard-Zertifikat, das für alle Sites nach dem Muster *.robert-brands.com verwendet werden kann. Das kostet dann aber über 200 EUR. Und wenn man noch andere Domain-Namen hat, braucht man wieder weitere Zertifikate. Das geht dann also langsam richtig ins Geld.
Abhilfe schafft hier "Let's Encrypt".
Die Idee von Let's Encrypt ist, allen Zertfiikate kostenlos zur Verfügung zu stellen. Die Zertifikate gelten allerdings immer nur 3 Monate und es wird erwartet, dass man einen Mechanismus zur automatischen Erneuerung einrichtet. Auf der Dokumentationsseite wird ausführlich beschrieben, wie das für verschiedene Betriebssysteme umgesetzt wird oder z.B. auch für Wordpress.
Azure Web Sites unterstützen Let's Encrypt leider noch nicht, aber es gibt hier Unterstützung durch einen emsigen Entwickler, der eine entsprechende Site-Extension gebaut hat. Die Installation ist etwas fummelig, Scott Hanselman hat das ganze noch enmal etwas handlicher beschrieben
Mit seiner Beschreibung bin ich gut klar gekommen, als ich das ganze mal ausprobiert habe. Es lohnt sich auch die Kommentare zu lesen, da gibt es noch einige Hinweise. Auf jeden Fall wird jetzt auf dieser Site auch robert-brands.de und nicht nur robert-brands.com per SSL unterstützt. Jetzt muss ich nur noch abwarten, ob in drei Monaten auch die automatische Erneuerung des Zertifikats funktioniert...
[Update 24.7.2018] Arbeitet man mit Deployment-Slots, um z.B. zunächst eine neue Version der Web-App in den Staging-Slot zu depoyen, um danach mit dem Production-Slot auszutauschen, muss man aufpassen: Man muss die Application-Settings an den Production Slot binden oder in allen Slots wiederholen. Außerdem geht der von Let's Encrypt angelegte WebJob verloren. Er wird neu angelegt, wenn man die Erweiterung in der WebApp aktualisiert. Danach läuft wieder alles. Insgesamt allerdings unbefriedigend und es bleibt zu hoffen, dass Azure die Unterstützung für Let's Encrypt irgendwann anbietet.