你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

快速入门:如何连接已验证电子邮件域

在本快速入门中,你将了解如何在 Azure 通信服务中连接已验证的域来发送电子邮件。

先决条件

将电子邮件域连接到通信服务资源

  1. 在 Azure 通信服务资源概述页上,在左侧导航面板中单击“电子邮件”下的“域”。

    显示用于链接电子邮件域的左侧导航面板的屏幕截图。

  2. 选择以下选项之一

    • 单击上部导航栏中的“连接域”。

    • 单击初始屏幕中的“连接域”。

      显示如何连接已验证的电子邮件域之一的屏幕截图。

  3. 通过筛选选择一个已验证的域

    • 订阅
    • 资源组
    • 电子邮件服务
    • 已验证的域

    显示如何筛选并选择要连接的已验证电子邮件域之一的屏幕截图。

注意

只允许连接同一地理区域中的域。 请确保在资源创建期间选择的通信资源和电子邮件通信资源的数据位置相同。

  1. 单击“连接”

    显示已验证的电子邮件域之一现已连接的屏幕截图。

从通信服务资源断开连接电子邮件域

  1. 在 Azure 通信服务资源概述页上,在左侧导航面板中单击“电子邮件”下的“域”。

  2. 选择“已连接的域”,单击“...”,然后单击“断开连接”。

    显示如何与已连接域的断开连接的屏幕截图。

先决条件

将电子邮件域连接到通信服务资源

替换示例请求中的 {subscription-id}{resource-group-name}{communication-services-resource-name}{linked-domain-resource-id}

链接的域资源 ID 应采用以下格式。

/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Communication/emailServices/{email-service-name}/domains/{domain-name}

如果使用的是 Azure 托管域,则 domain-name 为“AzureManagedDomain”。 email-service-name 应与用于预配域的电子邮件服务相同。

填充这些值后,使用以下请求 URL 和正文发出 PATCH 请求。

https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Communication/CommunicationServices/{communication-services-resource-name}?api-version=2023-03-31
{
    "properties": {
        "linkedDomains": ["{linked-domain-resource-id}"]
    }
}

从通信服务资源断开连接电子邮件域

替换示例请求中的 {subscription-id}{resource-group-name}{communication-services-resource-name}

填充这些值后,使用以下请求 URL 和正文发出 PATCH 请求。

https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Communication/CommunicationServices/{communication-services-resource-name}?api-version=2023-03-31
{
    "properties": {
        "linkedDomains": []
    }
}

先决条件

安装必需包

dotnet add package Azure.ResourceManager.Communication

初始化管理客户端

使用你的域和电子邮件资源所位于的订阅的订阅 ID 设置环境变量 AZURE_SUBSCRIPTION_ID。 运行代码示例以初始化管理客户端。

using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.Compute;
using Azure.ResourceManager.Resources;

ArmClient client = new ArmClient(new DefaultAzureCredential());

将电子邮件域连接到通信服务资源

替换示例代码中的 <subscription-id><resource-group-name><azure-communication-services-resource-name><linked-domain-resource-id>

链接的域资源 ID 应采用以下格式。

/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Communication/emailServices/<email-service-name>/domains/<domain-name>

如果使用的是 Azure 托管域,则 domain-name 为“AzureManagedDomain”。 email-service-name 应与用于预配域的电子邮件服务相同。

填充这些值后,运行示例代码。

ResourceIdentifier communicationServiceResourceId = CommunicationServiceResource.CreateResourceIdentifier("<subscription-id>", "<resource-group-name>", "<azure-communication-services-resource-name>");
CommunicationServiceResource communicationServiceResource = client.GetCommunicationServiceResource(communicationServiceResourceId);

CommunicationServiceResourcePatch patch = new CommunicationServiceResourcePatch()
{
    LinkedDomains =
    {
        "<linked-domain-resource-id>",
    },
};
CommunicationServiceResource result = await communicationServiceResource.UpdateAsync(patch);

从通信服务资源断开连接电子邮件域

替换示例代码中的 <subscription-id><resource-group-name><azure-communication-services-resource-name>

填充这些值后,运行示例代码。

ResourceIdentifier communicationServiceResourceId = CommunicationServiceResource.CreateResourceIdentifier("<subscription-id>", "<resource-group-name>", "<azure-communication-services-resource-name>");
CommunicationServiceResource communicationServiceResource = client.GetCommunicationServiceResource(communicationServiceResourceId);

CommunicationServiceResourcePatch patch = new CommunicationServiceResourcePatch();
CommunicationServiceResource result = await communicationServiceResource.UpdateAsync(patch);

先决条件

安装必需包

npm install @azure/arm-communication
npm install @azure/identity

初始化管理客户端

将示例代码中的字段替换为你的域和电子邮件资源所在的订阅的订阅 ID。 运行代码示例以初始化管理客户端。

const { CommunicationServiceManagementClient } = require("@azure/arm-communication");
const { DefaultAzureCredential } = require("@azure/identity");

const credential = new DefaultAzureCredential();
const subscriptionId = "<your-subscription-id>";

