現象
有効なユーザー証明書を持つ Apple iOS デバイスのフェデレーション ユーザーは、Microsoft Entra ID に対して証明書ベースの認証 (CBA) を実行できないことを検出します。 ただし、Android および Windows デバイス上のフェデレーション ユーザーは、CBA を使用して正常に認証できます。 同じ iOS ユーザーがユーザー名とパスワードを使用して認証しても問題は発生しません。
iOS で ADAL 対応の Office アプリlications にサインインするときに認証できない iOS ユーザーの一般的なエクスペリエンスを次に示します。
- ユーザーは、Office アプリセットアップ エクスペリエンスについて説明します。 [Office365] サインイン ページで、[サインイン] を選択します。
- ADAL サインイン ページが表示され、ユーザーはフェデレーション メール アドレスを入力し、[次へ] を選択します。
- ADAL サインイン プロセスは、タイムアウトするまで空白のページでハングし、"アカウントに問題があります。 後でもう一度やり直してください" というエラーが表示されます。 このページには、[OK] をタップするオプションが含まれています。
- ユーザーが [OK] をタップすると、上部に [戻る] をタップするオプションと同じ空白のサインイン ページに配置されます。
- [戻る] をタップすると、ユーザーが ADAL サインイン ページに戻り、プロセスがすべて開始されます。ユーザーはフェデレーションメール アドレスの入力を求められた後、[次へ] を選択します。
- [OK] をタップすると、空のサインイン画面に戻り、ユーザーは UserPrincipalName を入力してプロセスを繰り返すことができます。
要素としてのOffice アプリの適用を排除するには、「詳細情報」セクションの手順に従って、iOS 環境のフェデレーション ユーザーが Safari ブラウザーで証明書ベースの認証をテストすることをお勧めします。 Safari ブラウザーから https://portal.office.com に対して認証できない iOS ユーザーの一般的なエクスペリエンスは次のとおりです。
ユーザーは、X.509 証明書リンクを使用してサインインを選択した後、ユーザー証明書の使用を承認するように求められません。
フェデレーション ユーザーは、応答しない STS サインイン ページに移動するか、既定の STS サインイン ページに進みます。ここで、次のようにメッセージが表示されます。
認証に使用する証明書を選択します。 操作を取り消した場合は、ブラウザーを閉じてからもう一度やり直してください。
注 AD FS で他の認証方法が有効になっている場合、ユーザーには "他のオプションでサインインする" というリンクも表示されます。このリンクを選択すると、STS サインイン ページに戻ります。
どちらのエクスペリエンスも、次のエラーで失敗します。
サーバーが応答を停止したため、Safari でページを開けませんでした。
原因
MDM ポリシーが SCEP プロファイルと共にルート証明書のみを Apple デバイスにプッシュすると、発行元の下位 CA 証明書が期待どおりにデバイスによって取得されないため、証明書チェーンは不完全です。
ユーザー証明書の AIA パスに発行元の下位 CA の *.crt ファイルを指す有効な URL がある場合でも、iOS デバイスは発行元 CA から .crt ファイルを正しく取得しません。
解決方法
お客様が Intune を使用してデバイスを管理している場合は、中間証明機関の *を指す iOS の信頼されたルート証明書の新しい構成ポリシーを作成するようお勧めします。CER ファイル。 次に、デバイスでポータル サイトを開き、ポリシーを更新するようアドバイスします。 これで接続が成功します。
その他の情報
ライトニング ケーブルを使用して iPad に接続されている OS X クライアントから "Apple Configurator 2" トレースを取得する場合、トレース ログは次の例のようになります。
Nov 2 15:53:49 CSSs-iPad MobileSafari(Accounts)[618] <Notice>: __51-[ACRemoteAccountStoreSession _configureConnection]_block_invoke.62 (57) "The connection to ACDAccountStore was invalidated."
Nov 2 15:53:49 CSSs-iPad MobileSafari(ProtectedCloudStorage)[618] <Notice>: KeychainGetStatus(PCSiCloudServiceMarkerName): keychain: -25300
Nov 2 15:53:49 CSSs-iPad MobileSafari(ProtectedCloudStorage)[618] <Notice>: KeychainGetStatus(PCSiCloudServiceMarkerName): status: off
Nov 2 15:53:49 CSSs-iPad accountsd(AccountsDaemon)[216] <Notice>: -[ACDServer listener:shouldAcceptNewConnection:] (320) "<private> (<private>) received"
Nov 2 15:53:49 CSSs-iPad MobileSafari(ProtectedCloudStorage)[618] <Notice>: PCSIdentitySetCreate: CloudKit { kPCSSetupDSID = "<<VALUE>>";
}
Nov 2 15:53:49 CSSs-iPad MobileSafari(Accounts)[618] <Notice>: __51-[ACRemoteAccountStoreSession _configureConnection]_block_invoke.62 (57) "The connection to ACDAccountStore was invalidated."
Nov 2 15:53:49 CSSs-iPad MobileSafari(ProtectedCloudStorage)[618] <Notice>: KeychainGetStatus(PCSiCloudServiceMarkerName): keychain: -25300
Nov 2 15:53:49 CSSs-iPad MobileSafari(ProtectedCloudStorage)[618] <Notice>: KeychainGetStatus(PCSiCloudServiceMarkerName): status: off
Nov 2 15:53:49 CSSs-iPad MobileSafari(ProtectedCloudStorage)[618] <Notice>: PCSIdentitySetCreate: CloudKit { kPCSSetupDSID = "<<VALUE>>";
}
...
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(libsystem_network.dylib)[619] <Info>: nw_connection_endpoint_report [8 sts.<name>.info:49443 in_progress resolver (satisfied)] reported event flow:finish_transport
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(CFNetwork)[619] <Notice>: TIC TCP Conn Cancel [1:0x13dd17990]
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(libsystem_network.dylib)[619] <Info>: nw_endpoint_handler_cancel [1 portal.office.com:443 ready resolver (satisfied)]
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(libsystem_network.dylib)[619] <Info>: nw_endpoint_handler_cancel [1.1 13.107.7.190:443 ready socket-flow (satisfied)]
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(libsystem_network.dylib)[619] <Notice>: __nw_socket_service_writes_block_invoke sendmsg(fd 4, 85 bytes): socket has been closed
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(libsystem_network.dylib)[619] <Info>: nw_endpoint_flow_protocol_disconnected [1.1 13.107.7.190:443 cancelled socket-flow (null)] Output protocol disconnected
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(CFNetwork)[619] <Notice>: TIC TCP Conn Destroyed [1:0x13dd17990]
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(CFNetwork)[619] <Notice>: TIC TLS Event [8:0x13dd4e0c0]: 2, Pending(0)
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(CFNetwork)[619] <Notice>: TIC TLS Event [8:0x13dd4e0c0]: 11, Pending(0)
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(CFNetwork)[619] <Notice>: TIC TLS Event [8:0x13dd4e0c0]: 12, Pending(0)
Nov 2 15:54:33 CSSs-iPad com.apple.WebKit.Networking(CFNetwork)[619] <Notice>: TIC TLS Event [8:0x13dd4e0c0]: 13, Pending(0)
Nov 2 15:54:34 CSSs-iPad securityd[88] <Notice>: items matching issuer parent: Error Domain=NSOSStatusErrorDomain Code=-25300 "no matching items found" UserInfo={NSDescription=no matching items found}