Démarrage rapide : Comment ajouter des domaines managés Azure à Email Communication Service
Dans ce démarrage rapide, vous apprendrez comment approvisionner le domaine managé Azure vers les services de communication par e-mail dans Azure Communication Services.
Prérequis
- Compte Azure avec un abonnement actif. Créez un compte gratuitement.
- Une ressource de messagerie Azure Communication Services créée et prête à ajouter les domaines. Consultez Bien démarrer avec la création d’une ressource de communication par e-mail.
Provisionner un domaine managé Azure
Ouvrez la page de présentation de la ressource du service de communication par e-mail que vous avez créée dans Bien démarrer avec la création d’une ressource de communication par e-mail.
Créez un domaine managé Azure à l’aide de l’une des options suivantes.
- (Option 1) Cliquez sur le bouton Ajouter en un clic sous Ajouter un sous-domaine Azure gratuit. Passez à l’étape 3.
- (Option 2) Cliquez sur Provisionner des domaines dans le volet de navigation gauche.
- Cliquez sur Ajouter un domaine dans le volet de navigation du haut.
- Sélectionnez Domaine Azure dans la liste déroulante.
Attendez la fin du déploiement.
Une fois le domaine créé, vous verrez une liste contenant le nouveau domaine.
Cliquez sur le nom du domaine approvisionné pour ouvrir la page de présentation du type de ressource de domaine.
Prérequis
- Compte Azure avec un abonnement actif. Créez un compte gratuitement.
- Installer l’interface de ligne de commande Azure
- Create un Service de communication par e-mail.
Create une ressource de domaine
Pour créer une ressource de domaine, connectez-vous à Azure CLI. Vous pouvez vous connecter en exécutant la commande az login
à partir du terminal et fournir vos informations d’identification. Pour créer la ressource, exécutez la commande suivante :
az communication email domain create --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --location "Global" --resource-group "<resourceGroup>" --domain-management AzureManaged
Si vous souhaitez sélectionner un abonnement particulier, vous pouvez également spécifier l’indicateur --subscription
et fournir l’ID d’abonnement.
az communication email domain create --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --location "Global" --resource-group "<resourceGroup>" --domain-management AzureManaged --subscription "<subscriptionId>"
Vous pouvez configurer votre ressource de domaine avec les options suivantes :
- Le groupe de ressources
- Nom de la ressource Email Communication Services
- Zone géographique à laquelle associer la ressource
- Le nom du domaine de ressource :
- Pour les domaines Azure, le nom doit être AzureManagedDomain.
- Valeur de la propriété de gestion de domaine.
- Pour les domaines Azure, la valeur doit être AzureManaged.
À l’étape suivante, vous pouvez attribuer des étiquettes à la ressource de domaine. Les étiquettes peuvent être utiles pour organiser vos domaines de ressources. Pour plus d’informations sur les étiquettes, consultez la documentation sur l’étiquetage des ressources.
Gérer les ressources de votre domaine
Pour ajouter des balises à votre ressource Domaine, exécutez les commandes suivantes. Vous pouvez également cibler un abonnement spécifique.
az communication email domain update --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>" --tags newTag="newVal1"
az communication email domain update --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>" --tags newTag="newVal1" --subscription "<subscriptionId>"
Pour dresser la liste de toutes les ressources de votre domaine dans un service de communication par e-mail donné, utilisez la commande suivante :
az communication email domain list --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
Pour afficher toutes les informations d’un domaine de ressource spécifique, utilisez la commande suivante :
az communication email domain show --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
Nettoyer une ressource de domaine
Si vous souhaitez nettoyer et supprimer une ressource de domaine, vous pouvez supprimer en exécutant la commande suivante.
az communication email domain delete --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
Remarque
La suppression d’une ressource est définitive, et aucune donnée, y compris les filtres d’événements, les numéros de téléphone ou autres informations liées à la ressource, ne peut être récupérée une fois la ressource supprimée.
Pour plus d’informations sur d’autres commandes, consultez la CLI de domaine.
Prérequis
- Compte Azure avec un abonnement actif. Créez un compte gratuitement.
- Dernière version du kit SDK .NET Core pour votre système d’exploitation.
- Procurez-vous la dernière version du SDK .NET Identity.
- Procurez-vous la dernière version du SDK .NET Management.
Installation du SDK
Tout d’abord, incluez le SDK Communication Services Management dans votre projet C# :
using Azure.ResourceManager.Communication;
ID d’abonnement
Vous devez connaître l’ID de votre abonnement Azure. Vous pouvez l’obtenir à partir du portail :
- Connectez-vous à votre compte Azure
- Sélectionnez Abonnements dans la barre latérale gauche
- Sélectionnez l’abonnement à utiliser
- Cliquez sur Vue d’ensemble
- Sélectionnez votre ID d’abonnement
Dans ce guide de démarrage rapide, nous supposons que vous avez stocké l’ID d’abonnement dans une variable d’environnement appelée AZURE_SUBSCRIPTION_ID
.
Authentification
Pour communiquer avec une ressource de domaine, vous devez d’abord vous authentifier auprès d’Azure.
Authentifier le client
L’option par défaut permettant de créer un client authentifié consiste à utiliser DefaultAzureCredential. Du fait que toutes les API de gestion passent par le même point de terminaison, vous ne devez créer qu’un seul ArmClient de niveau supérieur pour interagir avec des ressources.
Pour vous authentifier à Azure et créer un ArmClient, effectuez le code suivant :
using System;
using System.Threading.Tasks;
using Azure;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Resources;
...
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://video2.skills-academy.com/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
Interaction avec des ressources Azure
Vous êtes maintenant authentifié(e).
Pour chacun des exemples suivants, nous affecterons nos ressources de domaine à un service de communication par e-mail existant.
Si vous devez créer un service de communication par e-mail, vous pouvez le faire à l’aide du portail Azure.
Create une ressource de domaine
Lors de la création d’une ressource Domaine, vous devez spécifier le nom du groupe de ressources, le nom du service de communication par courriel, le nom de la ressource et DomainManagement.
Remarque
La propriété Location
a toujours la valeur global
.
// this example assumes you already have this EmailServiceResource created on azure
// for more information of creating EmailServiceResource, please refer to the document of EmailServiceResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
ResourceIdentifier emailServiceResourceId = EmailServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName);
EmailServiceResource emailServiceResource = client.GetEmailServiceResource(emailServiceResourceId);
// get the collection of this CommunicationDomainResource
CommunicationDomainResourceCollection collection = emailServiceResource.GetCommunicationDomainResources();
// invoke the operation
string domainName = "AzureManagedDomain";
CommunicationDomainResourceData data = new CommunicationDomainResourceData(new AzureLocation("Global"))
{
DomainManagement = DomainManagement.AzureManaged,
};
ArmOperation<CommunicationDomainResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, domainName, data);
CommunicationDomainResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
CommunicationDomainResourceData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
Gérer les ressources de votre domaine
Mettre à jour une ressource de domaine
...
// this example assumes you already have this CommunicationDomainResource created on azure
// for more information of creating CommunicationDomainResource, please refer to the document of CommunicationDomainResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
string domainName = "AzureManagedDomain";
ResourceIdentifier communicationDomainResourceId = CommunicationDomainResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName, domainName);
CommunicationDomainResource communicationDomainResource = client.GetCommunicationDomainResource(communicationDomainResourceId);
// invoke the operation
CommunicationDomainResourcePatch patch = new CommunicationDomainResourcePatch()
{
Tags =
{
["newTag"] = "newVal",
},
};
ArmOperation<CommunicationDomainResource> lro = await communicationDomainResource.UpdateAsync(WaitUntil.Completed, patch);
CommunicationDomainResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
CommunicationDomainResourceData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
Répertorier par service d- e-mail
// this example assumes you already have this EmailServiceResource created on azure
// for more information of creating EmailServiceResource, please refer to the document of EmailServiceResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
ResourceIdentifier emailServiceResourceId = EmailServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName);
EmailServiceResource emailServiceResource = client.GetEmailServiceResource(emailServiceResourceId);
// get the collection of this CommunicationDomainResource
CommunicationDomainResourceCollection collection = emailServiceResource.GetCommunicationDomainResources();
// invoke the operation and iterate over the result
await foreach (CommunicationDomainResource item in collection.GetAllAsync())
{
// the variable item is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
CommunicationDomainResourceData resourceData = item.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
}
Console.WriteLine($"Succeeded");
Obtenir des ressources de domaine
// this example assumes you already have this EmailServiceResource created on azure
// for more information of creating EmailServiceResource, please refer to the document of EmailServiceResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
ResourceIdentifier emailServiceResourceId = EmailServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName);
EmailServiceResource emailServiceResource = client.GetEmailServiceResource(emailServiceResourceId);
// get the collection of this CommunicationDomainResource
CommunicationDomainResourceCollection collection = emailServiceResource.GetCommunicationDomainResources();
// invoke the operation
string domainName = "AzureManagedDomain";
bool result = await collection.ExistsAsync(domainName);
Console.WriteLine($"Succeeded: {result}");
Nettoyer une ressource de domaine
// this example assumes you already have this CommunicationDomainResource created on azure
// for more information of creating CommunicationDomainResource, please refer to the document of CommunicationDomainResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
string domainName = "AzureManagedDomain";
ResourceIdentifier communicationDomainResourceId = CommunicationDomainResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName, domainName);
CommunicationDomainResource communicationDomainResource = client.GetCommunicationDomainResource(communicationDomainResourceId);
// invoke the operation
await communicationDomainResource.DeleteAsync(WaitUntil.Completed);
Console.WriteLine($"Succeeded");
Remarque
La suppression d’une ressource est définitive, et aucune donnée, y compris les filtres d’événements, les numéros de téléphone ou autres informations liées à la ressource, ne peut être récupérée une fois la ressource supprimée.
Prérequis
- Compte Azure avec un abonnement actif. Créez un compte gratuitement.
- Installer le module PowerShell Azure Az
- Create un Service de communication par e-mail.
Create une ressource de domaine
Pour créer une ressource de domaine, connectez-vous à votre compte Azure en utilisant la Connect-AzAccount
à l’aide de la commande suivante et fournissez vos informations d’identification.
PS C:\> Connect-AzAccount
Tout d’abord, assurez-vous d’installer le module Azure Communication Services Az.Communication
à l’aide de la commande suivante.
PS C:\> Install-Module Az.Communication
Exécutez la commande suivante pour créer la ressource de domaine managé Azure :
PS C:\> New-AzEmailServiceDomain -ResourceGroupName ContosoResourceProvider1 -EmailServiceName ContosoEmailServiceResource1 -Name AzureManagedDomain -DomainManagement AzureManaged
Vous pouvez configurer votre ressource de domaine avec les options suivantes :
- Le groupe de ressources
- Nom de la ressource Email Communication Services.
- Le nom du domaine de ressource :
- Pour les domaines Azure, le nom doit être – AzureManagedDomain.
- Valeur de la propriété de gestion de domaine.
- Pour les domaines Azure, la valeur doit être AzureManaged.
À l’étape suivante, vous pouvez attribuer des étiquettes à la ressource de domaine. Les étiquettes peuvent être utiles pour organiser vos domaines de ressources. Pour plus d’informations sur les étiquettes, consultez la documentation sur l’étiquetage des ressources.
Gérer les ressources de votre domaine
Pour ajouter des balises à votre ressource Domaine, exécutez les commandes suivantes. Vous pouvez également cibler un abonnement spécifique.
PS C:\> Update-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1 -Tag @{ExampleKey1="ExampleValue1"}
PS C:\> Update-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1 -Tag @{ExampleKey1="ExampleValue1"} -SubscriptionId SubscriptionID
Pour dresser la liste de toutes les ressources de votre domaine dans un service de communication par e-mail donné, utilisez la commande suivante :
PS C:\> Get-AzEmailServiceDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
Pour afficher toutes les informations d’un domaine de ressource spécifique, utilisez la commande suivante :
PS C:\> Get-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
Nettoyer une ressource de domaine
Si vous souhaitez nettoyer et supprimer une ressource de domaine, vous pouvez supprimer votre ressource de domaine en exécutant la commande suivante :
PS C:\> Remove-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
Remarque
La suppression d’une ressource est définitive, et aucune donnée, y compris les filtres d’événements, les numéros de téléphone ou autres informations liées à la ressource, ne peut être récupérée une fois la ressource supprimée.
Domaines managés Azure comparés aux domaines personnalisés
Avant d’approvisionner un domaine managé Azure, examinez le tableau suivant pour déterminer le type de domaine le mieux adapté à vos besoins.
Domaines managés Azure | Domaines personnalisés | |
---|---|---|
Avantages : | – L’installation est rapide et facile – Aucune vérification de domaine requise |
– Les e-mails sont envoyés à partir de votre propre domaine |
Inconvénients : | – Le domaine de l’expéditeur n’est pas personnalisé et ne peut pas être modifié – Les noms d’utilisateur des expéditeurs ne peuvent pas être personnalisés – Volume d’envoi très limité – Le suivi d’engagement utilisateur ne peut pas être activé |
– Nécessite une vérification des enregistrements de domaine – Configuration plus longue pour la vérification |
Authentification de l’expéditeur pour un domaine managé Azure
Azure Communication Services configure automatiquement les protocoles d’authentification de messagerie nécessaires pour l’e-mail, comme indiqué dans Bonnes pratiques d’authentification pour les e-mails.
Votre domaine de messagerie est maintenant prêt à envoyer des e-mails.
Étapes suivantes
Démarrage rapide : Comment connecter un domaine de courrier vérifié
Comment envoyer un e-mail en utilisant Azure Communication Services
Articles connexes
- Familiarisez-vous avec la bibliothèque de client Email
- Découvrez comment envoyer des e-mails avec des domaines vérifiés personnalisés dans Démarrage rapide : comment ajouter des domaines de messagerie vérifiés personnalisés