Wie kann ich das Single Sign On mit Microsoft Azure einrichten?
Dieses Kapitel erklärt, wie Sie das Single Sign on mit Microsoft Azure konfigurieren können.
App-Registrierung erstellen (OpenID Connect-Client)
-
Anmeldung bei Azure
- Navigieren Sie zu „Azure Active Directory“.
- Navigieren Sie links zu „App registrations“.
- Klicken Sie auf "New registration"
- Wählen Sie unter "Supported account types" die Option (Accounts in this organizational directory only (<YOUR TENANT> only - Single tenant))
- Plattform „Web“
- Nach der Erstellung sehen Sie die "Application (client) ID" in der Übersicht. Dies ist die Client-ID, die für die SSO-Konfiguration in Hintbox benötigt wird.
- Klicken Sie oben auf die Schaltfläche "Endpoints"
- Sie sehen das "OpenID Connect metadata document". Dies ist der well-known
endpoint, der für die SSO-Konfiguration in Hintbox benötigt wird. - Navigieren Sie zu "Certificates & secrets" um einen Secret value zu erstellen
- Klicken Sie auf "New client secret" und geben Sie eine Beschreibung und einen Gültigsdatum ein
- Wichtig: Kopieren Sie den Secret value nach der Erstellung, da der Wert nicht erneut angezeigt werden kann!
- Der Secret ist der Client-Secret, der für die SSO-Konfiguration in Hintbox benötigt wird
Rolle hinzufügen
-
Navigieren Sie zu "App Roles"
- Klicken Sie auf "Create app role"
- Geben Sie einen Anzeigenamen und eine Beschreibung ein.
- Verwenden Sie für „Allowed member types” die Option „Users/Groups”. Verwenden Sie für „Value” die Option „hintbox” („hintbox” ist die für die SSO-Konfiguration in Hintbox erforderliche Zugriffsrolle, sollte jedoch standardmäßig eingestellt sein).
Benutzer zum Client hinzufügen
-
Navigieren Sie zurück zu "Home" -> "Azure Active Directory"
- Navigieren Sie dann links zu "Enterprise applications" und wählen Sie Ihre Anwendung aus.
- Navigieren Sie zu "Users and groups"
- Klicken Sie auf „Add user/group“.
- Wählen Sie die Benutzer aus, die Zugriff auf die Anwendung haben sollen.
- Stellen Sie sicher, dass die zuvor erstellte App-Rolle ausgewählt ist.
- -> Zuweisen
Fügen Sie den Namen des Benutzers im Token hinzu (optional)
-
Wir können den Namen des Benutzers im Token hinzufügen.
-
Dieser Name wird in Hintbox für den Benutzer verwendet
-
Navigieren Sie zu „Azure Active Directory“.
-
Navigieren Sie links zu „App registrations“ und wählen Sie Ihre Anwendung aus.
-
Navigieren Sie zu „Token configuration”.
-
Klicken Sie auf „Add optional claim”.
-
Wählen Sie „Access”.
-
Wählen Sie „family_name” und „given_name”.
-
Klicken Sie auf „Add”.
-
Es wird ein Informationsdialogfeld angezeigt, in dem Sie gefragt werden, ob Berechtigungen für OpenID Connect konfiguriert werden sollen.
-
Aktivieren Sie das Kontrollkästchen und klicken Sie dann auf „Add”.
-
-
Zusätzliche Bereiche
Standardmäßig sendet Azure Active Directory keine Aktualisierungstoken, wenn der Bereich „offline_access“ nicht angefordert wird. Daher müssen wir diesen Bereich in der Hintbox unter Schritt 4: Konfigurieren zusätzlicher Bereiche.
Workaround (wrong issuer value): Aus irgendeinem Grund ist der Wert „iss” im Zugriffstoken nicht korrekt.
Er sollte „https://login.microsoftonline.com/<my_tenant_id>/v2.0” lauten und nicht
„https://sts.windows.net/<my_tenant_id>”. Microsoft verwendet standardmäßig die API-Version v1, auch wenn wir v2 in der URL angeben. Um dies zu beheben, müssen wir einen Workaround durchführen.
-
Navigieren Sie zurück zu „Home“ -> „Azure Active Directory“.
-
Navigieren Sie links zu „App registrations“.
-
Wählen Sie Ihre Anwendung aus.
-
Navigieren Sie zu „Manifest“.
-
Ändern Sie den Wert von „requestedAccessTokenVersion“ von null auf 2 in „Microsoft Graph App Manifest“.
-
-
-
(Vorher war es „accessTokenAcceptedVersion” im alten Manifestformat „AAD
Graph App Manifest”) -
Warnung – Azure benötigt möglicherweise etwa eine Stunde, um diese Einstellung zu ändern.
-
-
Navigieren Sie zu „Expose an API”.
-
Klicken Sie auf „Bereich hinzufügen”.
-
Fügen Sie einen beliebigen Bereich hinzu, z. B. „hintbox-api-v2-scope”.
-
Der gewählte Name spielt keine Rolle.
-
Wenn wir mindestens einen exposed Endpoint haben, hat das Token die Version v2.
-
Der Bereichsname ist ein zusätzlicher Bereich und wird für die SSO-Konfiguration in Hintbox benötigt.
-
Der Bereich sieht in etwa so aus: api://<client_id>/hintbox-api-v2-scope
-