Verwaltete Identitäten für Azure SignalR Service

Im Azure SignalR-Dienst können Sie eine verwaltete Identität von Microsoft Entra-ID verwenden, um:

  • Abrufen von Zugriffstoken.
  • Greifen Sie in Azure Key Vault auf geheime Schlüssel zu.

Der Dienst unterstützt nur eine verwaltete Identität. Sie können entweder eine vom System zugewiesene oder eine vom Benutzer zugewiesene Identität erstellen. Eine vom System zugewiesene Identität ist Ihrer Azure SignalR Service-Instanz zugeordnet und wird gelöscht, wenn Sie die Instanz löschen. Eine vom Benutzer zugewiesene Identität wird unabhängig von Ihrer Azure SignalR Service-Ressource verwaltet.

In diesem Artikel erfahren Sie, wie Sie eine verwaltete Identität für den Azure SignalR Service erstellen, und wie Sie diese in serverlosen Szenarien verwenden können.

Voraussetzungen

Um eine verwaltete Identität verwenden zu können, benötigen Sie Folgendes:

  • Ein Azure-Abonnement. Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.
  • Eine Azure SignalR Service-Ressource
  • Upstreamressourcen, auf die Sie zugreifen möchten, z. B. eine Azure Key Vault-Ressource.
  • Eine Azure Functions-App (Funktions-App).

Hinzufügen einer verwalteten Identität zu Azure SignalR Service

Sie können im Azure-Portal oder über die Azure CLI eine verwaltete Identität zu Azure SignalR Service hinzufügen. In diesem Artikel erfahren Sie, wie Sie im Azure-Portal eine verwaltete Identität zu Azure SignalR Service hinzufügen.

Hinzufügen einer systemseitig zugewiesenen Identität

So fügen Sie Ihrer Azure SignalR Service-Instanz eine vom System zugewiesene verwaltete Identität hinzu:

  1. Navigieren Sie im Azure-Portal zu Ihrer Azure SignalR-Dienstinstanz.

  2. Wählen Sie Identität aus.

  3. Ändern Sie auf der Registerkarte Systemseitig zugewiesen den Status in Ein.

    Screenshot that shows selections for adding a system-assigned identity in the portal.

  4. Klicken Sie auf Speichern.

  5. Wählen Sie Ja aus, um die Änderung zu bestätigen.

Hinzufügen einer benutzerseitig zugewiesenen Identität

Um Ihrer Azure SignalR Service-Instanz eine vom Benutzer zugewiesene Identität hinzuzufügen, müssen Sie die Identität erstellen und dann dem Dienst hinzufügen.

  1. Folgen Sie zum Erstellen einer benutzerseitig verwalteten Identitätsressource diesen Anweisungen.

  2. Navigieren Sie im Azure-Portal zu Ihrer Azure SignalR-Dienstinstanz.

  3. Wählen Sie Identität aus.

  4. Wählen Sie auf der Registerkarte Benutzerseitig zugewiesen die Option Hinzufügen aus.

  5. Wählen Sie im Dropdownmenü "Vom Benutzer zugewiesene verwaltete Identitäten " die Identität aus.

    Screenshot that shows selections for adding a user-assigned identity in the portal.

  6. Klicken Sie auf Hinzufügen.

Verwenden einer verwalteten Identität in serverlosen Szenarien

Azure SignalR Service ist ein vollständig verwalteter Dienst. Er nutzt eine verwaltete Identität, um ein Zugriffstoken abzurufen. In serverlosen Szenarien fügt der Dienst das Zugriffstoken dem Authorization-Header in einer Upstreamanforderung hinzu.

Aktivieren der verwalteten Identitätsauthentifizierung in Upstreameinstellungen

Nachdem Sie Ihrer Azure SignalR-Dienstinstanz eine vom System zugewiesene Identität oder eine vom Benutzer zugewiesene Identität hinzugefügt haben, können Sie die verwaltete Identitätsauthentifizierung in den Upstream-Endpunkteinstellungen aktivieren:

  1. Navigieren Sie im Azure-Portal zu Ihrer Azure SignalR-Dienstinstanz.

  2. Klicken Sie im Menü auf Einstellungen.

  3. Wählen Sie den Dienstmodus Serverlos aus.

  4. Geben Sie im Textfeld "Vorgelagertes URL-Muster hinzufügen" das URL-Muster für den upstream-Endpunkt ein. Siehe URL-Vorlageneinstellungen.

  5. Wählen Sie "Vorgelagerte Einstellung hinzufügen" und dann ein beliebiges Sternchen aus.

    Screenshot that shows Azure SignalR Service settings for adding an upstream URL pattern.

  6. Konfigurieren Sie in upstream-Einstellungen Ihre Upstream-Endpunkteinstellungen.

    Screenshot of upstream settings for Azure SignalR Service.

  7. In den Einstellungen für die verwaltete Identitätsauthentifizierung können Sie für Zielgruppe im ausgestellten Token die Zielressource angeben. Die Ressource wird zu einem aud Anspruch im erhaltenen Zugriffstoken, der als Teil der Überprüfung in Ihren upstream-Endpunkten verwendet werden kann. Die Ressource kann in einem der folgenden Formate vorliegen:

    • Anwendungs-ID (Client) des Dienstprinzipals.
    • Anwendungs-ID-URI des Dienstprinzipals.

    Wichtig

    Verwenden einer leeren Ressource erwerben Sie ein Token für Microsoft Graph. Wie heute aktiviert Microsoft Graph die Tokenverschlüsselung, sodass es für die Anwendung nicht verfügbar ist, um das Token zu authentifizieren, das andere als Microsoft Graph ist. Üblicherweise sollten Sie immer einen Dienstprinzipal erstellen, um Ihr upstream-Ziel darzustellen. Und legen Sie den Anwendungs-ID - oder Anwendungs-ID-URI des von Ihnen erstellten Dienstprinzipals fest.

