Konfigurieren einer benutzerdefinierten Domäne für Azure SignalR Service

Zusätzlich zur Standarddomäne, die mit Azure SignalR Service bereitgestellt wird, können Sie Ihrem Dienst auch eine benutzerdefinierte DNS-Domäne hinzufügen. In diesem Artikel erfahren Sie, wie Sie Ihrer SignalR Service-Instanz eine benutzerdefinierte Domäne hinzufügen.

Hinweis

Benutzerdefinierte Domänen sind ein Feature des Premium-Tarifs. Ressourcen der Standard-Ebene können ohne Downtime auf die Premium-Ebene aktualisiert werden.

Führen Sie zum Konfigurieren einer benutzerdefinierten Domäne die folgenden Schritte aus:

  1. Hinzufügen einer benutzerdefinierten Domäne
  2. Erstellen eines CNAME-Eintrags in DNS
  3. Hinzufügen der benutzerdefinierten Domäne

Voraussetzungen

  • Eine benutzerdefinierte Domäne, die über eine Registrierungsstelle von Azure App Service oder eines Drittanbieters registriert ist
  • Ein Azure-Konto mit einem aktiven Abonnement.
  • Eine Azure-Ressourcengruppe
  • Eine Azure SignalR Service-Ressource
  • Eine Azure Key Vault-Instanz.
  • Ein SSL-Zertifikat für eine benutzerdefinierte Domäne, das in Ihrer Key Vault-Instanz gespeichert ist Weitere Informationen finden Sie unter Erste Schritte mit Key Vault-Zertifikaten
  • Eine Azure DNS-Zone (Optional)

Hinzufügen eines benutzerdefinierten Zertifikats

Vor Hinzufügen einer benutzerdefinierten Domäne müssen Sie ein benutzerdefiniertes SSL-Zertifikat hinzufügen. Ihre SignalR Service-Instanz greift über eine verwaltete Identität auf das in Ihrem Schlüsseltresor gespeicherte Zertifikat zu.

Das Hinzufügen eines Domänenzertifikats erfolgt in drei Schritten.

  1. Aktivieren einer verwalteten Identität in Ihrer SignalR Service-Instanz
  2. Gewähren des Zugriffs auf Ihren Schlüsseltresor für die verwaltete Identität
  3. Hinzufügen eines benutzerdefinierten Zertifikats zu Ihrer SignalR Service-Instanz

Aktivieren einer verwalteten Identität in SignalR Service

Sie können entweder eine system- oder benutzerseitig zugewiesene verwaltete Identität verwenden. In diesem Artikel wird die Verwendung einer systemseitig zugewiesenen verwalteten Identität veranschaulicht.

  1. Wechseln Sie im Azure-Portal zu Ihrer SignalR Service-Ressource.

  2. Wählen Sie im Menü auf der linken Seite Identität aus.

  3. Legen Sie in der Tabelle Systemseitig zugewiesen den Wert für Status auf Ein fest.

    Screenshot of enabling managed identity.

  4. Wählen Sie Speichern und dann Ja aus, wenn Sie aufgefordert werden, die systemseitig zugewiesene verwaltete Identität zu aktivieren.

Nachdem die Identität erstellt wurde, wird die Objekt- bzw. Prinzipal-ID angezeigt. SignalR Service greift über die Objekt-ID der systemseitig zugewiesenen verwalteten Identität auf den Schlüsseltresor zu. Der Name der verwalteten Identität ist mit dem Namen der SignalR Service-Instanz identisch. Im nächsten Abschnitt müssen Sie anhand des Namens oder der Objekt-ID nach dem Prinzipal (der verwalteten Identität) suchen.

Gewähren des Zugriffs auf Ihren Schlüsseltresor für die verwaltete Identität

SignalR Service verwendet eine verwaltete Identität für den Zugriff auf Ihren Schlüsseltresor. Sie müssen der verwalteten Identität die Berechtigung für den Zugriff auf Ihren Schlüsseltresor erteilen.

Die Schritte zur Erteilung der Berechtigung hängen davon ab, ob Sie die Tresorzugriffsrichtlinie oder die rollenbasierte Zugriffssteuerung in Azure als Berechtigungsmodell für den Schlüsseltresor ausgewählt haben.

