付録4 Universal Connect/XでOAuth2.0を利用するための準備
Universal Connect/XでOAuth2.0を利用するためには、次の準備が必要です。
Microsoft AzureでUniversal Connect/Xを登録
Microsoft AzureにUniversal Connect/Xのアプリケーションを登録します。
注意
アプリケーションのクライアントシークレットには、有効期限があります。そのため、定期的にクライアントシークレットを再発行し、Universal Connect/Xの設定に反映してください。
参考
具体的な操作については、Microsoft Azureの画面に表示された指示に従ってください。
Azure portalにログインします。
左上のハンバーガーメニューをクリックし、[Azure Active Directory]をクリックします。
左の[アプリの登録]をクリックします。
上の[新規登録]をクリックします。
アプリケーションに任意の名前を入力し、「この組織ディレクトリのみに含まれるアカウント」を選択して、[登録]ボタンをクリックします([リダイレクト URI]の指定は不要です)。
登録されたアプリの名前をクリックします。
表示された画面で、次の値をテキストエディターなどにコピーしておきます。
アプリケーション(クライアント)ID
ディレクトリ(テナント)ID
左の[証明書とシークレット]をクリックし、[新しいクライアント シークレット]をクリックします。
期間を選択し、[追加]ボタンをクリックします。
表示された画面で、クライアントシークレットの値をテキストエディターなどにコピーしておきます。
左の[APIのアクセス許可]をクリックし、[アクセス許可の追加]をクリックします。
[API アクセス許可の要求]画面で[所属する組織で使用しているAPI]タブをクリックし、一覧から「Office 365 Exchange Online」を探してクリックします。
[アプリケーションに必要なアクセス許可の種類]で[アプリケーションの許可]を選択します。
[アクセス許可を選択する]で、「SMTP.SendAsApp」のチェックボックスをオンにして、[アクセス許可の追加]ボタンをクリックします。
[構成されたアクセス許可]画面で、[<ユーザー名>に管理者の同意を与えます]をクリックします。
以上で、アプリケーションの登録は完了です。
Exchange Onlineにサービスプリンシパルを登録
「Microsoft AzureでUniversal Connect/Xを登録」で登録したアプリケーションのサービスプリンシパルを、Exchange Onlineに登録します。
参考
具体的な操作については、Microsoft Azureの画面に表示された指示に従ってください。
Azure portalにログインします。
左の[エンタープライズアプリケーション]をクリックします。
[すべてのアプリケーション]画面の一覧で、「Microsoft AzureでUniversal Connect/Xを登録」で登録したアプリケーションをクリックします。
[プロパティ]画面の[オブジェクト ID]の値をテキストエディターなどにコピーしておきます。
注意
「Microsoft AzureでUniversal Connect/Xを登録」で表示されるオブジェクト IDとは、値が異なります。
Universal Connect/Xサーバー上でPowerShellを起動します。
次のコマンドを実行し、ExchangeOnlineManagementをインストールします。
Install-Module -Name ExchangeOnlineManagement Import-module ExchangeOnlineManagement
次のコマンドを実行し、Exchange Onlineに接続します。
「tenantId」には、「Microsoft AzureでUniversal Connect/Xを登録」で追加したアプリケーションの[アプリケーション(クライアント)ID]の値を指定します。
Connect-ExchangeOnline -Organization <tenantId>
次のコマンドを実行し、アプリケーションのサービスプリンシパルをExchange Onlineに登録します。
「APPLICATION_ID」には「Microsoft AzureでUniversal Connect/Xを登録」で追加したアプリケーションの[アプリケーション(クライアント)ID]の値を、「OBJECT_ID」には、手順4でメモした[オブジェクト ID]の値を指定します。
New-ServicePrincipal -AppId <APPLICATION_ID> -ServiceId <OBJECT_ID>
次のコマンドを実行し、メール送信元のメールボックスへのアクセス権をアプリケーションのサービスプリンシパルに付与します。
「ユーザー名」には認証に使用するユーザー名(動作設定の[メール設定]-[メールサーバー]-[SMTP サーバー]-[SMTP 認証を使う]-[ユーザー名]と同じ)、「APPLICATION_ID」には、「Microsoft AzureでUniversal Connect/Xを登録」で追加したアプリケーションの[アプリケーション(クライアント)ID]の値を指定します。
Add-MailboxPermission -Identity "<ユーザー名>" -User <APPLICATION_ID> -AccessRights FullAccess
以上で、サービスプリンシパルの登録は完了です。
Universal Connect/Xのプロパティファイルを編集
Universal Connect/Xのプロパティファイルに、「Microsoft AzureでUniversal Connect/Xを登録」で登録したアプリケーションのIDを記述します。
Universal Connect/Xサーバー上の、次のファイルをテキストエディターで開きます。
C:/SVFJP/UniConX/conf/tokenproviders.properties
キー「smtp.office365.com.TENANT_ID」に、「Microsoft AzureでUniversal Connect/Xを登録」で追加したアプリケーションの[アプリケーション(クライアント)ID]の値を指定します。
例 1. 指定例smtp.office365.com.TENANT_ID=6a08c638-0772-4f0f-9242-f690bdf6033f
UCX Server Serviceを再起動します。
以上で、プロパティファイルの編集は完了です。
ドメインへのアクセスを許可
Universal Connect/Xサーバーから次のドメインへのアクセス許可(ファイアウォールのポート開放など)をしてください。
ドメイン | プロトコル |
---|---|
login.microsoftonline.com | https/TCP |
smtp.office365.com | 587/TCP |