Guia de início rápido: como adicionar domínios gerenciados do Azure ao serviço de comunicação por email
Este artigo descreve como provisionar um Domínio Gerenciado do Azure para o Serviço de Comunicação por Email nos Serviços de Comunicação do Azure.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- Um Recurso de Email dos Serviços de Comunicação do Azure criado e pronto para adicionar os domínios. Consulte Introdução à criação de recurso de comunicação por e-mail.
Provisionar o Domínio Gerenciado do Azure
Abra a página Visão geral do recurso Serviço de Comunicações por Email que você criou em Introdução à criação de recurso de comunicação por email.
Crie um Domínio Gerenciado do Azure usando uma das seguintes opções.
- (Opção 1) Clique no botão Adicionar 1 clique em Adicionar um subdomínio gratuito do Azure. Continue para a etapa 3.
- (Opção 2) Clique em Provisionar domínios no painel de navegação esquerdo.
- Clique em Adicionar domínio na barra de navegação superior.
- Selecione Domínio do Azure na lista suspensa.
Aguarde pela conclusão da implementação.
Depois que o domínio for criado, você verá uma exibição de lista com o novo domínio.
Clique no nome do domínio provisionado para abrir a página de visão geral do tipo de recurso de domínio.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- Instalar a CLI do Azure
- Crie um serviço de comunicação por e-mail.
Criar recurso de domínio
Para criar um recurso de Domínio, entre na CLI do Azure. Você pode entrar executando o az login
comando do terminal e fornecendo suas credenciais. Para criar o recurso, execute o seguinte comando:
az communication email domain create --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --location "Global" --resource-group "<resourceGroup>" --domain-management AzureManaged
Se você quiser selecionar uma assinatura específica, você também pode especificar o --subscription
sinalizador e fornecer o ID da assinatura.
az communication email domain create --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --location "Global" --resource-group "<resourceGroup>" --domain-management AzureManaged --subscription "<subscriptionId>"
Você pode configurar seu recurso de domínio com as seguintes opções:
- O grupo de recursos
- O nome do recurso Serviços de Comunicação por Email
- A geografia à qual o recurso estará associado
- O nome do recurso de domínio:
- Para domínios do Azure, o nome deve ser AzureManagedDomain.
- O valor da propriedade de gerenciamento de domínio.
- Para domínios do Azure, o valor deve ser AzureManaged.
Na próxima etapa, você pode atribuir tags ao recurso de domínio. As tags podem ser usadas para organizar seus recursos de domínio. Para obter mais informações sobre tags, consulte a documentação de marcação de recursos.
Gerir o seu recurso de Domínio
Para adicionar tags ao recurso Domínio, execute os seguintes comandos. Você também pode segmentar uma assinatura específica.
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>"
Para listar todos os seus Recursos de Domínio em um determinado Serviço de Comunicação por E-mail, use o seguinte comando:
az communication email domain list --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
Para mostrar todas as informações sobre um determinado recurso de domínio, use o seguinte comando:
az communication email domain show --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
Limpar recurso de domínio
Se você quiser limpar e remover um recurso de domínio, você pode excluir executando o seguinte comando.
az communication email domain delete --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
Nota
A exclusão de recursos é permanente e nenhum dado, incluindo filtros de grade de eventos, números de telefone ou outros dados vinculados ao seu recurso, pode ser recuperado se você excluir o recurso.
Para obter informações sobre outros comandos, consulte CLI de domínio.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- A versão mais recente do SDK do .NET Core para seu sistema operacional.
- Obtenha a versão mais recente do .NET Identity SDK.
- Obtenha a versão mais recente do SDK de Gerenciamento do .NET.
Instalando o SDK
Primeiro, inclua o SDK de Gerenciamento de Serviços de Comunicação em seu projeto C#:
using Azure.ResourceManager.Communication;
ID de Subscrição
Você precisa saber a ID da sua assinatura do Azure. Isto pode ser adquirido no portal:
- Inicie sessão na sua conta do Azure
- Selecione Subscrições na barra lateral esquerda
- Selecione a assinatura necessária
- Clique em Visão geral
- Selecione o seu ID de Subscrição
Neste início rápido, assumiremos que você armazenou a ID da assinatura em uma variável de ambiente chamada AZURE_SUBSCRIPTION_ID
.
Autenticação
Para se comunicar com o recurso Domínio, você deve primeiro autenticar-se no Azure.
Autenticar o cliente
A opção padrão para criar um cliente autenticado é usar DefaultAzureCredential. Como todas as APIs de gerenciamento passam pelo mesmo ponto de extremidade, para interagir com recursos, apenas um ArmClient de nível superior precisa ser criado.
Para autenticar no Azure e criar um ArmClient, faça o seguinte código:
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);
Interagindo com recursos do Azure
Agora que você está autenticado.
Para cada um dos exemplos a seguir, atribuiremos nossos recursos de domínio a um serviço de comunicação por e-mail existente.
Se precisar de criar um Serviço de Comunicação por Email, pode fazê-lo utilizando o portal do Azure.
Criar um recurso de domínio
Ao criar um recurso de domínio, você precisa especificar o nome do grupo de recursos, o nome do serviço de comunicação por email, o nome do recurso e o DomainManagement.
Nota
A Location
propriedade é sempre 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}");
Gerencie seus recursos de domínio
Atualizar um recurso de domínio
...
// 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 por serviço de 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");
Obter recurso de domínio
// 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}");
Limpar um recurso de domínio
// 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");
Nota
A exclusão de recursos é permanente e nenhum dado, incluindo filtros de grade de eventos, números de telefone ou outros dados vinculados ao seu recurso, pode ser recuperado se você excluir o recurso.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- Instalar o módulo Azure Az PowerShell
- Crie um serviço de comunicação por e-mail.
Criar um recurso de domínio
Para criar um recurso de Domínio, entre em sua conta do Azure usando o Connect-AzAccount
comando a seguir e forneça suas credenciais.
PS C:\> Connect-AzAccount
Primeiro, certifique-se de instalar o módulo Az.Communication
Serviços de Comunicação do Azure usando o comando a seguir.
PS C:\> Install-Module Az.Communication
Execute o seguinte comando para criar o recurso de domínio gerenciado do Azure:
PS C:\> New-AzEmailServiceDomain -ResourceGroupName ContosoResourceProvider1 -EmailServiceName ContosoEmailServiceResource1 -Name AzureManagedDomain -DomainManagement AzureManaged
Você pode configurar seu recurso de domínio com as seguintes opções:
- O grupo de recursos
- O nome do recurso Serviços de Comunicação por Email.
- O nome do recurso de domínio:
- Para domínios do Azure, o nome deve ser - AzureManagedDomain.
- O valor da propriedade de gerenciamento de domínio.
- Para domínios do Azure, o valor deve ser AzureManaged.
Na próxima etapa, você pode atribuir tags ao recurso de domínio. As tags podem ser usadas para organizar seus recursos de domínio. Para obter mais informações sobre tags, consulte a documentação de marcação de recursos.
Gerir o seu recurso de Domínio
Para adicionar tags ao recurso Domínio, execute os seguintes comandos. Você também pode segmentar uma assinatura específica.
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
Para listar todos os seus Recursos de Domínio em um determinado Serviço de Comunicação por E-mail, use o seguinte comando:
PS C:\> Get-AzEmailServiceDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
Para listar todas as informações em um determinado recurso de domínio, use o seguinte comando:
PS C:\> Get-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
Limpar um recurso de domínio
Se você quiser limpar e remover um recurso de domínio, você pode excluir seu recurso de domínio executando o seguinte comando:
PS C:\> Remove-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
Nota
A exclusão de recursos é permanente e nenhum dado, incluindo filtros de grade de eventos, números de telefone ou outros dados vinculados ao seu recurso, pode ser recuperado se você excluir o recurso.
Domínios Geridos do Azure em comparação com Domínios Personalizados
Antes de provisionar um Domínio Gerenciado do Azure, revise a tabela a seguir para decidir qual tipo de domínio melhor atende às suas necessidades.
Domínios Geridos do Azure | Domínios personalizados | |
---|---|---|
Prós: | - A configuração é rápida & fácil - Nenhuma verificação de domínio necessária |
- Os e-mails são enviados a partir do seu próprio domínio |
Contras: | - O domínio do remetente não é personalizado e não pode ser alterado - Os nomes de usuário do remetente não podem ser personalizados - Volume de envio muito limitado - O Rastreamento de Engajamento do Usuário não pode ser ativado |
- Requer verificação de registros de domínio - Configuração mais longa para verificação |
Limites de serviço
Os domínios gerenciados do Azure e os domínios personalizados estão sujeitos a limites de serviço. Os limites de serviço incluem limites de falha, taxa e tamanho. Para obter mais informações, consulte Limites de serviço para Email dos Serviços > de Comunicação do Azure.
Autenticação de remetente para o Domínio Gerenciado do Azure
Os Serviços de Comunicação do Azure configuram automaticamente os protocolos de autenticação de email necessários para o email, conforme descrito em Práticas recomendadas de Autenticação de Email.
Seu domínio de e-mail agora está pronto para enviar e-mails.
Próximos passos
Guia de início rápido: como conectar um domínio de e-mail verificado
Como enviar um email usando o Serviço de Comunicação do Azure
Artigos relacionados
- Familiarize-se com a biblioteca de cliente de e-mail.
- Analise os limites de falha de email, os limites de taxa e os limites de tamanho em Limites de serviço para o Email dos Serviços > de Comunicação do Azure.
- Saiba como enviar e-mails com domínios verificados personalizados em Guia de início rápido: como adicionar domínios de e-mail verificados personalizados.