Exchange Online のアドレス帳ポリシーを使用した OneDrive for Business のファイル共有先の絞り込み

こんにちは、プロダクティビティ担当の門口です。

本日は、OneDrive for Business でのファイル共有先の制御についてお伝えしようと思います。

OneDrive for Business は、クラウド上で、自身が使用するファイルの管理を行うことに加えまして、他のユーザーにアクセス権を付与しファイル共有を行うことで、共同作業を行う "場所" として活用できることは皆様もご存知かと思います。

 

addresspolicy1

 

ファイル共有の手順は、このように非常に簡単に行うことができます。

多くのお客様から、この共有機能をご評価いただいているのですが、その一方で「ファイルの共有先は制御できるのか?」というご質問を頂くことがあります。

OneDrive for Business では、ファイルの共有先として、

  1. 社外の外部ユーザー
  2. 社内のユーザー

に分類することができますが、1. の外部ユーザーは、管理者設定により有効・無効を制御可能です。

(外部ユーザーとの共有機能は、とても便利ですので、また別の機会で詳しくご紹介できればと思っています。)

2. の社内のユーザーですが、デフォルト状態でのファイルの共有先は、自社の Office 365 テナントに登録されている全てのユーザーが対象となります。

(Office 365 に登録済みユーザーの全てが共有先の候補となりますので、その中から実際にアクセス権を付与するユーザーを選択します。)

addresspolicy2

 

さて、これから、所属する組織や役職、地域等に応じて、共有先を限定したいというニーズにお応えするために、共有先となる社内ユーザーを制御する方法についてご紹介できればと思います。

なお、今からご紹介する方法は、上記の図内にあるユーザー検索の場面で、検索候補先の絞り込みを実現する方法となります。

残念ながら、アクセス権に基づく厳密な共有先の制御ではありませんので、例えば、ユーザーの UPN やメールアドレスを直接入力した場合は、アクセス権は付与されますのでご注意ください。

実現方法ですが、ずばり、「Exchange Online で使用するアドレス帳ポリシーの設定を SharePoint Online に流用する」です。

Exchange Online を運用頂いている方は、アドレス帳ポリシーについてはおなじみかと思います。簡単にご説明しますと、Exchange Online でメールを書く際に、宛先を検索するシーンがあるかと思います。その時参照している宛先一覧が、グローバル アドレス帳と呼ばれるものです。そして、アドレス帳は、テナント内に複数作成・保持することが可能です。さらに、作成したアドレス帳は、各ユーザー毎に使用の可否を設定できます。(これをアドレス帳ポリシーと呼びます。)

例えば、各ユーザー毎に異なるアドレス帳ポリシーを設定すると、

  • ユーザー A は、東京支店に所属するユーザーを検索対象とする
  • ユーザー B は、大阪支店に所属するユーザーを検索対象とする

のように、ユーザーの検索範囲を限定することが可能となります。詳細につきましては、下記の情報をご覧いただければと思います。

Title: アドレス帳ポリシー
URL: https://technet.microsoft.com/ja-jp/library/hh529948(v=exchg.150).aspx

今回、OneDrive for Business でのファイル共有先の制御に、アドレス帳ポリシーを流用しますので、設定手順は、下記の通り通常のアドレス帳ポリシーの作成方法とほぼ同等となります。

  1. 設定のための準備作業
  2. アドレス帳の作成
  3. 作成したアドレス帳を用いて、アドレス帳ポリシーを作成
  4. アドレス帳ポリシーを、対象となるユーザーに設定
  5. OneDrive for Business/SharePoint Online のテナントの設定を変更

SharePoint Online 管理者の方は、あまりなじみがないかもしれません。ここから、具体的な設定手順をステップ・バイ・ステップでご紹介いたしますので、参考にしていただければと思います。設定方法をシンプルにするため、下記のシチュエーションを前提とします。

addresspolicy5

1.  設定のための準備作業

アドレス帳の設定には、Exchange Online の PowerShell、OneDrive for Business/SharePoint Online のテナント設定には、SharePoint Online の PowerShell を利用しますので、PowerShell を実行する環境に、それぞれのサービスに接続するための準備を行う必要があります。

詳細は下記の情報をご覧ください。

Title: Exchange Online への PowerShell での接続
URL: https://technet.microsoft.com/ja-jp/library/jj984289(v=exchg.160).aspx

Title: SharePoint Online への PowerShell での接続
URL: https://technet.microsoft.com/ja-jp/library/fp161372.aspx

