クイック スタート: 検証済みのメール ドメインを接続する方法
このクイックスタートでは、メールを送信するために、Azure Communication Services 内で検証済みドメインを接続する方法について説明します。
前提条件
- アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成します。
- ドメインをプロビジョニングする準備ができている Azure メール通信サービス リソース。 メール通信リソースの作成を開始します。
- Azure マネージド ドメインまたはカスタム ドメインがプロビジョニング済みで電子メール送信の準備ができていること。 このドメインは、Communication Service リソースへのリンクを試行する前に、完全に検証する必要があります。
- Azure Communication Services のリソース。 Communication Services リソースを作成します。
メール ドメインを Communication Service リソースに接続する
Azure Communication Service リソースの概要ページで、左ナビゲーション パネルの [メール] の下にある [ドメイン] をクリックします。
次のいずれかのオプションを選択してください。
以下のフィルタリングによって、いずれかの検証済みドメインを選択します。
- サブスクリプション
- リソース グループ
- メール サービス
- 検証済みドメイン
Note
接続できるドメインは、同じ地理的な場所内のものだけです。 リソース作成時に選択した通信リソースとメール通信リソースのデータの場所が、同じ地理的な場所内にあることを確認してください。
Note
1 つの通信サービス リソースに対して、最大 100 個のカスタム ドメインをリンクできるようになっています。 通信サービス リソースは、これらのカスタム ドメインで構成されているすべてのメール送信者アドレスにアクセスできます。 リンクできるのは、検証済みカスタム ドメインだけです。
Communication Service リソースからメール ドメインを接続解除する
前提条件
- アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成できます。
- ドメインをプロビジョニングする準備ができている Azure メール通信サービス リソース。 メール通信リソースの作成を開始します。
- Azure マネージド ドメインまたはカスタム ドメインがプロビジョニング済みで電子メール送信の準備ができていること。 このドメインは、Communication Service リソースへのリンクを試行する前に、完全に検証する必要があります。
- Azure Communication Services のリソース。 Communication Services リソースを作成します。
メール ドメインを Communication Service リソースに接続する
サンプル要求の {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}"]
}
}
Communication Service リソースからメール ドメインを接続解除する
サンプル要求の {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": []
}
}
前提条件
- アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成できます。
- ドメインをプロビジョニングする準備ができている Azure メール通信サービス リソース。 メール通信リソースの作成を開始します。
- Azure マネージド ドメインまたはカスタム ドメインがプロビジョニング済みで電子メール送信の準備ができていること。 このドメインは、Communication Service リソースへのリンクを試行する前に、完全に検証する必要があります。
- Azure Communication Services のリソース。 Communication Services リソースを作成します。
- 認証用のサービス プリンシパルを使用します。 Microsoft Entra アプリケーションのクライアント ID、テナント ID、クライアント シークレットの値を次の環境変数
AZURE_CLIENT_ID
、AZURE_TENANT_ID
、AZURE_CLIENT_SECRET
として設定します。
必要なパッケージをインストールする
dotnet add package Azure.ResourceManager.Communication
管理クライアントを初期化する
環境変数 AZURE_SUBSCRIPTION_ID
には、ドメインとメール リソースが含まれるサブスクリプションのサブスクリプション 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());
メール ドメインを Communication Service リソースに接続する
サンプル コードの <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);
Communication Service リソースからメール ドメインを接続解除する
サンプル コードの <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();
patch.LinkedDomains.Clear();
CommunicationServiceResource result = await communicationServiceResource.UpdateAsync(patch);
前提条件
- アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成できます。
- ドメインをプロビジョニングする準備ができている Azure メール通信サービス リソース。 メール通信リソースの作成を開始します。
- Azure マネージド ドメインまたはカスタム ドメインがプロビジョニング済みで電子メール送信の準備ができていること。 このドメインは、Communication Service リソースへのリンクを試行する前に、完全に検証する必要があります。
- Azure Communication Services のリソース。 Communication Services リソースを作成します。
- 認証用のサービス プリンシパルを使用します。 Microsoft Entra アプリケーションのクライアント ID、テナント ID、クライアント シークレットの値を次の環境変数
AZURE_CLIENT_ID
、AZURE_TENANT_ID
、AZURE_CLIENT_SECRET
として設定します。
必要なパッケージをインストールする
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);
メール ドメインを Communication Service リソースに接続する
サンプル コードの <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
);
Communication Service リソースからメール ドメインを接続解除する
サンプル コードの <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
);
前提条件
- アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成します。
- ドメインをプロビジョニングする準備ができている Azure メール通信サービス リソース。 メール通信リソースの作成を開始します。
- Azure マネージド ドメインまたはカスタム ドメインがプロビジョニング済みで電子メール送信の準備ができていること。 このドメインは、Communication Service リソースへのリンクを試行する前に、完全に検証する必要があります。
- Azure Communication Services のリソース。 Communication Services リソースを作成します。
- 認証用のサービス プリンシパルを使用します。 Microsoft Entra アプリケーションのクライアント ID、テナント ID、クライアント シークレットの値を次の環境変数
AZURE_CLIENT_ID
、AZURE_TENANT_ID
、AZURE_CLIENT_SECRET
として設定します。
必要なパッケージをインストールする
次の依存関係を pom.xml
に追加します。
<dependency>
<groupId>com.azure.resourcemanager</groupId>
<artifactId>azure-resourcemanager-communication</artifactId>
<version>2.0.0</version>
</dependency>
管理クライアントを初期化する
環境変数 AZURE_SUBSCRIPTION_ID
には、ドメインとメール リソースが含まれるサブスクリプションのサブスクリプション ID を設定します。 コード サンプルを実行して、管理クライアントを初期化します。
AzureProfile profile = new AzureProfile(AzureEnvironment.AZURE);
TokenCredential credential = new DefaultAzureCredentialBuilder()
.authorityHost(profile.getEnvironment().getActiveDirectoryEndpoint())
.build();
CommunicationManager manager = CommunicationManager
.authenticate(credential, profile);
メール ドメインを Communication Service リソースに接続する
サンプル コードの <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();
Communication Service リソースからメール ドメインを接続解除する
サンプル コードの <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();
前提条件
- アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成します。
- ドメインをプロビジョニングする準備ができている Azure メール通信サービス リソース。 メール通信リソースの作成を開始します。
- Azure マネージド ドメインまたはカスタム ドメインがプロビジョニング済みで電子メール送信の準備ができていること。 このドメインは、Communication Service リソースへのリンクを試行する前に、完全に検証する必要があります。
- Azure Communication Services のリソース。 Communication Services リソースを作成します。
- 認証用のサービス プリンシパルを使用します。 Microsoft Entra アプリケーションのクライアント ID、テナント ID、クライアント シークレットの値を次の環境変数
AZURE_CLIENT_ID
、AZURE_TENANT_ID
、AZURE_CLIENT_SECRET
として設定します。
必要なパッケージをインストールする
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)
メール ドメインを Communication Service リソースに接続する
サンプル コードの <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()
Communication Service リソースからメール ドメインを接続解除する
サンプル コードの <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()
次の手順
関連記事
- メール クライアント ライブラリについて理解する