Exchange Online で認証済みクライアントの SMTP 送信 (SMTP AUTH) を有効または無効にする
[アーティクル] 2024/01/23
16 人の共同作成者
フィードバック
この記事の内容
組織で SMTP AUTH を無効にする
特定のメールボックスに対して SMTP AUTH を有効にする
SMTP クライアントの電子メール送信 (認証された SMTP 送信 または SMTP AUTH とも呼ばれます) は、Office 365と Microsoft 365 の次のシナリオで使用されます。
POP3 と IMAP4 クライアントのシナリオで使用されます。 これらのプロトコルでは、クライアントに対してメール メッセージの受信 のみを許可します。そのため、認証された SMTP を使用してメール メッセージを送信 する必要があります。
メール メッセージを生成して送信するアプリケーション、レポート サーバー、および多機能デバイス。
SMTP AUTH プロトコルは、通常 TCP ポート 587 で SMTP クライアントの電子メール送信に使用されます。 SMTP AUTH では、基本認証に加えて、OAuth を介した先進認証 (モダン認証) もサポートされています。 詳細については、「OAuth を使用して IMAP、POP、SMTP 接続を認証する 」を参照してください。
Office 365 または Microsoft 365 の Exchange Online メールボックスに接続する、ほぼすべての最新メール クライアント (Outlook、Outlook on the web、iOS メール、iOS および Android 用の Outlook など) では、メール メッセージの送信に SMTP AUTH を使用しません。
そのため、Exchange Online organizationで SMTP AUTH を無効にし、引き続き必要なアカウント (メールボックス) に対してのみ有効にすることを強くお勧めします。 これを行うのに役立つ 2 つの設定があります。
SMTP AUTH を無効にする (または有効にする) 組織全体の設定。
テナント全体の設定を上書きするメールボックスごとの設定。
これらの設定は、Exchange Online (Office 365 または Microsoft 365) でホストされているメールボックスにのみ適用されます。
注意
organizationでセキュリティの既定値 が有効になっている場合、EXCHANGE ONLINEで SMTP AUTH は既に無効になっています。 SMTP AUTH を使用するには、 セキュリティの既定値 を無効にする必要があります。 詳細については、「Microsoft Entra IDのセキュリティの既定値 」を参照してください。
認証ポリシーで SMTP の基本認証が無効になっている場合、この記事で説明する設定を有効にしても、クライアントで SMTP AUTH プロトコルを使用することはできません。 詳細については、「Exchange Online で基本認証を無効にする 」を参照してください。
EAC でORGANIZATIONに対して SMTP AUTH をグローバルに無効に (または有効にする) か、Exchange Online PowerShell を使用します。
EAC のorganizationで SMTP AUTH をグローバルに無効にするには、[設定] の [メール フロー の設定] ページに移動し、organizationの [SMTP AUTH プロトコルを無効にする ] というラベルの設定を切り替えます。
PowerShell を使用してorganizationで SMTP AUTH をグローバルに無効にするには、次のコマンドを実行します。
Set-TransportConfig -SmtpClientAuthenticationDisabled $true
注意
SMTP AUTH が既に無効になっている場合に有効にするには、値 $false
を使用します。
組織で SMTP AUTH をグローバルに無効にしたことを確認するには、次のコマンドを実行し、SmtpClientAuthenticationDisabled プロパティの値が True
であることを確認します。
Get-TransportConfig | Format-List SmtpClientAuthenticationDisabled
特定のメールボックスに対して SMTP AUTH を有効にする
SMTP AUTH を有効 (または無効にする) メールボックスごとの設定は、Microsoft 365 管理センターまたは Exchange Online PowerShell で使用できます。
Microsoft 365 管理センターを使用して特定のメールボックスで SMTP AUTH を有効または無効にする
Microsoft 365 管理センター を開き、[ユーザー] [アクティブ なユーザー ] > に移動します。
ユーザーを選択し、表示されるポップアップで [メール] を選択 します 。
[Email アプリ ] セクションで、[メール アプリの管理 ] を選択します。
[認証済み SMTP ] の設定を確認します (オフ = 無効、オン = 有効)。
完了したら、[ 変更の保存 ] を選択します。
PowerShell Exchange Online を使用して、特定のメールボックスで SMTP AUTH を有効または無効にする
次の構文を使用してください。
Set-CASMailbox -Identity <MailboxIdentity> -SmtpClientAuthenticationDisabled <$true | $false | $null>
この値 $null
は、メールボックスの設定が組織のグローバル設定によって制御されることを示します。 組織の設定を上書き するには、値 $true
(無効) または $false
(有効) を使用します。 メールボックスの設定は、組織の設定よりも優先されます。
この例では、メールボックス sean@contoso.com
に対して SMTP AUTH を有効にします。
Set-CASMailbox -Identity sean@contoso.com -SmtpClientAuthenticationDisabled $false
この例では、メールボックス chris@contoso.com
の SMTP AUTH を無効にします。
Set-CASMailbox -Identity chris@contoso.com -SmtpClientAuthenticationDisabled $true
PowerShell Exchange Online を使用して、複数のメールボックスで SMTP AUTH を有効または無効にする
テキスト ファイルを使用してメールボックスを識別します。 スペースを含まない値 (エイリアス、メール アドレス、アカウント名など) が最適です。 テキスト ファイルには、次のようにメールボックスを各行に 1 つ含める必要があります。
akol@contoso.com
tjohnston@contoso.com
kakers@contoso.com
構文では、次の 2 つのコマンド (1 つはメールボックスを識別し、もう 1 つはそれらのメールボックスで SMTP AUTH を有効にする) を使用します。
$<VariableName> = Get-Content "<text file>"
$<VariableName> | foreach {Set-CASMailbox -Identity $_ -SmtpClientAuthenticationDisabled <$true | $false | $null>}
この例では、ファイル C:\My Documents\Allow SMTP AUTH.txt で指定したメールボックスに対して SMTP AUTH を有効にします。
$Allow = Get-Content "C:\My Documents\Allow SMTP AUTH.txt"
$Allow | foreach {Set-CASMailbox -Identity $_ -SmtpClientAuthenticationDisabled $false}
注意
メールボックスの SMTP AUTH を無効にするには、値 $true
を使用します。 コントロールを組織の設定に戻す場合は、値 $null
を使用します。
特定のメールボックスで SMTP AUTH が有効または無効になっていることを確認するには、次の手順を実行します。
Microsoft 365 管理センター内の個々のメールボックス : [ユーザー >] [アクティブ なユーザー >] に移動し、[メール ] を選択>して [メール > アプリの管理] を選択し、[認証済み SMTP ] の値を確認します (オン = 有効、オフ = 無効)。
Exchange Online PowerShell の個々のメールボックス : <MailboxIdentity>
をメールボックスの名前、エイリアス、メール アドレス、またはアカウント名に置き換え、次のコマンドを実行し、SmtpClientAuthenticationDisabled プロパティの値を確認します (False
= 有効、True
= 無効、空白 = 組織設定を使用する)。
Get-CASMailbox -Identity <MailboxIdentity> | Format-List SmtpClientAuthenticationDisabled
SMTP AUTH が無効になっているすべてのメールボックス : 次のコマンドを実行します。
$Users = Get-CASMailbox -ResultSize unlimited
$Users | where {$_.SmtpClientAuthenticationDisabled -eq $true}
SMTP AUTH が有効になっているすべてのメールボックス : 次のコマンドを実行します。
$Users = Get-CASMailbox -ResultSize unlimited
$Users | where {$_.SmtpClientAuthenticationDisabled -eq $false}
SMTP AUTH が組織設定によって制御されるすべてのメールボックス : 次のコマンドを実行します。
$Users = Get-CASMailbox -ResultSize unlimited
$Users | where {$_.SmtpClientAuthenticationDisabled -eq $null}