ヘッダー画像

Exchange Online 特定会議室の予約を禁止したい

はじめに

Exchange Onlineの会議室の予定表には、予定の「内容を見せる・見せないの権限」と予定自体を「登録できる・できないの権限」があります。本記事では後者の登録できる・できないの権限について触れていきます。予定表の予定登録を停止したいシーンはあるかと思います。役員専用応接室に間違えて予定送信して怒られた方も中にはいらっしゃるのでは?今回はそんなおっちょこちょいの方たちを救いたいという思いのこもった記事です。(違

本記事の設定活用事例

本記事の内容では以下のシーンでの利用が想定できます。

  • 応接室や特定の会議室の利用可能者を限定する
  • 部門管理備品などの利用者を部門内限定にする
  • 工事中の会議室への予約を制限する

今回実装する構成

役員専用会議室に対して予約が可能なメンバーを役員グループのメンバーおよび秘書グループのメンバーに限定します。招待する権限を持たないユーザから予定が招待された場合は自動的に却下する仕組みとします。

Exchange Online 会議室予定 予約権限設定

どこで設定ができるのか?

管理画面(GUI)では設定する箇所が見当たりませんので、みんな大好きPowershellでの設定となります。今回利用するコマンドはExchange Onlineのコマンドレットになりますので、事前にこちらを参照してExchange Online v2のモジュールをインストールしておいてください。

直近のアップデートによりExchange Onlineの基本認証が停止される認識ですのでExchange Online v1の利用は避けておいたほうが無難です。

利用するコマンド

今回の設定で利用するコマンドは下記の通りです。対象者以外からの予約は自動辞退と予約可能ユーザを指定するのに「Set-CalendarProcessing」を利用します。「Set-MailboxFolderPermission」で既定の閲覧アクセス権をはく奪、「Add-MailboxFolderPermission」で閲覧可能ユーザに権限付与を行います。

コマンド詳細
Set-CalendarProcessingリソース予約アシスタント、およびカレンダー構成を含む、リソースメールボックスのカレンダー処理オプションを変更します。このコマンドレットは、リソースメールボックスでのみ有効であることに注意してください。
Set-MailboxFolderPermissionメールボックスのユーザーに対するフォルダー レベルのアクセス許可を変更します。
Add-MailboxFolderPermission メールボックスのユーザーに対するフォルダー レベルのアクセス許可を追加します。

実装例

下記の形で書いてみました。特定の会議室に対して予約可能なメンバーを指定したうえで、予約する権限を持たないユーザには予定表自体の閲覧を停止して、対象者だけが予約状況を確認できるようになっています。とりあえず1つずつ会議室を設定することを前提にコーディングしてますが、CSVファイルから読み込んでまとめて設定なんかも実現できると思いますのでやってみてください。

#初期設定
#環境に合わせて変更してください。
$UserName = "管理者アカウント名"
$Passwd = "管理者パスワード"
#接続設定
$CvtPass = ConvertTo-SecureString $Passwd -AsPlainText -Force
$UserCredential = New-Object System.Management.Automation.PSCredential($UserName,$CvtPass)

Connect-ExchangeOnline -Credential $UserCredential

#会議室の予約可能メンバーを設定
Set-CalendarProcessing -Identity "<会議室または備品のメールアドレス>" -AllBookInPolicy $false -BookInPolicy "<予約を許可するユーザまたはグループのメールアドレス>"

#会議室の既定のアクセス権を設定
Set-MailboxFolderPermission "<会議室または備品のメールアドレス>:\予定表" -User "既定" -AccessRights None

#会議室の予定を参照できるメンバーを設定
Set-MailboxFolderPermission "<会議室または備品のメールアドレス>:\予定表" -User "<予約を許可するユーザまたはグループのメールアドレス>" -AccessRights LimitedDetails

MailboxFolderPermissionの会議室・備品の指定は「メールアドレス」+「:\予定表」が決まりのフォーマットになります。この例では予定表としていますが、言語設定が日本語に設定されていない場合、または会議室作成から言語設定を変更していない場合「予定表」を「Calendar」と変更していただく必要があります。

実行結果を確認

ここまで設定は完了しているはずですので、動作を確認していきます。まずは予約権限のないユーザが予約した場合は会議室から自動的に辞退のメールが配信されます。リソースを予約するためのアクセス許可がありません。と出ていれば期待通りの動作となっています。

Exchange Online 会議室予定 予約権限設定

予約可能なメンバーが会議室を予約した場合は下記の通り承諾された旨のメールが届くはずです。これは通常通り予約が承諾された画面と同じですので見慣れた画面ではないでしょうか?

Exchange Online 会議室予定 予約権限設定

注意喚起を表示

会議室には、誤送信防止対策で紹介したメールのヒント機能が利用できます。役員会議室とはいえ、空いてるときは使わせないなどのご要望にはこちらの方法で対応が可能になります。

GUIを使って設定する場合は、従来のExchange管理センターから設定します。[受信者]-[リソース]から対象となる会議室または備品を選択の上、[メールヒント]をクリックします。

会議室 メールヒント

表示したいメッセージを入力して[保存]をクリックします。画像はHTML表記になっていますが、文字列だけ入力していただければ勝手にHTMLに変換されます。

設定が完了したので動作を確認してみましょう。会議室予約で対象の会議室を予定に追加してみます。

会議室 メールヒント

新しいExchange管理センターではこの設定ができませんのでPowershellでの設定方法もご案内します。

#初期設定
#環境に合わせて変更してください。
$UserName = "管理者アカウント名"
$Passwd = "管理者パスワード"
#接続設定
$CvtPass = ConvertTo-SecureString $Passwd -AsPlainText -Force
$UserCredential = New-Object System.Management.Automation.PSCredential($UserName,$CvtPass)

Connect-ExchangeOnline -Credential $UserCredential

Set-Mailbox -Identity "<メールアドレス>" -MailTip "表示したい文字列"

この方法であれば、役員が利用しない間は会議室が有効利用可能になります。役員が突然会議で使うといい始めても、注意喚起の表示を出していることから揉めることもないでしょう。

まとめ

今回の記事では特定のメンバーだけが予約可能な会議室を作ってみました。一番よくあるパターンは役員専用のリソースに対する設定になるかと思いますが、部門限定や拠点限定みたいな運用もあってもおかしくありません。会議室新設時に事前に会議室を作成しておく場合などにも利用が可能かと思います。

また、施設の有効利用をするために、予約できなくするのではなく、優先利用権がついてる会議室と表示する方法も合わせてご紹介しました。各社の利用シーンに合わせて方針を決定してくださいね。

本記事が皆様の導入・運用管理の一助となりました幸いです。