Freigeben über


Senden von E-Mails mit SMTP

In diesem Artikel wird beschrieben, wie E-Mails mithilfe des Simple Mail Transfer Protocol (SMTP) gesendet werden.

Voraussetzungen

Um die Anleitungen in diesem Artikel zu befolgen, fallen in Ihrem Azure-Konto geringfügige Kosten von höchstens einigen wenigen Cent (USD) an.

Hinweis

Sie können auch eine E-Mail von Ihrer eigenen überprüften Domäne senden. Hinzufügen benutzerdefinierter überprüfter Domänen zu Email Communication Service

In diesem Artikel wird beschrieben, wie E-Mails mit Azure Communication Services mithilfe von SMTP gesendet werden.

Prüfen der Voraussetzungen

  • Führen Sie in einem Terminal- oder Befehlsfenster den Befehl dotnet aus, um sich zu vergewissern, dass die .NET-Clientbibliothek installiert ist.
  • Um die Unterdomänen anzuzeigen, die Ihrer Azure Communication Email Resource zugeordnet sind, melden Sie sich beim Azure-Portal an. Suchen Sie Ihre Azure Communication-E-Mail-Ressource, und öffnen Sie die Registerkarte " Domänen bereitstellen " im linken Navigationsbereich.

Erstellen einer neuen C#-Anwendung

Verwenden Sie in einem Konsolenfenster (z. B. cmd, PowerShell oder Bash) den Befehl dotnet new zum Erstellen einer neuen Konsolen-App mit dem Namen EmailQuickstart. Dieser Befehl erstellt ein einfaches „Hallo Welt“-C#-Projekt mit einer einzigen Quelldatei: Program.cs.

dotnet new console -o EmailSmtpQuickstart

Wechseln Sie zum neu erstellten App-Ordner, und verwenden Sie den Befehl dotnet build, um Ihre Anwendung zu kompilieren.

cd EmailSmtpQuickstart
dotnet build

Erstellen Ihrer E-Mail-Nachricht

Um eine E-Mail-Nachricht zu erstellen, müssen Sie:

  • Definieren Sie die SMTP-Authentifizierungsanmeldeinformationen mithilfe der Microsoft Entra-ID.
  • Definieren Sie den E-Mail-Betreff und den Textkörper.
  • Ihre Absenderadresse definieren. Rufen Sie Ihre MailFrom-Adresse aus Ihrer überprüften Domäne ab.
  • Die Empfängeradresse definieren.

Ersetzen Sie sie durch Ihre Domänendetails, und ändern Sie den Inhalt. Fügen Sie bei Bedarf Empfängerdetails hinzu.

//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.";

Senden einer E-Mail mit System.Net.Mail.SmtpClient

Zum Senden einer E-Mail-Nachricht müssen Sie diese Schritte ausführen:

  1. Erstellen Sie eine SmtpClient mit Verwendung der Azure Communication Services-Host-URL und der SMTP-Authentifizierungsdaten.
  2. Erstellen Sie eine MailMessage.
  3. Senden Sie mithilfe der SmtpClient-Send-Methode.
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}.");
}

Voraussetzungen

Die Durchführung dieses Schnellstarts verursacht geringe Kosten in Höhe von ein paar USD-Cents oder weniger in Ihrem Azure-Konto.

Hinweis

Wir können auch eine E-Mail von unserer eigenen verifizierten Domäne senden. Hinzufügen benutzerdefinierter überprüfter Domänen zu Email Communication Service

In diesem Artikel wird beschrieben, wie E-Mails mit Azure Communication Services mithilfe von SMTP gesendet werden.

Senden einer E-Mail mit Send-MailMessage

Die Anmeldeinformationen können mithilfe des Microsoft PowerShell-Hilfsprogramms Send-MailMessage überprüft werden. Die Syntax finden Sie unter Send-MailMessage .

Verwenden Sie die folgenden PowerShell-Befehle, um die Anmeldeinformationen im erforderlichen PSCredential-Format zu speichern:

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

Verwenden Sie das folgende PowerShell-Skript, um die E-Mail zu senden. Der Wert Von ist die E-Mail-Adresse Ihrer überprüften Domäne. Der Wert "An " ist die E-Mail-Adresse, an die Sie senden möchten.

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