問題の概要
Box for EMMでMicrosoft Entra IDを使用したSSOログイン時、「アプリケーションエラー。 エラー: invalid_client」というエラーメッセージが表示され、ログインできない。
このエラーは複数の原因で起こる可能性があります。 以下のシナリオを確認してください。
シナリオ1: Entra ID UPNがBoxアカウントに登録されていない
発生条件
- [管理コンソール] > [Enterprise設定] > [モバイル] タブで、[Intuneモバイルアプリケーション管理 (Intune MAM) を有効化する] を有効にしている
- Microsoft Entra IDでSSOを構成している
- Box for EMMのバージョン5.34以降を使用している
- Boxアカウントのプライマリメールアドレスもしくは予備メールアドレスに、Microsoft Entra IDのユーザープリンシパル名 (UPN) が含まれていない
根本原因
Microsoft Entra IDの条件付きアクセスへのサポート拡充 (リリースの詳細についてはこちら) に伴い、MAM環境におけるモバイルアプリのログインフローが強化されています。
このため、上記の条件に当てはまる場合、Microsoft Entra IDのUPNがBoxアカウントのプライマリメールアドレスまたは予備メールアドレスのいずれかに登録されている必要があります。
解決方法
BoxアカウントにMicrosoft Entra IDのUPNを予備メールアドレスとして追加してください。
SSO必須モードが無効の場合
ユーザーのアカウント設定から予備メールアドレスを追加できます。 詳細については、https://support.box.com/hc/ja/articles/360044196513-アカウント設定の管理#h_01GKJF7FP5E54W06XSHYK5MG28を参照してください。
SSO必須モードが有効かつ無効化できない場合
Box APIを利用して予備メールアドレスを追加できます。
以下は、Box CLIを使用したコマンド例です。
準備
-
管理対象ドメインの確認
[管理コンソール] > [Enterprise設定] > [カスタム設定] タブ > [ドメイン管理] から、Microsoft Entra IDのUPNのドメインが、管理対象として登録されているかを確認します。
-
Box CLIのセットアップ
詳細については、https://developer.box.com/ja/guides/cli/cli-docs/jwt-cliを参照してください。
アプリアクセスレベルが、App + Enterpriseとなっていることを確認してください。
スコープとして [ユーザーを管理する] が含まれていることを確認してください。
- 対象ユーザーのUser IDおよび追加メールアドレスを準備
手順
- 上記の準備が完了していることを確認します。
- 対象となるメールアドレスのドメインが管理対象ドメインとして登録されておらず、ユーザーによるメール検証を不要とする場合は、ドメインを追加し、検証を完了します。
-
以下のコマンドを実行します。 <ユーザーID> に対象ユーザーのユーザーID、<UPNメールアドレス> に追加する予備メールアドレスを記入してください。
box users:email-aliases:add <ユーザーID> <UPNメールアドレス> --confirm
「--confirm」オプションを使用する場合、追加する予備メールアドレスのドメインがBoxテナントの管理対象ドメインとして登録されている必要があります。
管理対象ドメインとして登録されていない場合は、「--confirm」オプションを使用せず、ユーザーに確認メールから承認してもらう必要があります。
- 対象ユーザーに予備メールアドレスが追加されたことを確認します。
一時的な回避策 (環境により推奨されません)
Box管理コンソールで [Enterprise設定] > [モバイル] > [Intuneモバイルアプリケーション管理 (Intune MAM) を有効化する] オプションを無効にすることで、従来のログインフローを使用できます。
ただし、アプリベースの条件付きアクセスのセキュリティ機能が利用できなくなる可能性があります。
シナリオ2: Entra IDのテナントの不一致
発生条件
- [管理コンソール] > [Enterprise設定] > [モバイル] タブで、[Intuneモバイルアプリケーション管理 (Intune MAM) を有効化する] を有効にしている
- Microsoft Entra IDでSSOを構成している
- 以下のうち1つ以上が該当する:
- 企業で単一のBox Enterpriseに対して複数のIDプロバイダ (IdP) を使用している。および/または
- 企業でブラウザSSOにカスタムのSSO検出/ランディングページを使用している。および/または
- 影響を受けたユーザーが、外部のMicrosoft Entra IDに属するMicrosoftアカウント (ゲストまたは外部ユーザーなど) でサインインしている
- Box for EMMのバージョン5.34以降を使用している
根本原因
Intune MAMが有効になると、Box for EMMはログイン時にMicrosoft Entra IDトークンを検証します。 この検証の一環として、Boxはトークンの発行元 (iss) がBox側の企業のSSO構成に関連付けられたEntraテナントと一致しているかを確認します。
その想定されるEntraテナントは、Boxが管理する企業のSSO構成から決定されます (お客様はこの値を管理コンソールで表示または変更できません)。
ユーザーのトークンを発行したEntraテナントと、Boxが想定するEntraテナントが一致しない場合、発行元の検証は失敗し、Box for EMMログインもエラー: invalid_clientで失敗することがあります。 一般的な例には、以下のものがあります。
- 企業が単一のBox Enterpriseで複数のIdPを使用しているか、カスタムのSSO検出/ランディングページを使用しているため、ユーザーはBox側のSSO構成に関連付けられているものとは別のEntraテナントに対して認証を行うことができる
- ユーザーが、外部のMicrosoft Entra IDのMicrosoftアカウント (ゲストまたは外部ユーザーなど) でサインインしている。 そのアカウントのテナントID (
ISS) が、Box Enterpriseが想定するEntra IDと一致しないため、ログインがブロックされる
注: Intune MAMが有効な場合、Box for EMMは現在、このログインパスに対して単一のEntraテナントを想定します。 Box EnterpriseとBox for EMMログインで使用されるMicrosoft Entra IDは1:1で対応している必要があります。 現時点では、このログインパスでは複数IdPやディスカバリ (IdP選択) ページの設定はサポートされていません。
解決方法
Intune MAMが有効な場合、Box for EMMでは現在、Box Enterpriseとログインで使用されるMicrosoft Entra IDが1:1で対応している必要があります。 ユーザーのトークンを発行するEntraテナントは、Box EnterpriseのSSO構成に関連付けられたEntra IDと一致する必要があります。
- Box for EMM/Intune MAMログインには単一のMicrosoft Entra IDを使用します。 このパスについては複数IdP検出/ランディングページを利用せず、代わりにBoxとEntra IDが1:1対応の構成を使用してください。
- 影響を受けるユーザーは、テナントが想定と異なる外部またはゲストのMicrosoft Entra IDではなく、同じEntraテナントに属するアカウントでサインインする必要があります。
一時的な回避策 (環境により推奨されません)
BoxとEntra IDの構成を1:1対応に移行できない場合は、シナリオ1の一時的な回避策 (環境により推奨されません)を参照してください。
上記の方法で解決しない場合
以下の情報を添えて、Box Supportまでお問い合わせください。
- 事象再現時の動画またはスクリーンショット
- 事象再現日時
- 影響を受けているユーザーのメールアドレス
- Box for EMMのバージョン
- Microsoft Intuneのアプリ構成、保護ポリシー情報が確認できるスクリーンショット
- 条件付きアクセスの有無
- Box Mobileアプリのログ (ログの取得方法については、https://support.box.com/hc/ja/articles/35789233920147-Box-Mobileアプリのログの送信を参照してください。)