Authentifizierung in einer Funktions-App

Sie können die Zugriffsüberprüfung für eine Funktions-App ganz einfach ohne Codeänderungen festlegen, indem Sie die Azure-Portal verwenden:

  1. Wechseln Sie im Azure-Portal zur Funktions-App.

  2. Wählen Sie im oberen Menü Authentifizierung aus.

  3. Wählen Sie Identitätsanbieter hinzufügen aus.

  4. Wählen Sie auf der Registerkarte "Grundlagen" in der Dropdownliste "Identitätsanbieter" "Microsoft" aus.

  5. Wählen Sie in Aktion, die ausgeführt werden soll, wenn die Anforderung nicht authentifiziert wird, die Option "Mit Microsoft Entra-ID anmelden" aus.

  6. Die Option zum Erstellen einer neuen Registrierung ist standardmäßig ausgewählt. Sie können den Namen der Registrierung ändern. Weitere Informationen zum Aktivieren eines Microsoft Entra-Anbieters finden Sie unter Configure your App Service or Azure Functions app to use a Microsoft Entra ID sign-in.

    Screenshot that shows basic information for adding an identity provider.

  7. Wechseln Sie zu Azure SignalR Service, und führen Sie die Schritte aus, um eine vom System zugewiesene Identität oder eine vom Benutzer zugewiesene Identität hinzuzufügen.

  8. Wechseln Sie im Azure SignalR-Dienst zu den Upstream-Einstellungen, und wählen Sie dann "Verwaltete Identität verwenden" und "Aus vorhandenen Anwendungen auswählen" aus. Wählen Sie die Anwendung aus, die Sie zuvor erstellt haben.

Nachdem Sie diese Einstellungen konfiguriert haben, lehnt die Funktions-App Anforderungen ohne Zugriffstoken im Header ab.

Überprüfen von Zugriffstoken

Wenn Sie webApp oder Azure Function nicht verwenden, können Sie das Token auch überprüfen.

Das Token im Authorization-Header ist ein Microsoft Identity Platform-Zugriffstoken.

Um Zugriffstoken zu überprüfen, sollte Ihre App auch die Zielgruppe und die signierenden Token validieren. Diese Token müssen anhand der Werte im OpenID Discovery-Dokument überprüft werden. Ein Beispiel finden Sie in der mandantenunabhängigen Version des Dokuments.

Die Microsoft Entra Middleware verfügt über integrierte Funktionen zum Überprüfen von Zugriffstoken. Sie können die Codebeispiele der Microsoft Identity Platform durchsuchen, um eines in der von Ihnen gewählten Sprache zu finden.

Bibliotheken und Codebeispiele, die zeigen, wie Sie die Tokenüberprüfung handhaben können, sind verfügbar. Mehrere Open-Source-Partnerbibliotheken sind auch für die JSON-Webtokenüberprüfung (JWT) verfügbar. Es gibt mindestens eine Option für nahezu jede Plattform und Sprache. Weitere Informationen zu Microsoft Entra-Authentifizierungsbibliotheken und Codebeispielen finden Sie unter Microsoft Identity Platform-Authentifizierungsbibliotheken.

Verwenden einer verwalteten Identität für einen Key Vault-Verweis

Der Azure SignalR-Dienst kann auf Key Vault zugreifen, um geheime Schlüssel mithilfe der verwalteten Identität abzurufen.

  1. Fügen Sie Ihrer Azure SignalR-Dienstinstanz eine vom System zugewiesene Identität oder eine vom Benutzer zugewiesene Identität hinzu.
  2. Erteilen Sie geheimen Leseberechtigungen für die verwaltete Identität in den Zugriffsrichtlinien in Key Vault. Weitere Informationen finden Sie unter Zuweisen einer Zugriffsrichtlinie für den Schlüsseltresor mithilfe der Azure-Portal.

Derzeit können Sie dieses Feature verwenden, um auf einen geheimen Schlüssel im Upstream-URL-Muster zu verweisen.

Nächste Schritte