client = new CommunicationServiceManagementClient(credential, subscriptionId);

将电子邮件域连接到通信服务资源

替换示例代码中的 <resource-group-name><azure-communication-services-resource-name><linked-domain-resource-id>

链接的域资源 ID 应采用以下格式。

/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Communication/emailServices/<email-service-name>/domains/<domain-name>

如果使用的是 Azure 托管域,则 domain-name 为“AzureManagedDomain”。 email-service-name 应与用于预配域的电子邮件服务相同。

填充这些值后,运行示例代码。

const parameters = {
    dataLocation: "United States",
    location: "Global",
    linkedDomains: [
        "<linked-domain-resource-id>"
    ]
};

const result = await client.communicationServices.beginCreateOrUpdateAndWait(
    "<resource-group-name>",
    "<azure-communication-services-resource-name>",
    parameters
);

从通信服务资源断开连接电子邮件域

替换示例代码中的 <resource-group-name><azure-communication-services-resource-name>

填充这些值后,运行示例代码。

const parameters = {
    dataLocation: "United States",
    location: "Global"
};

const result = await client.communicationServices.beginCreateOrUpdateAndWait(
    "<resource-group-name>",
    "<azure-communication-services-resource-name>",
    parameters
);

先决条件

安装必需包

将以下依赖项添加到 pom.xml

<dependency>
    <groupId>com.azure.resourcemanager</groupId>
    <artifactId>azure-resourcemanager-communication</artifactId>
    <version>2.0.0</version>
</dependency>

初始化管理客户端

使用你的域和电子邮件资源所位于的订阅的订阅 ID 设置环境变量 AZURE_SUBSCRIPTION_ID。 运行代码示例以初始化管理客户端。

AzureProfile profile = new AzureProfile(AzureEnvironment.AZURE);
TokenCredential credential = new DefaultAzureCredentialBuilder()
    .authorityHost(profile.getEnvironment().getActiveDirectoryEndpoint())
    .build();
CommunicationManager manager = CommunicationManager
    .authenticate(credential, profile);

将电子邮件域连接到通信服务资源

替换示例代码中的 <resource-group-name><azure-communication-services-resource-name><linked-domain-resource-id>

链接的域资源 ID 应采用以下格式。

/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Communication/emailServices/<email-service-name>/domains/<domain-name>

如果使用的是 Azure 托管域,则 domain-name 为“AzureManagedDomain”。 email-service-name 应与用于预配域的电子邮件服务相同。

填充这些值后,运行示例代码。

List<String> linkedDomains = new ArrayList<>();
linkedDomains.add("<linked-domain-resource-id>") 

manager
    .communicationServices()
    .define("<azure-communication-services-resource-name>")
    .withRegion("Global")
    .withExistingResourceGroup("<resource-group-name>")
    .withDataLocation("United States")
    .withLinkedDomains(linkedDomains)
    .create();

从通信服务资源断开连接电子邮件域

替换示例代码中的 <resource-group-name><azure-communication-services-resource-name>

填充这些值后,运行示例代码。

manager
    .communicationServices()
    .define("<azure-communication-services-resource-name>")
    .withRegion("Global")
    .withExistingResourceGroup("<resource-group-name>")
    .withDataLocation("United States")
    .create();

先决条件

安装必需包

pip install azure-mgmt-communication
pip install azure-identity

初始化管理客户端

将示例代码中的字段替换为你的域和电子邮件资源所在的订阅的订阅 ID。 运行代码示例以初始化管理客户端。

from azure.mgmt.communication import CommunicationServiceManagementClient
from azure.identity import DefaultAzureCredential

credential = DefaultAzureCredential()
subscription_id = "<your-subscription-id>"

client = CommunicationServiceManagementClient(credential, subscription_id)

将电子邮件域连接到通信服务资源

替换示例代码中的 <resource-group-name><azure-communication-services-resource-name><linked-domain-resource-id>

链接的域资源 ID 应采用以下格式。

/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Communication/emailServices/<email-service-name>/domains/<domain-name>

如果使用的是 Azure 托管域,则 domain-name 为“AzureManagedDomain”。 email-service-name 应与用于预配域的电子邮件服务相同。

填充这些值后,运行示例代码。


response = client.communication_services.begin_create_or_update(
    resource_group_name="<resource-group-name>",
    communication_service_name="<azure-communication-services-resource-name>",
    parameters={
        "location": "Global",
        "properties": {
            "dataLocation": "United States",
            "linkedDomains": [
                "<linked-domain-resource-id>"
            ],
        }
    },
).result()

从通信服务资源断开连接电子邮件域

替换示例代码中的 <resource-group-name><azure-communication-services-resource-name>

填充这些值后,运行示例代码。


response = client.communication_services.begin_create_or_update(
    resource_group_name="<resource-group-name>",
    communication_service_name="<azure-communication-services-resource-name>",
    parameters={
        "location": "Global",
        "properties": {
            "dataLocation": "United States"
        }
    },
).result()

后续步骤