Azure AD OAuth2 Authentifizierung
Nur verfügbar in SmartCollect SC² v6.7+
Die Azure AD-Authentifizierung bietet die Möglichkeit, einen Azure Active Directory-Tenant als Identitätsanbieter für SmartCollect SC² zu verwenden. Durch die Verwendung von Azure AD-Anwendungsrollen ist es auch möglich, SmartCollect SC²-Rollen über das Azure-Portal Benutzer und Gruppen zuzuweisen.
Um das Azure AD OAuth2 zu aktivieren, müssen Sie Ihre Anwendung bei Azure AD registrieren.
-
Melden Sie sich beim Azure Portal an und klicken Sie im Seitenmenü auf Azure Active Directory. Wenn Sie Zugriff auf mehr als einen Tenant haben, wählen Sie Ihr Konto oben rechts aus. Stellen Sie Ihre Sitzung auf den Azure AD-Tenant ein, den Sie verwenden möchten.
-
Klicken Sie unter Verwalten im Seitenmenü auf App-Registrierungen und dann auf Neue Registrierung. Geben Sie einen passenden Namen an.
-
Wählen Sie unter Redirect URI als App-Typ Web aus.
-
Fügen Sie die Umleitungs-URL
https://<smartcollect domain>/login/azureadhinzu, und klicken Sie dann auf Registrieren. -
Die Übersichtsseite der App wird angezeigt. Beachten Sie die Applikations-ID, dies ist die OAuth-Client-ID.
-
Klicken Sie im oberen Menü auf Endpunkte.
- Beachten Sie den OAuth 2.0 Autorisierungsendpunkt (v2), dies ist die Autorisierungs-URL.
- Beachten Sie den OAuth 2.0-Token-Endpunkt (v2), dies ist die Token-URL.
-
Klicken Sie auf Zertifikate & Geheimnisse und fügen Sie unter Client-Geheimnisse einen neuen Eintrag hinzu.
- Beschreibung: SmartCollect SC² OAuth
- Läuft ab: Nie
-
Klicken Sie auf Hinzufügen, dann kopieren Sie den Schlüsselwert. Dies ist das OAuth-Client-Geheimnis.
-
Klicken Sie auf Manifest.
-
Fügen Sie Definitionen für die erforderlichen Anwendungsrollen für SmartCollect SC² hinzu (Betrachter, Editor, Admin). Ohne diese Konfiguration wird allen Benutzern die Betrachterrolle zugewiesen.
-
Jede Rolle benötigt eine eindeutige ID. Unter Linux kann diese mit
uuidgenerstellt werden. Zum Beispiel:"appRoles": [ { "allowedMemberTypes": [ "User" ], "description": "SmartCollect SC² admin Users", "displayName": "SmartCollect SC² Admin", "id": "SOME_UNIQUE_ID", "isEnabled": true, "lang": null, "origin": "Application", "value": "Admin" }, { "allowedMemberTypes": [ "User" ], "description": "SmartCollect SC² read only Users", "displayName": "SmartCollect SC² Viewer", "id": "SOME_UNIQUE_ID", "isEnabled": true, "lang": null, "origin": "Application", "value": "Viewer" }, { "allowedMemberTypes": [ "User" ], "description": "SmartCollect SC² Editor Users", "displayName": "SmartCollect SC² Editor", "id": "SOME_UNIQUE_ID", "isEnabled": true, "lang": null, "origin": "Application", "value": "Editor" } ],
-
-
Gehen Sie zu Azure Active Directory und dann zu Enterprise Applications. Suchen Sie nach Ihrer Anwendung und klicken Sie sie an.
-
Klicken Sie auf Benutzer und Gruppen und fügen Sie mit Benutzer hinzufügen Benutzer/Gruppen zu den SmartCollect SC²-Rollen hinzu.
- Fügen Sie Folgendes zur SmartCollect SC² Konfigurationsdatei hinzu:
[auth.azuread]
name = Azure AD
enabled = true
allow_sign_up = true
client_id = APPLICATION_ID
client_secret = CLIENT_SECRET
scopes = openid email profile
auth_url = https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/authorize
token_url = https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token
allowed_domains =
allowed_groups =
Hinweis: Stellen Sie sicher, dass die root_url in SmartCollect SC² in den Antwort-URLs Ihrer Azure-Anwendung eingestellt ist (App -> Einstellungen -> Antwort-URLs)
Um den Zugriff auf authentifizierte Benutzer zu beschränken, die Mitglieder einer oder mehrerer Gruppen sind, setzen Sie allowed_groups auf eine durch Komma oder Leerzeichen getrennte Liste von Gruppen-Objekt-IDs. Die Objekt-ID für eine bestimmte Gruppe finden Sie im Azure-Portal: Gehen Sie zu Azure Active Directory -> Gruppen. Wenn Sie zum Beispiel
nur Mitgliedern der Gruppe example mit der Id 8bab1c86-8fba-33e5-2089-1d1c80ec267d Zugriff geben wollen, setzen Sie
allowed_groups = 8bab1c86-8fba-33e5-2089-1d1c80ec267d
Sie müssen sicherstellen, dass Sie Gruppenattribute in Ihrer Azure AD-Anwendungsregistrierungs-Manifestdatei aktiviert haben (Azure Portal -> Azure Active Directory -> Anwendungsregistrierungen -> Anwendung auswählen -> Manifest)
"groupMembershipClaims": "ApplicationGroup"
Die Option allowed_domains beschränkt den Zugriff auf die Benutzer, die zu bestimmten Domänen gehören. Domänen sollten durch Leerzeichen oder Komma getrennt werden.
allowed_domains = mycompany.com mycompany.org