Come usare l'identità gestita con Servizi di comunicazione di Azure
Servizi di comunicazione di Azure è una piattaforma di comunicazione completamente gestita che consente agli sviluppatori di creare funzionalità di comunicazione in tempo reale nelle applicazioni. Usando l'identità gestita con Servizi di comunicazione di Azure, è possibile semplificare il processo di autenticazione per l'applicazione, aumentando al contempo la sicurezza. Questo documento illustra come usare l'identità gestita con Servizi di comunicazione di Azure.
Uso dell'identità gestita con Servizi di comunicazione di Azure
Servizi di comunicazione di Azure supporta l'uso dell'identità gestita per l'autenticazione con il servizio. Usando l'identità gestita, è possibile eliminare la necessità di gestire i propri token di accesso e le credenziali.
Alla risorsa Servizi di comunicazione di Azure possono essere assegnati due tipi di identità:
- Identità assegnata dal sistema associata alla risorsa e eliminata quando la risorsa viene eliminata. La risorsa può avere solo un'identità assegnata dal sistema.
- Identità assegnata dall'utente che è una risorsa di Azure che può essere assegnata alla risorsa Servizi di comunicazione di Azure. Questa identità non viene eliminata quando la risorsa viene eliminata. La risorsa può avere più identità assegnate dall'utente.
Per usare l'identità gestita con Servizi di comunicazione di Azure, seguire questa procedura:
- Concedere all'identità gestita l'accesso alla risorsa servizi di comunicazione. Questa assegnazione può essere eseguita tramite le portale di Azure, l'interfaccia della riga di comando di Azure e gli SDK di Gestione comunicazioni di Azure.
- Usare l'identità gestita per eseguire l'autenticazione con Servizi di comunicazione di Azure. L'autenticazione può essere eseguita tramite gli SDK di Azure o le API REST che supportano l'identità gestita.
Aggiungere un'identità assegnata dal sistema
Aggiungere un'identità assegnata dall'utente
Per assegnare un'identità assegnata dall'utente alla risorsa Servizi di comunicazione di Azure è necessario creare prima l'identità e quindi aggiungerne l'identificatore alla risorsa del servizio di comunicazione.
Prima di tutto, è necessario creare una risorsa di identità gestita assegnata dall'utente.
Seguire queste istruzioni per creare una risorsa identità gestita assegnata dall'utente.
Nel riquadro di spostamento a sinistra per la pagina dell'app scorrere verso il basso fino al gruppo di Impostazioni.
Selezionare Identità.
Selezionare Aggiungi assegnato dall'utente>.
Cercare l'identità creata in precedenza, selezionarla e selezionare Aggiungi.
Identità gestita con SDK di gestione Servizi di comunicazione di Azure
L'identità gestita può anche essere assegnata alla risorsa Servizi di comunicazione di Azure usando gli SDK di Gestione delle comunicazioni di Azure. Questa assegnazione può essere ottenuta introducendo la proprietà Identity nella definizione della risorsa durante la creazione o durante l'aggiornamento della risorsa.
È possibile assegnare l'identità gestita alla risorsa Servizi di comunicazione di Azure usando Azure Communication Management SDK per .NET impostando la Identity
proprietà su CommunicationServiceResourceData
.
Ad esempio:
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;
}
Per altre informazioni sull'uso di .NET Management SDK, vedere Azure Communication Management SDK per .NET.
Per altre informazioni specifiche per la gestione dell'istanza di risorsa, vedere Gestione dell'istanza della risorsa del servizio di comunicazione
Nota
Una risorsa può avere identità assegnate dal sistema e assegnate dall'utente contemporaneamente. In questo caso, la proprietà type
sarebbe SystemAssigned,UserAssigned
.
È anche possibile rimuovere tutte le assegnazioni di identità gestite da una risorsa specificando la type
proprietà come None
.
Passaggi successivi
Ora che si è appreso come abilitare l'identità gestita con Servizi di comunicazione di Azure. Prendere in considerazione l'implementazione di questa funzionalità nelle proprie applicazioni per semplificare il processo di autenticazione e migliorare la sicurezza.