次の方法で共有


クイックスタート: SMTP を使用してメールを送信するための認証資格情報を作成する方法

このクイック スタートでは、Entra アプリケーションで、SMTP を使用して Azure Communication Services を使ってメールを送信するための認証資格情報を作成する方法について説明します。

前提条件

SMTP 用 Azure Communication Services リソースへのアクセス権を持つ Microsoft Entra アプリケーションの使用

SMTP プロトコルを使用してメールを送信するアプリを構築するアプリケーション開発者は、セキュリティで保護された先進認証を実装する必要があります。 Azure Communication Services は、Entra アプリケーション サービス プリンシパルを利用してこれを行います。 Azure Communication Services リソースと Entra アプリケーション サービス プリンシパルの情報を組み合わせることで、SMTP サービスはユーザーに代わって Entra との認証を行い、セキュリティで保護されたシームレスなメール送信を保証します。

Entra アプリケーションのカスタム メール ロールの作成

Entra アプリケーションには、Azure Communication Services リソースに対する Microsoft.Communication/CommunicationServices/ReadMicrosoft.Communication/EmailServices/write アクセス許可の両方を持つロールが割り当てられている必要があります。 これを行うには、共同作成者ロールを使用するか、カスタム役割を作成します。 既存のロールを複製してカスタム役割を作成するには、次の手順に従います。

  1. ポータルでカスタム役割を作成するには、最初にサブスクリプション、リソース グループ、または Azure Communication Service リソースに移動し、カスタム ロールを割り当て可能にしてから、アクセス制御 (IAM) を開いてください。 アクセス制御を示すスクリーンショット。
  2. [ロール] タブをクリックして、すべての組み込みおよびカスタム ロールの一覧を表示します。
  3. 閲覧者ロールなど、複製するロールを検索してください。
  4. 行の末尾にある省略記号 (...) をクリックし、[複製] をクリックしてください。 ロールの複製を示すスクリーンショット。
  5. [基本] タブをクリックし、新しいロールに名前を付けてください。 新しいカスタム ロールの名前の作成を示すスクリーンショット。
  6. [アクセス許可] タブをクリックし、[アクセス許可の追加] をクリックしてください。 Microsoft.Communication を検索し、[Azure Communication Services] を選択してください新しいカスタム ロールのアクセス許可の追加を示すスクリーンショット。
  7. [Microsoft.Communication/CommunicationServicesRead][Microsoft.Communication/EmailServicesWrite]* アクセス許可を選択してください。 追加をクリックします。 Azure Communication Services のアクセス許可の追加を示すスクリーンショット。
  8. 新しい役割のアクセス許可を確認してください。 [確認と作成] をクリックし、次のページで [作成] をクリックしてください。 新しいカスタム ロールの確認を示すスクリーンショット。

Entra アプリケーションに Azure Communication Services リソースの役割を割り当てると、新しいカスタム役割が使用できるようになります。 カスタム役割の作成の詳細については、「Azure portal を使用した Azure カスタム役割の作成または更新」を参照してください

Entra アプリケーションへのカスタム メール ロールの割り当て

  1. ポータルで、カスタム役割を割り当て可能にするサブスクリプション、リソース グループ、または Azure Communication Service リソースに移動し、アクセス制御 (IAM)いてください。 アクセス制御を示すスクリーンショット。
  2. [+ 追加] をクリックし、[ロールの割り当ての追加] を選択します [ロールの割り当ての追加] の選択を示すスクリーンショット。
  3. [ロール] タブで、SMTP を使用してメールを送信するために作成されたカスタム役割を選択し、[次へ] をクリックしてください。 カスタム ロールの選択を示すスクリーンショット。
  4. [メンバー] タブで、[ユーザー、グループ、またはサービス プリンシパル] を選んでから、[メンバーの選択] を選んでください。 [メンバーを選択する] の選択を示すスクリーンショット。
  5. 検索ボックスを使用して、認証に使用する Entra アプリケーションを見つけて選択してください。 [選択] をクリックします。 Entra アプリケーションの選択を示すスクリーンショット。
  6. 選択内容を確認したら、[次へ] をクリックしてください。 割り当ての確認を示すスクリーンショット。
  7. スコープとメンバーを確認したら、[確認と割り当て] をクリックしてください。 カスタム ロールの割り当てを示すスクリーンショット。

Entra アプリケーション情報から SMTP 資格情報を作成する

SMTP 認証ユーザー名

Azure Communication Services では、Entra アプリケーションの資格情報を SMTP のユーザー名とパスワードとして使用できます。 ユーザー名は次の 3 つの部分で構成され、パイプ区切りまたはドット区切りにできます。

  1. Azure Communication Services リソースの名前。 リソース名の検索を示すスクリーンショット。
  2. Entra アプリケーション ID。 Entra アプリケーション ID の検索を示すスクリーンショット。
  3. Entra テナント ID。 Entra テナント ID の検索を示すスクリーンショット。

ドット区切り形式:

username: <Azure Communication Services Resource name>.<Entra Application ID>.<Entra Tenant ID>

パイプ区切り形式:

username: <Azure Communication Services Resource name>|<Entra Application ID>|<Entra Tenant ID>

SMTP 認証パスワード

パスワードは、Entra アプリケーションのクライアント シークレットの 1 つです。 Entra クライアント シークレットの検索を示すスクリーンショット。

SMTP AUTH クライアント送信の要件

  • 認証: Entra アプリケーションの詳細を認証情報として使用し、ユーザー名とパスワードによる認証がサポートされています。 Azure Communication Services SMTP サービスは、Entra アプリケーションの詳細を使用してユーザーに代わってアクセス トークンを取得し、そのトークンを使用してメールを送信します。 Entra トークンはキャッシュされないため、Entra アプリケーション クライアント シークレットを変更するか、Azure Communication Services リソースのアクセス制御を変更すると、すぐにアクセスを取り消すことができます。
  • Azure Communication Services: 接続された Azure Communication Email リソースとドメインを持つ Azure Communication Services リソースが必要です。
  • トランスポート層セキュリティ (TLS): お使いのデバイスで TLS バージョン 1.2 以上を使用できる必要があります。
  • ポート: ポート 587 が必要であり、ネットワークでブロック解除する必要があります。 ネットワーク ファイアウォールまたは ISP によっては、メール サーバーがメールの送信に使用しているという理由でポートがブロックされています。
  • DNS: DNS名 smtp.azurecomm.net を使用します。 IP アドレスはサポートされていないので、Microsoft 365 または Office 365 サーバーには IP アドレスを使用しないでください。

SMTP AUTH クライアントの送信を設定する方法

ガイドの指示に従って、次の設定をデバイスまたはアプリケーションで直接入力してください (この記事とは異なる用語が使われている場合があります)。 シナリオが SMTP AUTH クライアントの送信の前提条件と一致する場合、これらの設定で、SMTP コマンドを使用してデバイスまたはアプリケーションからメールを送信できます。

デバイスまたはアプリケーションの設定
サーバー/スマート ホスト smtp.azurecomm.net
ポート ポート 587
TLS / StartTLS 有効
ユーザー名とパスワード Azure Communication Services リソースにアクセスできるアプリケーションから Entra アプリケーションの資格情報を入力してください