##実現できること
Office365 予定表機能で、会議室・備品に予定登録出来る人や部署を限定する方法です。
例えば、会議室Aを総務部のみ予定登録出来るようにします。総務部のBさんが会議室Aで打ち合わせをするために予定を取りました。もちろん、それはOKです。
ですが、情報システム部Cさんが会議室Aでの予定を取ろうとすると、会議室Aより自動的に辞退メールがくるそんな仕様のPowerShellを今回ご紹介します。
##PowerShellでの登録方法
Set-CalendarProcessing -Identity "対象のリソースメールボックスのアドレス" -AutomateProcessing AutoAccept -AllBookInPolicy $False -BookInPolicy "予約を許可するセキュリティグループ/ユーザーのメールアドレス"
AllBookInPolicyをfalseにして、まず、予約権限をなくします。
BookInPolicyで対象者を会議室・備品の予約を可能とします。
会議室Aの予約可能な部署を総務部だけにしたい場合だと、具体的にはこんな感じ。
Set-CalendarProcessing -Identity "会議室A@qiita.com" -AutomateProcessing AutoAccept -AllBookInPolicy $False -BookInPolicy 総務部@qiita.com
部署や人を複数指定したい場合は、カンマ区切りでいけます。
この場合、予定表へのアクセス権限は、総務部はLimitedDetails(空き時間情報・件名・場所の参照可能)、他の人はAvailableOnly(予定ありとしか見えません)になります。
【権限についてはしーるの忘備録を参考にしました】
##本当に設定できたのか確認する
設定したけど、じゃあ本当に設定できているのか確認します。
Get-CalendarProcessing 対象のリソースメールボックス | select -ExpandProperty BookInPolicy | Get-Recipient | select DisplayName,PrimarySmtpAddress
先ほど確認した会議室Aの設定を確認しましょう。
Get-CalendarProcessing 会議室A@qiita.com | select -ExpandProperty BookInPolicy | Get-Recipient | select DisplayName,PrimarySmtpAddress
実行すると以下の結果が返ってきます。
DisplayName PrimarySmtpAddress
総務部 総務部@qiita.com
ちなみに、設定されてない状態だと結果は空白で何もかえってこないので、ご注意ください。
設定するのは良いですが、管理が面倒ですね。ユーザーと本当に予約できる人を絞るべきなのか?今一度、相談してから登録したほうがよさそうです。