Freigeben über


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.

Ein Diagramm, das den Prozess der Authentifizierung für die Anrufanwendung von Fabrikam für Microsoft 365-Benutzer und die Azure Communication Services-Ressource beschreibt

Das folgende Sequenzdiagramm zeigt eine Einzelmandantenauthentifizierung.

Ein Sequenzdiagramm, das die Authentifizierung der Microsoft 365-Benutzer von Fabrikam angibt Die Clientanwendung ruft ein Azure Communication Services-Zugriffstoken für eine Microsoft Entra-Anwendung mit einem einzelnen Mandanten ab.

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:

  1. 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 Wert A2. Token werden später in diesem Artikel beschrieben. Die Authentifizierung wird in diesem Schnellstart aus der Entwicklerperspektive untersucht.
  2. 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 Artefakte A1, A2 und A3 Logik auf Steuerungsebene aus. Dadurch wird in der Fabrikam-Anwendung das Azure Communication Services-Zugriffstoken D 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 Artefakte A2 und A3 werden zusammen mit dem Artefakt A1 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 von A-Artefakten finden Sie unter Empfangen von Microsoft Entra-Benutzertoken und Objekt-ID über die MSAL-Bibliothek und Abrufen einer Anwendungs-ID.
  3. 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
  • 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.

Ein Sequenzdiagramm, das zeigt, wie die Contoso-Anwendung Benutzer von Fabrikam mit Contosos eigener Azure Communication Services-Ressource authentifiziert.

Das folgende Sequenzdiagramm zeigt eine mehrinstanzenfähige Authentifizierung.

Ein Sequenzdiagramm, das die Authentifizierung von Microsoft 365-Benutzern und Azure Communication Services-Zugriffstoken für mehrinstanzenfähige Microsoft Entra-Anwendungen enthält.

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:

  1. 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 Wert A2. Details zu Token werden weiter unten beschrieben. Die Authentifizierung wird in diesem Schnellstart aus der Entwicklerperspektive untersucht.
  2. 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 Artefakte A1, A2 und A3 Logik auf Steuerungsebene aus. In der Contoso-Anwendung wird ein Azure Communication Services-Zugriffstoken D 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 Artefakte A2 und A3 werden zusammen mit dem Artefakt A1 ü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 von A-Artefakten finden Sie unter Empfangen von Microsoft Entra-Benutzertoken und Objekt-ID über die MSAL-Bibliothek und Abrufen einer Anwendungs-ID.
  3. 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>/ oder https://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
  • 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

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.