証明書ベースの認証を使用した SMTP OAuth2 のクライアント認証情報フローの設定
送信メールの認証に証明書を使用するために OAuth アプリケーションプロファイルを設定します。
始める前に
OAuth プロファイルを設定するための Microsoft Azure アカウントを作成します。
Microsoft Azure Developer アカウントを使用して、次のセットアップ手順を完了します。カスタムアプリケーションを作成および構成する方法については、Microsoft Azure 製品のドキュメントを参照してください。
必要なロール:Microsoft Azure ポータルアドミニストレーターおよびアドミン
手順
-
組織の認証情報を使用して、Microsoft Azure 登録プロファイルにログインします。
詳細については、Microsoft Azure 登録ポータルのドキュメントを参照してください。
-
アプリケーション名、サポートされているアカウントタイプ、およびリダイレクト URL を入力して新しいカスタムアプリケーションを登録し、[登録] を選択します。
注:次の形式でリダイレクト URL を入力します。https://<instance>/oauth_redirect.doアプリケーションの基本情報の概要が表示されます。
-
クライアント ID をテキストファイルにコピーします。
サードパーティ OAuth プロバイダーとして ServiceNow インスタンスでアプリを登録するため、このクライアント ID と次のステップで生成されるシークレット値を使用します。アプリケーションをServiceNowにコネクトするときに、クライアント ID としてアプリケーション ID を使用します。
-
SMTP.SendAsApp 権限を有効にします。
- [Microsoft Azure] で、次に移動します。 管理 > API 権限.
- [権限を追加 (Add a permission)] を選択します。
- Microsoft Office 365 タイルを選択します。
- [アプリケーションの権限 (Application Permissions)] を選択します。
- [権限を選択] フィールドに SMTP.SendAsApp と入力します。
- [SMTP.SendAsApp] チェックボックスをオンにします。
- [権限を追加] を選択します。
- [<組織名> にアドミンの同意を付与する (Grant admin consent for <your organization name>)] を選択し、[はい] を選択して確定します。
-
証明書をアップロードします。
- [Microsoft Azure] で、次に移動します。 管理 > 証明書とシークレット.
- [証明書をアップロード] を選択します。
- 説明、開始日、および有効期限を入力し、証明書をアップロードします。
- クライアント ID とディレクトリ ID をテキストファイルにコピーします。
-
PowerShell を使用して Microsoft Exchange でサービスプリンシパルを登録します。
-
次のコマンドを実行します。
詳細については、「Authenticate SMTP connection using OAuth (OAuth を使用して SMTP 接続を認証する)」を参照してください。Install-Module -Name ExchangeOnlineManagement -allowprerelease Import-module ExchangeOnlineManagement Connect-ExchangeOnline -Organization <tenantId> -
次のコマンドを実行して、Microsoft Entra ID アプリケーションのサービスプリンシパルを登録します。
New-ServicePrincipal -AppId <APPLICATION_ID> -ObjectId <OBJECT_ID>重要:OBJECT_ID値については、次に移動します 概要 > ローカルディレクトリ内の管理対象アプリケーション をクリックし、オブジェクト ID をコピーします。 -
次のコマンドを使用して、ユーザーのメール ID に権限を追加します。
Add-MailboxPermission -Identity "<email_id>" -User <object_id> -AccessRights FullAccess
-
次のコマンドを実行します。
-
移動先 概要 > エンドポイント および OAuth 2.0 トークンエンドポイント (v2) をテキストファイルにコピーします。
JWT プロバイダーを構成するときに、OAuth 2.0 トークンエンドポイント (v2) を使用します。詳細については、「JWT プロバイダーの構成」を参照してください。