Wenn Sie eine Tresorzugriffsrichtlinie als Berechtigungsmodell für Ihren Schlüsseltresor verwenden, gehen Sie zum Hinzufügen einer neuen Zugriffsrichtlinie wie folgt vor.

  1. Navigieren Sie zu Ihrer Key Vault-Ressource.

  2. Wählen Sie im linken Menü die Option Zugriffsrichtlinien aus.

  3. Wählen Sie Erstellen aus. Screenshot of Key Vault's access policy page.

  4. Gehen Sie auf der Registerkarte Berechtigungen so vor:

    1. Wählen Sie unter Berechtigungen für Geheimnis die Option Abrufen aus.
    2. Wählen Sie unter Zertifikatberechtigungen die Option Abrufen aus.
  5. Wählen Sie Weiter aus, um zur Registerkarte Prinzipal zu gelangen.

    Screenshot of Permissions tab of Key Vault's Create an access policy page.

  6. Geben Sie in das Suchfeld die Objekt-ID der verwalteten Identität ein.

  7. Wählen Sie die verwaltete Identität in den Suchergebnissen aus.

  8. Wählen Sie die Registerkarte Überprüfen + erstellen aus.

    Screenshot of the Principal tab of Key Vault's Create an access policy page.

  9. Wählen Sie Erstellen auf der Registerkarte Überprüfen und erstellen aus.

Die verwaltete Identität für Ihre SignalR Service-Instanz ist in der Tabelle mit den Zugriffsrichtlinien aufgeführt.

Screenshot of Key Vault's Access policies page.

Hinzufügen eines benutzerdefinierten Zertifikats zu Ihrer SignalR Service-Instanz

Führen Sie die folgenden Schritte aus, um Ihrer SignalR Service-Instanz das benutzerdefinierte Zertifikat hinzuzufügen:

  1. Wechseln Sie im Azure-Portal zu Ihrer SignalR Service-Ressource.

  2. Wählen Sie im Menü Benutzerdefinierte Domäne aus.

  3. Wählen Sie unter Benutzerdefiniertes Zertifikat die Option Hinzufügen aus.

    Screenshot of custom certificate management.

  4. Geben Sie einen Namen für das benutzerdefinierte Zertifikat ein.

  5. Wählen Sie Aus Ihrem Schlüsseltresor auswählen aus, um ein Schlüsseltresorzertifikat auszuwählen. Nachdem Sie den folgenden Key Vault-Basis-URI ausgewählt haben, sollte Key Vault-Geheimnisname automatisch ausgefüllt werden. Alternativ können Sie diese Felder auch manuell ausfüllen.

  6. Optional können Sie eine Key Vault-Geheimnisversion angeben, wenn Sie das Zertifikat einer bestimmten Version anheften möchten.

  7. Klicken Sie auf Hinzufügen.

Screenshot of adding a custom certificate.

SignalR Service ruft das Zertifikat ab und überprüft seinen Inhalt. Bei Erfolg lautet der Bereitstellungsstatus des Zertifikats Erfolgreich.

Screenshot of an added custom certificate.

Erstellen eines CNAME-Eintrags für die benutzerdefinierte Domäne

Sie müssen einen CNAME-Eintrag für Ihre benutzerdefinierte Domäne in einer Azure DNS-Zone oder mithilfe des Registrierungsstellendiensts eines Drittanbieters erstellen. Der CNAME-Eintrag erstellt einen Alias von Ihrer benutzerdefinierten Domäne zur Standarddomäne von SignalR Service. SignalR Service verwendet den Eintrag, um den Besitz Ihrer benutzerdefinierten Domäne zu überprüfen.

Wenn Ihre Standarddomäne beispielsweise contoso.service.signalr.net und Ihre benutzerdefinierte Domäne contoso.example.com lautet, müssen Sie einen CNAME-Eintrag für example.com erstellen.

Nachdem Sie den CNAME-Eintrag erstellt haben, können Sie ein DNS-Lookup durchführen, um die CNAME-Informationen anzuzeigen. Die Ausgabe des Befehls „linus dig“ (DNS-Lookup) sollte zum Beispiel so aussehen:

 contoso.example.com. 0 IN CNAME contoso.service.signalr.net.

Wenn Sie eine Azure DNS-Zone verwenden, finden Sie unter Verwalten von DNS-Einträgen Informationen zum Hinzufügen eines CNAME-Eintrags.

Screenshot of adding a CNAME record in Azure DNS Zone.

