Einzelinstanzenfähige und mehrinstanzenfähige Authentifizierung für Microsoft 365-Benutzer
Dieser Artikel behandelt den Authentifizierungsprozess für einzelinstanzenfähige und mehrinstanzenfähige Microsoft Entra ID-Anwendungen. Sie können Authentifizierung verwenden, wenn Sie Anrufumgebungen für Microsoft 365-Benutzer mit dem Softwareentwicklungskit (Software Development Kit, SDK) für Anrufe erstellen, das Azure Communication Services zur Verfügung stellt. Anwendungsfälle in diesem Artikel schlüsseln auch einzelne Authentifizierungsartefakte auf.
Fall 1: Beispiel für eine Einzelmandantenanwendung
Das Fabrikam-Unternehmen hat eine Anwendung für die interne Verwendung erstellt. Alle Benutzer der Anwendung verfügen über Microsoft Entra ID. Der Zugriff auf Azure Communication Services wird über die rollenbasierte Zugriffssteuerung in Azure (Azure Role-Based Access Control, Azure RBAC) gesteuert.
Das folgende Sequenzdiagramm zeigt eine Einzelmandantenauthentifizierung.
Bevor wir beginnen:
- Alice oder ihr Microsoft Entra-Administrator müssen der benutzerdefinierten Teams-Anwendung vor dem ersten Anmeldeversuch ihre Einwilligung geben. Weitere Informationen zur Einwilligung finden Sie hier.
- Der Azure Communication Services-Ressourcenadministrator muss Alice die Erlaubnis erteilen, ihre Rolle auszuführen. Erfahren Sie mehr über die Azure RBAC-Rollenzuweisung.
Schritte:
- Authentifizieren von Alice mit Microsoft Entra ID: Alice wird über einen Standard-OAuth-Flow mit der Microsoft Authentication Library (MSAL) authentifiziert. Bei erfolgreicher Authentifizierung erhält die Clientanwendung ein Microsoft Entra-Zugriffstoken mit dem Wert
A1
und eine Objekt-ID eines Microsoft Entra-Benutzers mit dem WertA2
. Token werden später in diesem Artikel beschrieben. Die Authentifizierung wird in diesem Schnellstart aus der Entwicklerperspektive untersucht. - Abrufen eines Zugriffstokens für Alice: Die Fabrikam-Anwendung führt mithilfe eines benutzerdefinierten Authentifizierungsartefakts mit dem Wert
B
eine Autorisierungslogik aus, um zu entscheiden, ob Alice die Berechtigung hat, das Microsoft Entra-Zugriffstoken gegen ein Azure Communication Services-Zugriffstoken zu tauschen. Nach erfolgreicher Autorisierung führt die Fabrikam-Anwendung mithilfe der ArtefakteA1
,A2
undA3
Logik auf Steuerungsebene aus. Dadurch wird in der Fabrikam-Anwendung das Azure Communication Services-ZugriffstokenD
für Alice generiert. Dieses Zugriffstoken kann für Aktionen auf der Datenebene in Azure Communication Services verwendet werden, z. B. für Anrufe. Die ArtefakteA2
undA3
werden zusammen mit dem ArtefaktA1
zur Validierung übergeben. Die Validierung stellt sicher, dass das Microsoft Entra-Token für den erwarteten Benutzer ausgegeben wurde. Die Anwendung verhindert, dass Angreifer die Microsoft Entra-Zugriffstoken verwenden, die für andere Anwendungen oder andere Benutzer ausgegeben wurden. Weitere Informationen zum Abrufen vonA
-Artefakten finden Sie unter Empfangen von Microsoft Entra-Benutzertoken und Objekt-ID über die MSAL-Bibliothek und Abrufen einer Anwendungs-ID. - Anruf für Bob: Alice ruft den Microsoft 365-Benutzer Bob mit der Fabrikam-App an. Der Anruf erfolgt über das Anruf-SDK mit einem Azure Communication Services-Zugriffstoken. Erfahren Sie mehr über das Entwickeln einer Anwendung für Microsoft 365-Benutzer.
Artefakte:
- Artefakt
A1
- Typ: Microsoft Entra-Zugriffstoken
- Zielgruppe:
Azure Communication Services
, Steuerungsebene - Quelle: Microsoft Entra-Mandant von Fabrikam
- Berechtigungen:
https://auth.msft.communication.azure.com/Teams.ManageCalls
,https://auth.msft.communication.azure.com/Teams.ManageChats
- Artefakt
A2
- Typ: Objekt-ID eines Microsoft Entra-Benutzers
- Quelle: Microsoft Entra-Mandant von Fabrikam
- Autorität:
https://login.microsoftonline.com/<tenant>/
- Artefakt
A3
- Typ: Microsoft Entra-Anwendungs-ID
- Quelle: Microsoft Entra-Mandant von Fabrikam
- Artefakt
B
- Typ: Benutzerdefiniertes Fabrikam-Autorisierungsartefakt (entweder von Microsoft Entra ID oder einem anderen Autorisierungsdienst ausgestellt)
- Artefakt
C
- Typ: Azure Communication Services-Ressourcenautorisierungsartefakt.
- Quelle: HTTP-Header „Authorization“ mit einem Bearertoken zur Microsoft Entra-Authentifizierung oder einer HMAC-Nutzlast (Hash-based Message Authentication Code) und einer Signatur für die zugriffsschlüsselbasierte Authentifizierung.
- Artefakt
D
- Typ: Azure Communication Services-Zugriffstoken
- Zielgruppe:
Azure Communication Services
, Datenebene - Azure Communication Services-Ressourcen-ID:
Azure Communication Services Resource ID
von Fabrikam
Fall 2: Beispiel für eine mehrinstanzenfähige Anwendung
Das Unternehmen Contoso hat eine Anwendung für externe Kunden erstellt. Diese Anwendung verwendet benutzerdefinierte Authentifizierung in der eigenen Infrastruktur von Contoso. Contoso verwendet eine Verbindungszeichenfolge, um Token aus der Fabrikam-Anwendung abzurufen.
Das folgende Sequenzdiagramm zeigt eine mehrinstanzenfähige Authentifizierung.
Bevor wir beginnen:
- Alice oder ihr Microsoft Entra-Administrator müssen der Microsoft Entra-Anwendung von Contoso vor dem ersten Anmeldeversuch ihre Einwilligung geben. Weitere Informationen zur Einwilligung finden Sie hier.
Schritte:
- Authentifizieren von Alice mithilfe der Fabrikam-Anwendung: Alice wird über die Fabrikam-Anwendung authentifiziert. Es wird ein Standard-OAuth-Fluss mit der Microsoft Authentication Library (MSAL) verwendet. Stellen Sie sicher, dass Sie MSAL mit einer ordnungsgemäßen Autorität konfigurieren. Bei erfolgreicher Authentifizierung erhält die Contoso-Clientanwendung ein Microsoft Entra-Zugriffstoken mit dem Wert
A1
und eine Objekt-ID eines Microsoft Entra-Benutzers mit dem WertA2
. Details zu Token werden weiter unten beschrieben. Die Authentifizierung wird in diesem Schnellstart aus der Entwicklerperspektive untersucht. - Abrufen eines Zugriffstokens für Alice: Die Contoso-Anwendung führt mithilfe eines benutzerdefinierten Authentifizierungsartefakts mit dem Wert
B
eine Autorisierungslogik aus, um zu entscheiden, ob Alice die Berechtigung hat, das Microsoft Entra-Zugriffstoken gegen ein Azure Communication Services-Zugriffstoken zu tauschen. Nach erfolgreicher Autorisierung führt die Contoso-Anwendung mithilfe der ArtefakteA1
,A2
undA3
Logik auf Steuerungsebene aus. In der Contoso-Anwendung wird ein Azure Communication Services-ZugriffstokenD
für Alice generiert. Dieses Zugriffstoken kann für Aktionen auf der Datenebene in Azure Communication Services verwendet werden, z. B. für Anrufe. Die ArtefakteA2
undA3
werden zusammen mit dem ArtefaktA1
übergeben. Die Validierung stellt sicher, dass das Microsoft Entra-Token für den erwarteten Benutzer ausgegeben wurde. Die Anwendung verhindert, dass Angreifer die Microsoft Entra-Zugriffstoken verwenden, die für andere Anwendungen oder andere Benutzer ausgegeben wurden. Weitere Informationen zum Abrufen vonA
-Artefakten finden Sie unter Empfangen von Microsoft Entra-Benutzertoken und Objekt-ID über die MSAL-Bibliothek und Abrufen einer Anwendungs-ID. - Anruf für Bob: Alice ruft den Microsoft 365-Benutzer Bob mit der Fabrikam-Anwendung an. Der Anruf erfolgt über das Anruf-SDK mit einem Azure Communication Services-Zugriffstoken. In diesem Schnellstart erfahren Sie mehr über das Entwickeln von Apps für Microsoft 365-Benutzer.
Artefakte:
- Artefakt
A1
- Typ: Microsoft Entra-Zugriffstoken
- Zielgruppe:
Azure Communication Services
, Steuerungsebene - Quelle: Microsoft Entra-Mandant der Contoso-Anwendungsregistrierung
- Berechtigung:
https://auth.msft.communication.azure.com/Teams.ManageCalls
,https://auth.msft.communication.azure.com/Teams.ManageChats
- Artefakt
A2
- Typ: Objekt-ID eines Microsoft Entra-Benutzers
- Quelle: Microsoft Entra-Mandant von Fabrikam
- Autorität:
https://login.microsoftonline.com/<tenant>/
oderhttps://login.microsoftonline.com/organizations/
(basierend auf Ihrem Szenario)
- Artefakt
A3
- Typ: Microsoft Entra-Anwendungs-ID
- Quelle: Microsoft Entra-Mandant der Contoso-Anwendungsregistrierung
- Artefakt
B
- Typ: Benutzerdefiniertes Contoso-Autorisierungsartefakt (entweder von Microsoft Entra ID oder einem anderen Autorisierungsdienst ausgestellt)
- Artefakt
C
- Typ: Azure Communication Services-Ressourcenautorisierungsartefakt.
- Quelle: HTTP-Header „Authorization“ mit einem Bearertoken zur Microsoft Entra-Authentifizierung oder einer HMAC-Nutzlast (Hash-based Message Authentication Code) und einer Signatur für die zugriffsschlüsselbasierte Authentifizierung
- Artefakt
D
- Typ: Azure Communication Services-Zugriffstoken
- Zielgruppe:
Azure Communication Services
, Datenebene - Azure Communication Services-Ressourcen-ID:
Azure Communication Services Resource ID
von Contoso
Nächste Schritte
- Weitere Informationen zu Authentifizierung
- Probieren Sie diesen Schnellstart zum Authentifizieren von Microsoft 365-Benutzern aus.
- Probieren Sie diesen Schnellstart zum Anrufen eines Microsoft 365-Benutzers aus.
Die folgenden Beispiel-Apps sind für Sie möglicherweise interessant:
Probieren Sie die Beispiel-App aus, die einen Prozess zum Abrufen von Azure Communication Services-Zugriffstoken für Microsoft 365-Benutzer in Mobil- und Desktopanwendungen veranschaulicht.
Sehen Sie sich eine SPA-Beispiel-App an, um zu sehen, wie die Azure Communication Services-Zugriffstoken für Microsoft 365-Benutzer in einer Single-Page-Webanwendung abgerufen werden.
Weitere Informationen zu einer Serverimplementierung eines Authentifizierungsdiensts für Azure Communication Services finden Sie im Beispiel für den Authentifizierungsdiensthelden.