iOS の OneDrive アプリでサインインしようとすると不明なエラーが発生する (未解決)
iOS の OneDrive アプリで組織のアカウントを使用してサインインを試みると、認証後「サインインできませんでした」(英語: We Couldn't Sign You In) というメッセージが表示されサインインできない。
状況
- Microsoft 365 (Entra ID) アカウントでの認証は問題ない
- テナント内のすべてのアカウントが同じ症状となる
- 有効なライセンスは付与済み
- Web や Windows クライアントからの OneDrive の利用は問題ない
- MDM や特別なポリシーは設定していない
- OneDrive のキャッシュ、アカウントクリア、再インストールでも変わらない
- Safari のキャッシュはクリアしても効果なし
状況証拠1: 認証後の API 呼び出しでエラー
API 呼び出しをキャプチャすると各種認証は問題なく通っているが、OneDrive 関連の下記の API 呼び出しでエラーとなっている(ステータスコードは200)。
https://odc.officeapps.live.com/odc/servicemanager/userconnected
BecSvcUnknownException
The call to MsGraph, which returns OrgId user's OneDrive for Business (aka MySite) and TeamSite data, encountered an unexpected error.
状況証拠2: Entra ID の監査ログに失敗ログ
Entra ID の監査ログを見ると以下の内容の失敗ログが定期的の残っている。
- サービス: Core Directory
- カテゴリ: ApplicationManagement
- アクティビティの種類: Add service principal
- 状態の理由: Microsoft.Online.Workflows.SpnValidationException
- 表示名: Microsoft Azure AD Internal - Jit Provisioning
- AppId: 9e4a5442-a5c9-4f6f-b03f-5b9fcaaf24b1
このログの「変更されたプロパティ」を確認すると ServicePrincipalName には
["https://odc.officeapps.live.com","https://odc.edog.officeapps.live.com","https://api.office.net","https://discovery.api.office.net","9e4a5442-a5c9-4f6f-b03f-5b9fcaaf24b1","9e4a5442-a5c9-4f6f-b03f-5b9fcaaf24b1/odc.officeapps.live.com"]
と入っていて Office 関連の何かが SpnValidationException
つまり SPN (Service Principal Name) 検証で失敗したっぽいということがうかがえる。
この AppId 9e4a5442-a5c9-4f6f-b03f-5b9fcaaf24b1
は変更されたプロパティの DisplayName にもある通り OfficeServicesManager
というアプリケーション。
OfficeServicesManager
が存在しない
状況証拠3: アプリケーション エンタープライズアプリケーションを確認すると OfficeServicesManager
あるいは Application ID が 9e4a5442-a5c9-4f6f-b03f-5b9fcaaf24b1
のものが存在しない。
問題なくサインインできるテナントでは OfficeServicesManager
が存在している。これは Microsoft (1st-party) のアプリケーションなので削除や追加は普通の手段では行えない。追加もオンラインの Office 関連のサービスを触ったときに初回で自動的に作成されるものだと思われる。
これがないからエラーになっているのではないか説。
新しくテナントを作って確認したところ、OneDrive から Word などを触っているうちにアプリケーション OfficeServicesManager
が作成されたので本来は自動で作成されるのが正しい模様。