Freigeben über


Aktivieren der verwalteten Identität für ACS (Azure Communication Services)

Azure Communication Services ist eine vollständig verwaltete Kommunikationsplattform, mit der Entwickler Echtzeitkommunikationsfeatures in ihre Anwendungen integrieren können. Mithilfe von Managed Identity mit Azure Communication Services können Sie den Authentifizierungsprozess für Ihre Anwendung vereinfachen und gleichzeitig die Sicherheit erhöhen. In diesem Dokument wird beschrieben, wie Managed Identity mit Azure Communication Services verwendet wird.

Verwenden von Managed Identity mit Azure Communication Services

Azure Communication Services unterstützt die Verwendung von Managed Identity zur Authentifizierung mit dem Dienst. Durch die Verwendung von Managed Identity können Sie die Notwendigkeit vermeiden, Ihre eigenen Zugriffstoken und Anmeldeinformationen zu verwalten.

Ihre Azure Communication Services-Ressource kann zwei Identitätstypen zugewiesen werden:

  1. Eine System Assigned Identity, die an Ihre Ressource gebunden ist und gelöscht wird, wenn Ihre Ressource gelöscht wird. Ihre Ressource kann nur über eine systemseitig zugewiesene Identität verfügen.
  2. Eine User Assigned Identity, bei der es sich um eine Azure-Ressource handelt, die Ihrer Azure Communication Services-Ressource zugewiesen werden kann. Diese Identität wird nicht gelöscht, wenn Ihre Ressource gelöscht wird. Ihre Ressource kann über mehrere benutzerseitig zugewiesene Identitäten verfügen.

Führen Sie die folgenden Schritte aus, um Managed Identity mit Azure Communication Services zu verwenden:

  1. Gewähren Sie Ihrer Managed Identity Zugriff auf die Communication Services-Ressource. Diese Aufgabe kann über das Azure-Portal, die Azure CLI und die Azure Communication Management SDKs erfolgen.
  2. Verwenden Sie die Managed Identity, um sich bei Azure Communication Services zu authentifizieren. Die Authentifizierung kann über die Azure-SDKs oder REST-APIs erfolgen, die Managed Identity unterstützen.

Hinzufügen einer systemseitig zugewiesenen Identität

  1. Scrollen Sie im linken Navigationsbereich der Seite Ihrer App nach unten zur Gruppe Einstellungen.

  2. Wählen Sie Identität aus.

  3. Ändern Sie auf der Registerkarte Systemseitig zugewiesen den Status in Ein. Wählen Sie Speichern. Screenshot, der zeigt, wie die vom System zugewiesene verwaltete Identität aktiviert wird.

Hinzufügen einer benutzerseitig zugewiesenen Identität

Wenn Sie Ihrer Azure Communication Services-Ressource eine vom Benutzer zugewiesene Identität zuweisen, müssen Sie zuerst die Identität erstellen und dann der Kommunikationsdienstressource den Ressourcenbezeichner hinzufügen.

Zuerst müssen Sie eine benutzerseitig zugewiesene verwaltete Identitätsressource erstellen.

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

  2. Scrollen Sie im linken Navigationsbereich der Seite Ihrer App nach unten zur Gruppe Einstellungen.

  3. Wählen Sie Identität aus.

  4. Wählen Sie Benutzerseitig zugewiesen>Hinzufügen aus.

  5. Suchen Sie nach der zuvor erstellten Identität, und wählen Sie Hinzufügen aus. Screenshot, der zeigt, wie Sie die vom Benutzer zugewiesene verwaltete Identität aktivieren.

Managed Identity mit Azure Communication Services Management SDKs

Managed Identity kann auch Ihrer Azure Communication Services-Ressource mithilfe der Azure Communication Management SDKs zugewiesen werden. Diese Zuordnung kann erreicht werden, indem die Identitätseigenschaft in der Ressourcendefinition entweder beim Erstellen oder beim Aktualisieren der Ressource eingeführt wird.

Sie können Ihre verwaltete Identität Ihrer Azure Communication Services-Ressource mithilfe des Azure Communication Management SDK für .NET zuweisen, indem Sie die Identity-Eigenschaft für die CommunicationServiceResourceData festlegen.

Zum Beispiel:

public async Task CreateResourceWithSystemAssignedManagedIdentity()
{
    ArmClient armClient = new ArmClient(new DefaultAzureCredential());
    SubscriptionResource subscription = await armClient.GetDefaultSubscriptionAsync();

    //Create Resource group
    ResourceGroupCollection rgCollection = subscription.GetResourceGroups();
    // With the collection, we can create a new resource group with an specific name
    string rgName = "myRgName";
    AzureLocation location = AzureLocation.WestUS2;
    ArmOperation<ResourceGroupResource> lro = await rgCollection.CreateOrUpdateAsync(WaitUntil.Completed, rgName, new ResourceGroupData(location));
    ResourceGroupResource resourceGroup = lro.Value;

    // get resource group collection
    CommunicationServiceResourceCollection collection = resourceGroup.GetCommunicationServiceResources();
    string communicationServiceName = "myCommunicationService";
    
    // Create Communication Service Resource
    var identity = new ManagedServiceIdentity(ManagedServiceIdentityType.SystemAssigned);
    CommunicationServiceResourceData data = new CommunicationServiceResourceData("global")
    {
        DataLocation = "UnitedStates",
        Identity = identity
    };
    var communicationServiceLro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, communicationServiceName, data);
    var resource = communicationServiceLro.Value;
}

Weitere Informationen zur Verwendung des .NET Management SDK finden Sie im Azure Communication Management SDK für .NET.

Weitere Informationen zum Verwalten Ihrer Ressourceninstanz finden Sie unter Verwalten Ihrer Communication Service Resource-Instanz

Hinweis

Eine Ressource kann gleichzeitig sowohl über systemseitig als auch über benutzerseitig zugewiesene Identitäten verfügen. In diesem Fall hat die type-Eigenschaft den Wert SystemAssigned,UserAssigned.

Das Entfernen aller verwalteten Identitätszuordnungen aus einer Ressource kann auch erreicht werden, indem die type-Eigenschaft als None angegeben wird.

Nächste Schritte

Nachdem Sie erfahren haben, wie Sie verwaltete Identität mit Azure Communication Services aktivieren können. Erwägen Sie die Implementierung dieses Features in Ihren eigenen Anwendungen, um Ihren Authentifizierungsprozess zu vereinfachen und die Sicherheit zu verbessern.