Szybki start: jak dodać domeny zarządzane platformy Azure do usługi komunikacji e-mail
W tym artykule opisano sposób aprowizowania domeny zarządzanej platformy Azure dla usługi komunikacji e-mail w usługach Azure Communication Services.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- Zasób poczty e-mail usług Azure Communication Services został utworzony i gotowy do dodania domen. Zobacz Wprowadzenie do tworzenia zasobu komunikacji e-mail.
Aprowizuj domenę zarządzaną platformy Azure
Otwórz stronę Przegląd zasobu usługi komunikacji poczty e-mail utworzonego w temacie Wprowadzenie do tworzenia zasobu komunikacji poczty e-mail.
Utwórz domenę zarządzaną platformy Azure przy użyciu jednej z następujących opcji.
- (Opcja 1) Kliknij przycisk Dodaj 1 w obszarze Dodaj bezpłatną domenę podrzędną platformy Azure. Przejdź do kroku 3.
- (Opcja 2) Kliknij pozycję Aprowizuj domeny na panelu nawigacyjnym po lewej stronie.
- Kliknij pozycję Dodaj domenę na górnym pasku nawigacyjnym.
- Z listy rozwijanej wybierz pozycję Domena platformy Azure.
Zaczekaj na zakończenie wdrażania.
Po utworzeniu domeny zostanie wyświetlony widok listy z nową domeną.
Kliknij nazwę aprowizowanej domeny, aby otworzyć stronę przeglądu dla typu zasobu domeny.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- Instalowanie interfejsu wiersza polecenia platformy Azure
- Utwórz usługę komunikacji e-mail.
Tworzenie zasobu domeny
Aby utworzyć zasób domeny, zaloguj się do interfejsu wiersza polecenia platformy Azure. Możesz zalogować się, uruchamiając polecenie z poziomu terminalu az login
i podając swoje poświadczenia. Aby utworzyć zasób, uruchom następujące polecenie:
az communication email domain create --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --location "Global" --resource-group "<resourceGroup>" --domain-management AzureManaged
Jeśli chcesz wybrać określoną subskrypcję, możesz również określić flagę --subscription
i podać identyfikator subskrypcji.
az communication email domain create --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --location "Global" --resource-group "<resourceGroup>" --domain-management AzureManaged --subscription "<subscriptionId>"
Zasób domeny można skonfigurować przy użyciu następujących opcji:
- Grupa zasobów
- Nazwa zasobu usług komunikacji poczty e-mail
- Lokalizacja geograficzna zasobu zostanie skojarzona z
- Nazwa zasobu domeny:
- W przypadku domen platformy Azure nazwa powinna mieć wartość AzureManagedDomain.
- Wartość właściwości zarządzanie domenami.
- W przypadku domen platformy Azure wartość powinna być azureManaged.
W następnym kroku można przypisać tagi do zasobu domeny. Tagi mogą służyć do organizowania zasobów domeny. Aby uzyskać więcej informacji na temat tagów, zobacz dokumentację tagowania zasobów.
Zarządzanie zasobem domeny
Aby dodać tagi do zasobu domeny, uruchom następujące polecenia. Możesz również wybrać konkretną subskrypcję.
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>"
Aby wyświetlić listę wszystkich zasobów domeny w danej usłudze komunikacji poczty e-mail, użyj następującego polecenia:
az communication email domain list --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
Aby wyświetlić wszystkie informacje dotyczące danego zasobu domeny, użyj następującego polecenia:
az communication email domain show --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
Czyszczenie zasobu domeny
Jeśli chcesz wyczyścić i usunąć zasób domeny, możesz usunąć, uruchamiając następujące polecenie.
az communication email domain delete --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
Uwaga
Usuwanie zasobów jest trwałe i nie można odzyskać żadnych danych, w tym filtrów usługi Event Grid, numerów telefonów lub innych danych powiązanych z zasobem.
Aby uzyskać informacje na temat innych poleceń, zobacz Interfejs wiersza polecenia domeny.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- Najnowsza wersja zestawu .NET Core SDK dla systemu operacyjnego.
- Pobierz najnowszą wersję zestawu .NET Identity SDK.
- Pobierz najnowszą wersję zestawu .NET Management SDK.
Instalowanie zestawu SDK
Najpierw uwzględnij zestaw SDK zarządzania usługami komunikacyjnymi w projekcie języka C#:
using Azure.ResourceManager.Communication;
Identyfikator subskrypcji
Musisz znać identyfikator subskrypcji platformy Azure. Można to uzyskać w portalu:
- Zaloguj się do konta platformy Azure
- Wybierz pozycję Subskrypcje na pasku bocznym po lewej stronie
- Wybierz dowolną wymaganą subskrypcję
- Kliknij pozycję Przegląd
- Wybierz identyfikator subskrypcji
W tym przewodniku Szybki start założono, że identyfikator subskrypcji został zapisany w zmiennej środowiskowej o nazwie AZURE_SUBSCRIPTION_ID
.
Uwierzytelnianie
Aby komunikować się z zasobem domeny, musisz najpierw uwierzytelnić się na platformie Azure.
Uwierzytelnianie klienta
Domyślną opcją utworzenia uwierzytelnionego klienta jest użycie wartości DefaultAzureCredential. Ponieważ wszystkie interfejsy API zarządzania przechodzą przez ten sam punkt końcowy, aby wchodzić w interakcje z zasobami, należy utworzyć tylko jeden klient ArmClient najwyższego poziomu.
Aby uwierzytelnić się na platformie Azure i utworzyć klienta ArmClient, wykonaj następujący kod:
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://learn.microsoft.com/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
Interakcja z zasobami platformy Azure
Teraz, gdy jesteś uwierzytelniony.
Dla każdego z poniższych przykładów przypiszemy zasoby domeny do istniejącej usługi komunikacji poczty e-mail.
Jeśli musisz utworzyć usługę komunikacji e-mail, możesz to zrobić przy użyciu witryny Azure Portal.
Tworzenie zasobu domeny
Podczas tworzenia zasobu domeny należy określić nazwę grupy zasobów, nazwę usługi komunikacji poczty e-mail, nazwę zasobu i domenęZarządzanie.
Uwaga
Właściwość Location
to zawsze 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 = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e";
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}");
Zarządzanie zasobami domeny
Aktualizowanie zasobu domeny
...
// 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 = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e";
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}");
Lista według usługi poczty 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 = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e";
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");
Pobieranie zasobu domeny
// 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 = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e";
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}");
Czyszczenie zasobu domeny
// 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 = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e";
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");
Uwaga
Usuwanie zasobów jest trwałe i nie można odzyskać żadnych danych, w tym filtrów usługi Event Grid, numerów telefonów lub innych danych powiązanych z zasobem.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- Instalowanie modułu Azure Az programu PowerShell
- Utwórz usługę komunikacji e-mail.
Tworzenie zasobu domeny
Aby utworzyć zasób domeny, zaloguj się do konta platformy Azure przy użyciu następującego Connect-AzAccount
polecenia i podaj swoje poświadczenia.
PS C:\> Connect-AzAccount
Najpierw upewnij się, że moduł Azure Communication Services Az.Communication
został zainstalowany przy użyciu następującego polecenia.
PS C:\> Install-Module Az.Communication
Uruchom następujące polecenie, aby utworzyć zasób domeny zarządzanej platformy Azure:
PS C:\> New-AzEmailServiceDomain -ResourceGroupName ContosoResourceProvider1 -EmailServiceName ContosoEmailServiceResource1 -Name AzureManagedDomain -DomainManagement AzureManaged
Zasób domeny można skonfigurować przy użyciu następujących opcji:
- Grupa zasobów
- Nazwa zasobu usług komunikacji poczty e-mail.
- Nazwa zasobu domeny:
- W przypadku domen platformy Azure nazwa powinna mieć wartość AzureManagedDomain.
- Wartość właściwości zarządzanie domenami.
- W przypadku domen platformy Azure wartość powinna być azureManaged.
W następnym kroku można przypisać tagi do zasobu domeny. Tagi mogą służyć do organizowania zasobów domeny. Aby uzyskać więcej informacji na temat tagów, zobacz dokumentację tagowania zasobów.
Zarządzanie zasobem domeny
Aby dodać tagi do zasobu domeny, uruchom następujące polecenia. Możesz również wybrać konkretną subskrypcję.
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
Aby wyświetlić listę wszystkich zasobów domeny w danej usłudze komunikacji poczty e-mail, użyj następującego polecenia:
PS C:\> Get-AzEmailServiceDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
Aby wyświetlić listę wszystkich informacji dotyczących danego zasobu domeny, użyj następującego polecenia:
PS C:\> Get-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
Czyszczenie zasobu domeny
Jeśli chcesz wyczyścić i usunąć zasób domeny, możesz usunąć zasób domeny, uruchamiając następujące polecenie:
PS C:\> Remove-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
Uwaga
Usuwanie zasobów jest trwałe i nie można odzyskać żadnych danych, w tym filtrów usługi Event Grid, numerów telefonów lub innych danych powiązanych z zasobem.
Domeny zarządzane platformy Azure w porównaniu z domenami niestandardowymi
Przed aprowizowaniem domeny zarządzanej platformy Azure zapoznaj się z poniższą tabelą, aby zdecydować, który typ domeny najlepiej spełnia Twoje potrzeby.
Domeny zarządzane platformy Azure | Domeny niestandardowe | |
---|---|---|
Zalety: | — Instalacja jest szybka i łatwa — Nie jest wymagana weryfikacja domeny |
— Wiadomości e-mail są wysyłane z własnej domeny |
Wady: | — Domena nadawcy nie jest spersonalizowana i nie można jej zmienić — Nie można personalizować nazw użytkowników nadawcy - Bardzo ograniczona ilość wysyłania woluminu — Nie można włączyć śledzenia zaangażowania użytkowników |
— Wymaga weryfikacji rekordów domeny — Dłuższa konfiguracja na potrzeby weryfikacji |
Limity usługi
Zarówno domeny zarządzane platformy Azure, jak i domeny niestandardowe podlegają limitom usług. Limity usługi obejmują limity błędów, szybkości i rozmiaru. Aby uzyskać więcej informacji, zobacz Limity usług dla poczty e-mail usług Azure Communication Services>.
Uwierzytelnianie nadawcy dla domeny zarządzanej platformy Azure
Usługi Azure Communication Services automatycznie konfiguruje wymagane protokoły uwierzytelniania poczty e-mail dla poczty e-mail zgodnie z opisem w artykule Najlepsze rozwiązania dotyczące uwierzytelniania poczty e-mail.
Domena poczty e-mail jest teraz gotowa do wysyłania wiadomości e-mail.
Następne kroki
Szybki start: jak połączyć zweryfikowaną domenę poczty e-mail
Jak wysłać wiadomość e-mail przy użyciu usługi Azure Communication Service
Powiązane artykuły
- Zapoznaj się z biblioteką klienta poczty e-mail.
- Przejrzyj limity błędów poczty e-mail, limity szybkości i limity rozmiaru w temacie Limity usługi dla poczty e-mail usług Azure Communication Services>.
- Dowiedz się, jak wysyłać wiadomości e-mail z niestandardowymi zweryfikowanymi domenami w przewodniku Szybki start: jak dodać niestandardowe zweryfikowane domeny poczty e-mail.