Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Communication Services est une plateforme de communication entièrement managée qui permet aux développeurs de créer des fonctionnalités de communication en temps réel dans leurs applications. En utilisant l’identité managée avec Azure Communication Services, vous pouvez simplifier le processus d’authentification pour votre application, tout en augmentant sa sécurité. Ce document explique comment utiliser l’identité managée avec Azure Communication Services.
Utilisation d’une identité managée avec Azure Communication Services
Azure Communication Services prend en charge l’utilisation de l’identité managée pour s’authentifier auprès du service. En utilisant l’identité managée, vous pouvez éliminer la nécessité de gérer vos propres jetons d’accès et informations d’identification.
Votre ressource Azure Communication Services peut être affectée à deux types d’identité :
- Identité affectée par le système qui est liée à votre ressource et supprimée lorsque votre ressource est supprimée. Votre ressource ne peut avoir qu’une seule identité affectée par le système.
- Identité affectée par l’utilisateur qui est une ressource Azure qui peut être affectée à votre ressource Azure Communication Services. Cette identité n’est pas supprimée lorsque votre ressource est supprimée. Votre ressource peut avoir plusieurs identités attribuées par l'utilisateur.
Pour utiliser une identité managée avec Azure Communication Services, procédez comme suit :
- Accordez à votre identité managée l’accès à la ressource Communication Services. Cette affectation peut être effectuée via le portail Azure, Azure CLI et les kits SDK Azure Communication Management.
- Utilisez l’identité managée pour vous authentifier auprès d’Azure Communication Services. L’authentification peut être effectuée via les SDK Azure ou les API REST qui prennent en charge l’identité managée.
Ajouter une identité affectée par le système
Ajouter une identité attribuée par l’utilisateur
L’attribution d’une identité affectée par l’utilisateur à votre ressource Azure Communication Services nécessite de créer d’abord l’identité, puis d’ajouter son identificateur de ressource à votre ressource Communication Service.
Tout d’abord, vous devez créer une ressource d’identité managée affectée par l’utilisateur.
Créez une ressource d’identité managée attribuée par l’utilisateur en suivant ces instructions.
Dans le volet de navigation gauche de la page de votre application, faites défiler la page vers le bas jusqu’au groupe Paramètres.
Sélectionnez Identité.
Sélectionnez Utilisateur assigné>Ajouter.
Recherchez l’identité précédemment créée, sélectionnez-la, puis sélectionnez Ajouter.
Identité gérée utilisant les SDK de gestion d'Azure Communication Services
Vous pouvez également affecter une identité managée à votre ressource Azure Communication Services à l’aide des kits SDK Azure Communication Management.
Vous pouvez effectuer cette affectation en introduisant la propriété d’identité dans la définition de ressource lors de la création ou lors de la mise à jour de la ressource.
Vous pouvez affecter votre identité managée à votre ressource Azure Communication Services à l’aide du Kit de développement logiciel (SDK) Azure Communication Management pour .NET en définissant la Identity propriété sur le CommunicationServiceResourceData .
Par exemple:
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;
}
Pour plus d’informations sur l’utilisation du Kit de développement logiciel (SDK) de gestion .NET, consultez le Kit de développement logiciel (SDK) Azure Communication Management pour .NET.
Pour plus d’informations spécifiques à la gestion de votre instance de ressource, consultez Gestion de votre instance de ressource Communication Service.
Remarque
Une ressource peut avoir des identités affectées par le système et affectées par l’utilisateur en même temps. Dans ce cas, la type propriété est SystemAssigned,UserAssigned.
Vous pouvez également supprimer toutes les attributions d’identité managée d’une ressource en spécifiant la type propriété en tant que None.