次に、今回、Exchange Online のアドレス帳関連の操作を行いますが、この操作には、操作するユーザーに「Address Lists」と呼ばれる管理者役割を追加する必要があります。
この役割は、デフォルトでは付与されていませんので、Exchange Online 管理センターを開き、下記の手順にて役割の追加を行ってください。

 

addresspolicy3

 

2. アドレス帳の作成

Exchange Online のアドレス帳は、勤務地や役職等ユーザー属性とマッチングを行い、あらかじめ設定した条件に適合するユーザーを抽出し、その結果をアドレス帳に書き出すという動作を行います。したがいまして、まずは、抽出対象ユーザーを特定するため、そのユーザーに識別子となる属性をセットします。ここでは、Mamoru Hibino さんの要件である「テナント内のごく一部のユーザー」を特定するために、該当ユーザーの "CustomAttribute1" 属性に、"SPUser" を設定します。Exchange Online に接続後、下記のコマンドを実行してください。

コマンド例 : ユーザー「Adele Vance」さんに "SPUser" 属性をセットする例
Set-MailBox -Identity “AdeleV@xxxxx.onmicrosoft.com” -CustomAttribute1 “SPUser”

必要に応じて、複数のユーザーにこのコマンドを実行し、属性をセットしてください。

次に、属性 "SPUser" が付与されたユーザーをアドレス帳に抽出します。

アドレス帳は、一般的なアドレス帳 (名称例:"SPUser GAL")、グローバル アドレス帳 (名称例:"SPUser Global GAL")、オフライン アドレス帳 (名称例:"SPUser OAB") の合計 3 点作成する必要があります。

コマンド例 :
New-AddressList -Name "SPUser GAL" -RecipientFilter '((Alias -ne $null) -and (CustomAttribute1 -eq ''SPUser''))'
New-GlobalAddressList -Name "SPUser Global GAL" -RecipientFilter '((Alias -ne $null) -and (CustomAttribute1 -eq ''SPUser''))'
New-OfflineAddressBook -Name "SPUser OAB" -AddressLists "SPUser GAL"

なお、アドレス帳にユーザーが抽出されるまで、しばらく時間がかかります (1,2 時間程度) 。

 

3. 作成したアドレス帳を用いて、アドレス帳ポリシーを作成

次に、2. で作成したアドレス帳を使用するアドレス帳ポリシー (名称例:"SPUser ABP") を作成します。

コマンド例 :
New-AddressBookPolicy -Name "SPUser ABP" -AddressLists "SPUser GAL" -GlobalAddressList "SPUser Global GAL" -RoomList "All Rooms" -OfflineAddressBook "SPUser OAB"

なお、RoomListは、既存のリスト (この場合は、"All Rooms") をそのまま利用しています。

 

4. アドレス帳ポリシーを対象となるユーザーに設定

Mamoru Hibinoに、作成したアドレス帳ポリシーを割り当てます。

コマンド例 :
Get-Mailbox -Identity hibino@xxxxx.onmicrosoft.com | Set-Mailbox -AddressBookPolicy "SPUser ABP"

 

5. OneDrive for Business/SharePoint Online のテナントの設定を変更

最後です。やっと OneDrive for Business/SharePoint Online 関連の PowerShell の登場です。SharePoint Online に接続してから、下記のコマンドを実行してください。

コマンド例 :
Set-SPOTenant -UseFindPeopleInPeoplePicker $true

なお、Set-SPOTenant コマンドの詳細は、下記の情報が参考になるかと思います。

Title: Set-SPOTenant
URL: https://technet.microsoft.com/ja-jp/library/fp161390.aspx

以上で、設定は完了です。

実際に動作させると下記のようになります。

 

addresspolicy4

 

さて、今回、「Exchange Online で使用するアドレス帳ポリシーの設定を SharePoint Online に流用する」という方法で、OneDrive for Business/SharePoint Online の共有先の制御方法をご紹介いたしました。ご覧いただいた通り、設定はアドレス帳に関連する項目が多く、OneDrive for Business/SharePoint Online は 1 項目のみで、実はシンプルです。

留意点は、繰り返しになりますが、厳密なアクセス権制御を行っているのではないということになります。

また、すでにアドレス帳ポリシーを使用した運用を行っている場合、OneDrive for Business/SharePoint Online の共有先制御も、既存の設定内容に依存するということになります。
(もちろん、逆に、現在はアドレス帳ポリシーを利用しておらず、今回の OneDrive for Business/SharePoint Online のためにポリシーを新設した場合、そのポリシーが、将来の Exchange Online のアドレス帳ポリシーの運用に影響します。)

それでは。