Partager via


Envoyer un e-mail avec SMTP

Cet article explique comment envoyer des e-mails à l’aide du protocole SMTP (Simple Mail Transfer Protocol).

Conditions préalables

Le fait d’effectuer les étapes de cet article entraîne un coût minime de quelques centimes de dollar USD ou moins sur votre compte Azure.

Remarque

Vous pouvez également envoyer un e-mail à partir de votre propre domaine vérifié. Ajouter des domaines personnalisés vérifiés à Email Communication Service.

Cet article explique comment envoyer des e-mails avec Azure Communication Services à l’aide de SMTP.

Vérification du prérequis

  • Dans une fenêtre de terminal ou de commande, exécutez la commande dotnet pour vérifier que la bibliothèque de client .NET est installée.
  • Pour afficher les sous-domaines associés à votre ressource Azure Communication Email, connectez-vous au portail Azure. Recherchez votre ressource Azure Communication Email et ouvrez l’onglet Approvisionner les domaines dans le volet de navigation gauche.

Créer une application C#

Dans une fenêtre de console (par exemple cmd, PowerShell ou Bash), utilisez la commande dotnet new pour créer une application console avec le nom EmailQuickstart. Cette commande crée un projet C# « Hello World » simple avec un seul fichier source : Program.cs.

dotnet new console -o EmailSmtpQuickstart

Remplacez votre répertoire par le dossier d’application que vous venez de créer, puis utilisez la commande dotnet build pour compiler votre application.

cd EmailSmtpQuickstart
dotnet build

Créer votre e-mail

Pour construire un e-mail, vous devez :

  • Définissez les informations d’identification d’authentification SMTP à l’aide de l’ID Microsoft Entra.
  • Définissez l’objet et le corps de l’e-mail.
  • Définir votre adresse expéditeur ; Obtenez votre adresse MailFrom à partir de votre domaine vérifié.
  • Définir l’adresse du destinataire ;

Remplacez par les détails de votre domaine et modifiez le contenu. Ajoutez les détails du destinataire en fonction des besoins.

//Replace with your domain and modify the content, recipient details as required

string smtpAuthUsername = "<SMTP Username>";
string smtpAuthPassword = "<Entra Application Client Secret>";
string sender = "donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net";
string recipient = "emailalias@contoso.com";
string subject = "Welcome to Azure Communication Service Email SMTP";
string body = "This email message is sent from Azure Communication Service Email using SMTP.";

Envoyer un e-mail à l’aide de System.Net.Mail.SmtpClient

Pour envoyer un e-mail, vous devez :

  1. Utilisez l’URL d’hôte Azure Communication Services et les informations d’identification d’authentification SMTP pour créer un SmtpClient.
  2. Créez un Message électronique.
  3. Envoyer à l'aide de la SmtpClient méthode d'envoi.
using System.Net;
using System.Net.Mail;

string smtpAuthUsername = "<SMTP Username>";
string smtpAuthPassword = "<Entra Application Client Secret>";
string sender = "donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net";
string recipient = "emailalias@contoso.com";
string subject = "Welcome to Azure Communication Service Email SMTP";
string body = "This email message is sent from Azure Communication Service Email using SMTP.";

string smtpHostUrl = "smtp.azurecomm.net";
var client = new SmtpClient(smtpHostUrl)
{
    Port = 587,
    Credentials = new NetworkCredential(smtpAuthUsername, smtpAuthPassword),
    EnableSsl = true
};

var message = new MailMessage(sender, recipient, subject, body);

try
{
    client.Send(message);
    Console.WriteLine("The email was successfully sent using Smtp.");
}
catch (Exception ex)
{
    Console.WriteLine($"Smtp send failed with the exception: {ex.Message}.");
}

Conditions préalables

Suivre ce guide de démarrage rapide entraîne un coût minime de quelques cents USD tout au plus dans votre compte Azure.

Remarque

Nous pouvons également envoyer un e-mail à partir de notre propre domaine vérifié. Ajouter des domaines personnalisés vérifiés à Email Communication Service.

Cet article explique comment envoyer des e-mails avec Azure Communication Services à l’aide de SMTP.

Envoyer un e-mail à l’aide de Send-MailMessage

Les informations d’identification peuvent être vérifiées à l’aide de l’utilitaire Microsoft PowerShell Send-MailMessage. Consultez Send-MailMessage pour connaître la syntaxe.

Pour stocker les informations d’identification au format PSCredential requis, utilisez les commandes PowerShell suivantes :

$Password = ConvertTo-SecureString -AsPlainText -Force -String '<Entra Application Client Secret>'
$Cred = New-Object -TypeName PSCredential -ArgumentList '<SMTP Username>', $Password

Utilisez le script PowerShell suivant pour envoyer l’e-mail. La valeur From est l’adresse de messagerie de votre domaine vérifié. La valeur À correspond à l’adresse e-mail à laquelle vous souhaitez envoyer.

Send-MailMessage -From 'User01 <user01@fabrikam.com>' -To 'User02 <user02@fabrikam.com>' -Subject 'Test mail' -Body 'test' -SmtpServer 'smtp.azurecomm.net' -Port 587 -Credential $Cred -UseSsl