Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Entwicklungen erkennen und Ausbauten resp. Änderungen planen

    • Verteilung der DEV / TEST / PROD Instanzen auf App Service Pläne

Setup Aufgaben

Azure App Service erstellen

  1. Neuen Azure App Service im bestehenden App Service Plan erstellen

    • Stack: .Net

    • .Net Version: .Net

...

    • 8 LTS

    • Platform: 32 Bit

  1. Application Insights

    • aktivieren (geht je nach Berechtigung erst nachdem der “Create” Wizard durchgelaufen ist)

  2. Settings / Configuration - General Settings

    • HTTP Version 2.0 einschalten

    • FTP State: FTPS

...

    • deaktivieren

  1. Environment variables

    • Neues "Application Setting" mit dem Namen "WEBSITE_TIME_ZONE" und dem Wert "W. Europe Standard Time" erfassen (das setzt dir richtige Time-Zone für den App Service. Sonst ist immer UTC aktiv)

    • Neuer Eintrag “GlobalSearch__IndexDirectoryPath“ mit Wert “C:\Home\“ erstellen falls die Global Search verwendet wird

    • Neuen Connection String erfassen. Je nach Datenbank ist das "SqlServer" oder "SqlAnywhere".

      • SqlAnywhere: Compression sollte zur Reduktion der Daten immer aktiviert werden

      • SqlServer: Die Einstellung MultipleActiveResultSets=True muss gesetzt werden.

  2. Settings / TLS/SSL Settings

    • HTTPS only: On (aktiviert die automatische Weiterleitung von http://… auf https://…)

    • Minimum TLS Version: 1.2

  3. Monitoring / Health Check

    • Das Feature enablen, in Pfad "/api/v1/application/healthcheck" eintragen und dann speichern.

  4. Monitoring / Alerts [noch nicht aktuell]

    • E-Mail Alert auf den Health Check einrichten

  5. Deployment der eigentlichen Applikation einrichten (durch Encodo)

  6. Azure Key Vault Einrichten (-> Azure: App-Services Einrichten)

  7. Jetzt sollte die Applikation laufen. Manchmal braucht es nach dem ersten Deployment einen Restart des App Service und dann etwas Geduld, weil die Applikation beim ersten Start unter Umständen noch Daten generieren muss bevor sie verfügbar ist.

App Service löschen

Ein App Service kann in der Overview einfach gelöscht werden. Falls ein App Service mit hinzugefügten Domain Names ersatzlos gelöscht wird, dann sollten diese Domain Names im entsprechenden DNS auch entfernt werden. Sonst wird die URL weiterhin aufgelöst, aber dem User nichts mehr angezeigt weil der App Service nicht mehr da ist.

Neben dem eigentlichen App Service sollte auch die dazugehörige Application Insights Instanz gelöscht werden. Dieser Schritt muss manuell erfolgen.

Domain Namen in Azure verwalten

Domain Namen erstellen

  1. Zertifikat im PFX-Format besorgen
    ACHTUNG: Das .pfx File sollte nicht per E-Mail übertragen werden. Am besten per geschütztem File-Share weiter geben.
    ACHTUNG: Das Passwort für das Zertifikat nie auf dem gleichen Kanal(und auch nicht per E-Mail) übertragen.

  2. Zertifikat in Azure hochladen

    • In https://portal.azure.com einloggen

    • In einen der "Web Portals" App Services wechseln

    • Unter "TLS/SSL Settings" auf den Tab "Private Key Certificate (.pfx)" wechseln

    • Per "+ Upload Certificate" das Zertifikat hochladen (das Passwort muss dabei angegeben werden)

  3. Eine Custom-Domain erstellen

    • Unter "Custom Domains" mit "+ Add custom domain" eine neue Custom Domain erfassen (also z.B. test.member.aeroclub.ch) und dann "Validate" auswählen. Es folgen dann Instruktionen (-> Domain Ownership) für die nötigen DNS Änderungen, die vom DNS Administrator gemacht werden müssen.

    • Erst wenn die DNS Änderungen vollständig gemacht sind (also TXT + CNAME eingetragen), kann die Custom Domain angefügt werden.

  4. TLS/SSL Einstellungen für App Service machen:

    • Unter "TLS/SSL settings" nun noch per "+" die neue Custom Domain mit der App verbinden. Dabei muss die Custom Domain, das Zertifikat und der "TLS/SSL Type" ausgewählt werden (-> Immer SNI wählen da das keine Kosten generiert)

    • Nach dem Bestätigen per "Add Binding" ist die Custom-Domain fertig eingerichtet

Domain Namen löschen

In Azure kann unter “Custom Domain” auf dem zu löschenden Eintrag per “…” Menueintrag die Funktion “Remove Custom Domain” ausgewählt werden. Falls die Domain nicht auf einem anderen App Service wieder zum Einsatz kommt, sollte diese auch aus dem entsprechenden DNS Server gelöscht werden.

...

Es ist deshalb wichtig, die Zertifikat-Laufzeiten entsprechend zu verwalten und frühzeitig mit dem Ersatz eines Zertifikats zu beginnen. Dazu entweder Termine setzen und/oder regelmässig die Liste der Zertifikate unter “TLS/SSL Settings” auf einem App Service (die Liste ist bei allen App Service Instanzen eines Plans die gleiche) auf dem Tab “Private key Certificates (.pfx)” die Liste der Zertifikate anschauen gehen. Zertifikate, die kurz vor dem Aublauf stehen werden mit einem “Warnung” Icon markiert.

  1. Neues Zertifikat im PFX Format besorgen und dieses in Azure hochladen (siehe “Domain Namen erstellen“)

  2. Unter “SSL/TLS Settings” den zu erneuernden Eintrag doppelklicken (unter “…” ist nur der Remove erreichbar) und das neue Zertifikat zuweisen. Hier kann nur mit dem Thumbprint des Zertifikats unterschieden werden, welches das aktuelle und welches das neue ist. Diese Anpassung muss für jeden einzelnen der gebundenen Domain Names gemacht werden.

  3. Das alte Zertifikat kann jetzt aus der Liste der Zertifikate gelöscht werden. Falls noch ein Domain Name auf dieses Zertifikat gebunden ist, dann funktioniert das Löschen nicht. Azure sagt aber nicht welcher Domain Name betroffen ist. Also ist Suchen angesagt.

DNS Server Administration

Änderungen am DNS Server müssen immer von der Person/Firma gemacht werden, welche die Domain besitzt resp. welche diese im Auftrag des Besitzers verwaltet. Dies ist meist der Endkunde resp. dessen IT-Partner. Wenn z.B. der Name “portal.mydomain.ch” eingetragen werden muss, dann braucht es im DNS die folgenden beiden Einträge:

Type

Host

Value

TXT

asuid.portal.mydomain.ch

<String aus der Azure Domain Erfassung>

CNAME

portal.mydomain.ch

mydomain-portal-prod.azurewebsites.net

Note

ACHTUNG: Wenn ein DNS Eintrag nicht neu, sondern umgestellt worden ist, dann dauert es eine Weile bis dieser Eintrag überall verfügbar und somit aktiv ist. Diese “Weile” hängt von den individuellen Einstellungen im DNS Server ab und kann von Sekunden bis zu Tage dauern. Um zu testen lohnt es sich in einem solchen Fall mit einem Gerät zu testen, welches den geänderten Namen in den letzten Tagen noch nicht aufgelöst hat. Nach einem erfolglosen Test ist das Gerät dann aber für weitere Tests nutzlos, weil die Namensauflösung auch auf dem Gerät resp. auch auf dem angefragten DNS Server gecacht wird. Alternativ können auch

verwendet werden. Das sind dann aber eher Optionen für fortgeschrittene Operators.

...

Hier die benötigten Informationen für die Einrichtung:

Einstellung

Erläuterung

Beispiel

SMTP Server Adresse

Der Name unter welchem der SMTP Server übers Internet erreichbar ist.

smtp.somedomain.ch

Server Port

TCP Port auf welchem der SMTP Server eingerichtet ist und übers Internet angesprochen werden kann.

Ohne SSL meist 25,
mit SSL oft 587

SSL für Verbindung nötig?

Definiert ob der SMTP Server auf dem Port per SSL/TLS kommunizieren kann. Falls vorhanden sollte diese Option immer benutzt werden.

Ja

Username

Name eine Users, der sich beim SMTP Server einloggen kann und E-Mails versenden darf.

Passwort

Das Passwort für den obigen Usernamen

Zusätzlich zu den obigen Angaben sind folgende Punkte wichtig:

...