原因は「One Drive」ではなくEntra ID側のゲスト招待設定でした!!
こんにちは、管理人です。
今回は、OneDrive / SharePoint の外部共有で少しハマった件をメモしておきます。
ある日、ユーザーからこんな問い合わせがありました。
「OneDriveで、社外の人へファイルを共有できません!」
画面上では、外部ユーザーに共有しようとしたタイミングでエラーになり、共有リンクが取得できない状態です。
最初は「サービス側の一時的な不具合かな?」とか「OneDrive側の外部共有設定かな?」と思ったのですが、調べていくと原因はどうやら Microsoft Entra ID の External Identities、つまり外部コラボレーション設定 にありそうでした。
先に結論
原因はMicrosoftの仕様変更によるものでした。
SharePoint / OneDrive の外部共有処理が Microsoft Entra B2B 側で評価されるようになり、Entra ID のゲスト招待制限が効いた結果、通常ユーザーによる外部共有が失敗していた。
つまり、
- SharePoint / OneDrive側の外部共有設定に起因した問題ではなく
- Entra ID側のゲスト招待ポリシーに引っかかっていた
ということでした。
Microsoft の公式情報でも、SharePoint / OneDrive の外部ユーザー認証は Microsoft Entra B2B と統合され、ゲストの認証と管理は Microsoft Entra B2B 側で提供されると説明されています。
参考:SharePoint と OneDrive と Microsoft Entra B2B の統合 | Microsoft Learn
発生していた現象
ユーザーが OneDrive や SharePoint から社外ユーザーに共有しようとすると、共有リンクの作成に失敗します。
エラーとしては、次のような内容です。
リンクを取得できません。後でもう一度お試しください。詳細:DATA_Sanitized
このメッセージだけを見ると、正直かなり分かりにくいです。
「後でもう一度」と言われると一時的な障害のようにも見えますが、実際には設定に起因した問題でした。
確認した場所
確認したのは、Microsoft Entra 管理センターの次の場所です。
Microsoft Entra 管理センター → External Identities → 外部コラボレーションの設定 → ゲスト招待の設定
今回ポイントになったのは、ゲスト招待の制限 です。
変更前は、通常のメンバーユーザーが自由にゲストを招待できる設定ではなく、かなり制限された状態でした。
具体的には、以下のような設定となっていました。
「特定の管理者ロールに割り当てられているユーザーのみがゲスト ユーザーを招待できる」
この状態だと、通常の社員ユーザーが OneDrive から社外アドレスに共有しようとしても、裏側で必要になるゲスト招待処理が通らなくなっていました。
なお、弊社環境では上記のように「特定の管理者ロールに割り当てられているユーザーのみがゲスト ユーザーを招待できる」という設定になっていましたが、この設定がすべての環境で同じ初期値とは限りません。
Microsoft 365 の契約時期、テナント作成時期、過去の管理者操作、組織のセキュリティ方針などにより、初期設定や現在の設定値が異なる可能性があります。
そのため、現時点で外部共有の問題が発生していない場合でも、念のため Microsoft Entra ID の外部コラボレーション設定を確認しておくことをおすすめします。
ということで、今回は以下の設定に変更しました。
「メンバー アクセス許可を持つゲストを含むメンバー ユーザーと特定の管理者ロールに割り当てられたユーザーがゲスト ユーザーを招待できる」
添付の画面でいうと、赤枠で示した箇所です。
なぜ OneDrive の共有に Entra ID の設定が関係するのか
ここが今回のややこしいところです。
従来だと、OneDrive や SharePoint の共有は SharePoint 管理センター側の外部共有設定を確認する、という感覚で常識だと思っておりました。
もちろん重要な部分です。
ただし、SharePoint / OneDrive が Microsoft Entra B2B と統合されると、外部ユーザーは Microsoft Entra ID のゲストとして扱われます。
そのため、Entra ID 側のアクセス制御や組織リレーションシップ設定の影響を受けるようになります。
特に重要なのがこの点です。
SharePoint と OneDrive の共有は、Microsoft Entra の「メンバーが招待できる」「ゲストが招待できる」といった設定の対象になる。
Entra 側の設定が SharePoint / OneDrive 側より厳しい場合は、Entra 側の設定が優先される。
つまり、SharePoint 側で外部共有を許可していても、Entra ID 側で「通常ユーザーはゲスト招待できません」という状態になっていると、共有処理が失敗する可能性があります。
今回の流れを整理すると
ユーザーが OneDrive から社外アドレスへ共有 ↓SharePoint / OneDrive の外部共有処理が実行される ↓外部ユーザーの認証・招待処理が Microsoft Entra B2B 側で評価される ↓Entra ID の「ゲスト招待の制限」が確認される ↓通常メンバーユーザーによるゲスト招待が許可されていない ↓共有リンク作成に失敗 ↓「リンクを取得できません」「DATA_Sanitized」が表示される
こんな流れだったと考えています。
ではどうしてこうなった?「Microsoftが勝手に設定を変えた」のか?
ここは少し慎重に見た方がよさそうです。
気持ちが悪いので監査ログを確認しましたが、Microsoft やサービス主体がゲスト招待設定そのものを直接変更した明確な証跡は確認できていません。もちろん管理人が変更したわけでもありません。
そのため、現時点では、
Microsoft が勝手に設定値を変えた
というより、
Microsoft 側の仕様変更・ロールアウトにより、もともと存在していた Entra ID 側の制限が OneDrive / SharePoint の外部共有時に効くようになった
と理解致しましょう。
Microsoft 公式ドキュメントでも、SharePoint / OneDrive と Microsoft Entra B2B の統合は、今後より標準的な動作として扱われていく流れが示されています。
SharePoint と OneDrive と Microsoft Entra B2B の統合 | Microsoft Learn
https://learn.microsoft.com/ja-jp/sharepoint/sharepoint-azureb2b-integration
対応内容をまとめると
今回実施した対応は、Entra ID の外部コラボレーション設定を変更しました。
変更箇所は
Microsoft Entra 管理センター → External Identities → 外部コラボレーションの設定 → ゲスト招待の設定
変更前
「特定の管理者ロールに割り当てられているユーザーのみがゲスト ユーザーを招待できる」
変更後
「メンバー アクセス許可を持つゲストを含むメンバー ユーザーと特定の管理者ロールに割り当てられたユーザーがゲスト ユーザーを招待できる」
これにより、通常のメンバーユーザーでも、業務上必要な範囲で外部共有ができる状態に戻した、という対応です。
ただし、注意は必要
今回の対応で外部共有はできるようになりますが、何でもかんでも外部共有できる状態にしてよいわけではありません。
今回変更した Microsoft Entra ID の「ゲスト招待の制限」は、OneDrive / SharePoint 専用の設定ではありませんので他のサービスにも影響してくる可能性があります。
外部共有は便利ですが、情報漏えいリスクとも隣り合わせです。
そのため、今後は次のような運用もあわせて考えた方がよいかと思います。
- 外部共有を許可するユーザー範囲を明確にする
- 必要に応じて Guest Inviter ロールを使う
- 外部共有先ドメインの許可 / 拒否リストを検討する
- 共有監査ログを定期的に確認する
- 重要ファイルは感度ラベルや DLP と組み合わせる
- 退職者や不要なゲストアカウントを定期的に棚卸しする
「共有できるようにする」ことと「安全に共有できるようにする」ことは別物です。
管理側としては、リスクについても慎重に考える必要があるな―と思います。
管理人メモ
今回のポイントは、エラーメッセージだけ見ても原因にたどり着きにくいことですね。
OneDrive の共有エラーなのに、実際に効いていたのは Entra ID の外部コラボレーション設定でした。
Microsoft 365 はサービス同士の連携が強くなっていくのでしょうからこういうケースが増えそうですね。
「SharePoint の問題だから SharePoint 管理センターだけ見る」
「OneDrive の問題だから OneDrive 同期クライアントだけ見る」
ではなく、次のような範囲も疑って確認する必要があるな~と思いました。
- SharePoint / OneDrive
- Microsoft Entra ID
- External Identities
- 条件付きアクセス
- 監査ログ
- ゲストユーザー設定
便利になっている反面、原因調査の範囲は確実に広がっていきますね。。。
まとめ
今回の OneDrive 外部共有エラーは、OneDrive 単体の不具合というより、Microsoft Entra ID のゲスト招待制限が影響していました。
特に、SharePoint / OneDrive の外部共有が Microsoft Entra B2B 側へ移行していく流れの中で、これまで表面化していなかった Entra ID 側の設定が効くようになるケースは今後も出てくるかもしれません。
管理人としては、今回の件でまたひとつ学びとなりました。
Microsoft 365 の外部との共有トラブルは、広範囲で見ていく必要がある。ということですね。
以上、現場からでした。
最後までお読みいただき、ありがとうございました!