Wenn Sie andere DNS-Anbieter verwenden, befolgen Sie die Anleitung des Anbieters zum Erstellen eines CNAME-Eintrags.

Hinzufügen einer benutzerdefinierten Domäne

Fügen Sie nun die benutzerdefinierte Domäne Ihrer SignalR Service-Instanz hinzu.

  1. Wechseln Sie im Azure-Portal zu Ihrer SignalR Service-Ressource.

  2. Wählen Sie im Menü Benutzerdefinierte Domäne aus.

  3. Wählen Sie unter Benutzerdefinierte Domäne die Option Hinzufügen aus.

    Screenshot of custom domain management.

  4. Geben Sie einen Namen für die benutzerdefinierte Domäne ein.

  5. Geben Sie den vollständige Domänennamen Ihrer benutzerdefinierten Domäne ein, z. B. contoso.com.

  6. Wählen Sie ein benutzerdefiniertes Zertifikat aus, das für diese benutzerdefinierte Domäne gilt.

  7. Klicken Sie auf Hinzufügen.

    Screenshot of adding a custom domain.

Überprüfen einer benutzerdefinierten Domäne

Um die benutzerdefinierte Domäne zu überprüfen, können Sie die Integritäts-API verwenden. Die Integritäts-API ist ein öffentlicher Endpunkt, der den Integritätsstatus Ihrer SignalR Service-Instanz zurückgibt. Die Integritäts-API ist unter https://<your custom domain>/api/health verfügbar.

Hier sehen Sie ein Beispiel mit cURL:

PS C:\> curl.exe -v https://contoso.example.com/api/health
...
> GET /api/health HTTP/1.1
> Host: contoso.example.com

< HTTP/1.1 200 OK

Der 200-Statuscode sollte ohne Zertifikatfehler zurückgegeben werden.

Zugreifen auf Key Vault im privaten Netzwerk

Wenn Sie einen privaten Endpunkt für Ihren Schlüsseltresor konfiguriert haben, kann Ihre SignalR Service-Instanz nicht über ein öffentliches Netzwerk auf Ihren Schlüsseltresor zugreifen. Sie können Ihrer SignalR Service-Instanz Zugriff auf Ihren Schlüsseltresor über ein privates Netzwerk gewähren, indem Sie einen freigegebenen privaten Endpunkt erstellen.

Nachdem Sie einen freigegebenen privaten Endpunkt erstellt haben, können Sie ein benutzerdefiniertes Zertifikat hinzufügen, wie oben im Abschnitt Hinzufügen eines benutzerdefinierten Zertifikats zu Ihrer SignalR Service-Instanz beschrieben.

Wichtig

Sie müssen die Domäne in Ihrem Schlüsseltresor-URI nicht ändern. Wenn der Basis-URI Ihrer Schlüsseltresors beispielsweise https://contoso.vault.azure.net ist, können Sie diesen URI weiterhin verwenden, um ein benutzerdefiniertes Zertifikat zu konfigurieren.

Sie müssen IP-Adressen von SignalR Services in den Firewalleinstellungen des Schlüsseltresors nicht explizit zulassen. Weitere Informationen finden Sie im Artikel zur Diagnose für private Verbindungen in Key Vault.

Rotation für Zertifikate

Wenn Sie beim Erstellen eines benutzerdefinierten Zertifikats keine geheime Version angeben, überprüft Azure SignalR Service regelmäßig die neueste Version im Key Vault. Wenn eine neue Version beobachtet wird, wird sie automatisch angewendet. Die Verzögerung liegt in der Regel innerhalb von 1 Stunde.

Alternativ können Sie auch ein benutzerdefiniertes Zertifikat an eine bestimmte geheime Version im Key Vault anheften. Wenn Sie ein neues Zertifikat anwenden müssen, können Sie die geheime Version bearbeiten und dann ein benutzerdefiniertes Zertifikat proaktiv aktualisieren.

Bereinigung

Wenn Sie nicht vorhaben, die in diesem Artikel erstellten Ressourcen zu verwenden, können Sie die Ressourcengruppe löschen.

Achtung

Beim Löschen der Ressourcengruppe werden alle darin enthaltenen Ressourcen gelöscht. Falls in der angegebenen Ressourcengruppe Ressourcen enthalten sind, die nicht zum Umfang dieses Artikels gehören, werden sie ebenfalls gelöscht.

Nächste Schritte