kazuakix の日記

Windows Phone とか好きです

Office 365 の多要素認証環境で Outlook を接続する方法

 Facebook の Office 365 コミュニティで教えてもらったネタなのですが、最近は Office 365 で多要素認証 (MFA) を設定している環境でも、Outlook 用のアプリケーションパスワードなしで接続できるそうです。但し、古いテナントでは設定の変更が必要になります。


Exchange Online の先進認証 (modern authentication) 設定を変更する

 以下のページに手順がまとまっています。


1. PowerShell で Exchange Online に接続 *1

$exchangeSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell -Credential $credential -Authentication "Basic" -AllowRedirection
Import-PSSession $exchangeSession

2. 先進認証設定を確認

 以下のコマンドで設定を確認することができます。

Get-OrganizationConfig | Format-Table -Auto Name,OAuth*

 うちのテナントでは 無効 になっているようです。

PS C:\> Get-OrganizationConfig | Format-Table -Auto Name,OAuth*

Name                   OAuth2ClientProfileEnabled
----                   --------------------------
XXXXXX.onmicrosoft.com                      False

f:id:kazuakix:20180415221312p:plain


この状態で アプリケーションパスワード を消して、Outlook を起動すると、当然のようにパスワードの入力を求められます。

f:id:kazuakix:20180415220249p:plain

3. 先進認証設定を変更

 以下のコマンドで設定を変更します、

Set-OrganizationConfig -OAuth2ClientProfileEnabled $true

 この状態で Outlook を起動すると、無事に接続できる事が確認できます。これで都度、利用者にアプリケーションパスワードを作成してもらわなくてもよくなりますね。
 

Skype for Business も設定しておく

 冒頭のページには、Exchange Online で先進認証の状態を SKype for Business と同期する方法についても紹介されていました。

1. PowerShell で Skype for Business に接続 *2

$credential = Get-Credential
$session = New-CsOnlineSession -Credential $credential
Import-PSSession $session

2.同期設定の確認

Get-CsOAuthConfiguration

ClientAdalAuthOverride の項目が NoOverride になっていますね。

f:id:kazuakix:20180415221837p:plain

3.同期設定の変更

 以下のコマンドで同期設定を許可します。

Set-CsOAuthConfiguration -ClientAdalAuthOverride Allowed 

f:id:kazuakix:20180415222137p:plain
 
 ある程度前から契約していて、 Outlook や Skype for Business でアプリケーションパスワードを使っているテナントの方は試してみてください。

*1:Exchange Online への接続設定はコチラ

*2:Skype for Business への接続設定はこの辺