Azure AD-Anbindung für das WebModel auf IIS
Gültig für: viflow (Abo | 9), Azure AD | Artikel: 1646099 | Aktualisiert am 21.05.2024
Ausgangssituation
Ihr viflow WebModel wird auf einem internen/externen IIS (Internet Information Services von Microsoft – nicht in Azure!) gehostet und soll mit dem Active Directory auf der Cloud-Computing-Plattform Azure (Azure AD) von Microsoft verbunden werden.
Konfiguration in Azure
Neue App registrieren
- Öffnen Sie das Microsoft Azure Portal über portal.azure.com.
- Öffnen Sie die Anwendung Azure Active Directory.
- Klicken Sie unter App registrations auf New registration.
Das Fenster Register an application wird geöffnet. - Geben Sie hier einen Namen ein und wählen unter Supported account types das Active Directory, das mit dem WebModel verbunden werden soll (hier: ViCon GmbH only – Single tenant).
- Wählen Sie unter Redirect URI (optional) im linken Auswahlfeld Web aus.
Tragen Sie die Redirect URL ein, die mit der WebModel Server URL übereinstimmen muss.
Die URL Pfad-Angabe (/signin-oidc) muss mit der Pfad-Angabe in der Datei appsettings.json identitisch sein und in den Einstellungen unter AzureAd >> CallbackPath eingetragen sein. Anschließend müssen die „Client ID“ und „Tenant ID“ in die WebModel Konfiguration übernommen werden.
- Klicken Sie hinter Client credentials auf Add a certificate or secret.
- Wählen Sie New client secret und übertragen Sie dies in die Datei appsettings.json.
Claim Konfiguration
In der Standardeinstellung wird das Claim OnPremiseSecurityIdentifier nicht mitgeliefert. Dieser wird vom WebModel benötigt, um Benutzer zu identifizieren, die aus dem lokalen Active Directory hinzugefügt wurden.
API Berechtigungen
Das WebModel arbeitet mit einem Service Account um mit der API Microsoft Graph zu kommunizieren.
Eine Delegation (on-behalf-of) ist nicht ohne weiteres zulässig und daher benötigt das WebModel weitere Berechtigungen.
- Öffnen Sie das Fenster Request API permissions.
- Räumen Sie dem WebModel unter Application permissions die folgenden Berechtigungen ein:
> Directory.Read.All
> Group.Read.All
> User.Read.All