Exchange Online の予定表で「既定のアクセス権限」を変更する

## はじめに

Exchange Online 環境で他人の予定表を見ようとした際、既定では相手の予定表にどんな予定が入っているか見ることはできません。この状態ですと少々不便ですので、「既定のアクセス権限」を変更するPowerShellについて書き残します。

## 環境構築

- PowerShell version: 5.1.19041.2673
- モジュール Exchange Online PowerShell

PowerShellウィンドウで以下のコマンドを実行して、Exchange Onlineモジュールをインストールします。
既にインストール済みの方は飛ばしても大丈夫です。

```PowerShell
# Exchange Onlineモジュールをインストール
Install-Module -Name ExchangeOnlineManagement -Force -AllowClobber
```

インストールが完了したら、以下のコマンドでモジュールをインポートします。

```PowerShell
Import-Module ExchangeOnlineManagement
```

## 予定表の既定のアクセス権変更

テナント内のすべてのメールボックスの既定のアクセス権を「Reviewer」に変更します。

### 使用するPowerShell

ExchangeOnlineに接続します。権限は「グローバル管理者」または「Exchage管理者」が必要になります。

```PowerShell
# 接続、グローバル管理者 or Exchage管理者
Connect-ExchangeOnline 
```

メールボックスを取得します。会議室や備品は除外したいという場合はフィルターをかけてください。

```PowerShell
# すべてのメールボックスを取得
$AllMailBox =  Get-mailbox `
| select PrimarySmtpAddress
```

メールボックスのタイムゾーンと言語を「日本」に変更します。
これは英語になっている場合があるので変更をします。

```PowerShell
# メールボックスのタイムゾーンと言語を日本に変更
foreach($MailBox in $AllMailBox)
{
Set-MailboxRegionalConfiguration `
-Identity $MailBox.PrimarySmtpAddress `
-DateFormat "yyyy/MM/dd" `
-Language "ja-JP" `
-TimeFormat "H:mm" `
-TimeZone "Tokyo Standard Time" `
-LocalizeDefaultFolderName:$true
}
```

全メールボックスの予定表を規定のユーザーから参照できるように変更します。
これを行うことで他のユーザーの予定表にどんな予定が入っているか確認することができます。

```PowerShell
# 予定表の参照権限を既定のユーザーに与える（日本語ver）
foreach($MailBox in $AllMailBox)
{
$calendar = $MailBox.PrimarySmtpAddress + ":\予定表"
$calendar

Set-MailboxFolderPermission `
-Identity $calendar `
-User "既定" `
-AccessRights reviewer
}
```

設定の確認をします。

```PowerShell
# 確認（日本語Ver）
foreach($MailBox in $AllMailBox)
{
$calendar = $MailBox.PrimarySmtpAddress + ":\予定表"
$calendar

Get-MailboxFolderPermission `
-Identity $calendar `
-User "既定"
}
```

以下のように出力されていれば予定表の既定のアクセス権が「Reviewer」に変更されています。

```PowerShell
FolderName           User                 AccessRights                                                                 SharingPermissionFlags                                                      
----------           ----                 ------------                                                                 ----------------------                                                      
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}                                                                                                                                               
予定表                  既定                   {Reviewer}    
```

## まとめ、所感

- Microsoft 365ではデフォルトで他人の予定表のタイトルを見ることができないので、この設定はほぼマストです。
- 特定のユーザーの予定表は他ユーザーから見れないようにしたいという要件がある場合は「Set-MailboxFolderPermission」でアクセス権を変更します。

## 参考

https://learn.microsoft.com/ja-jp/powershell/module/exchange/set-mailboxfolderpermission?view=exchange-ps