[Microsoft Teams]秘密度ラベルを利用して、パブリックチームの作成を禁止する

Microsoft Teams では「パブリック」「プライベート」「組織全体」という３つのタイプのチームが作成できます。パブリックチームは、テナント（会社）内のユーザーであればだれでも参加できます。一方でプライベートチームは所有者が認めた人だけが参加できます。
一般的にITリテラシーが高くないユーザーがパブリックチームを作成してしまうと、「知る必要のない人に情報が知られてしまう」というリスクが発生しえます。

ここでは、主にTeams管理者向けに、「一般ユーザーはプライベートチームしか作成できないよ」という設定を考えてみようと思います。

# そもそもその設定はできるのか？

実は、Teams管理者センターにはそのような設定を行える個所はありません（あってもいい気はするのですが…）ということで Azure AD の力を借りることになります。
具体的には秘密度ラベルの設定を行うことになります。

いざ、その設定を行おうとしたところ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/38f15032-ade1-c35b-b917-e95668208cd3.png)
なにやらたらいまわしにされそうな予感がしたので、記事としてまとめておきます。

# PowerShell で事前準備

まずは「秘密度ラベル」を有効にします。
```PowerShell:事前準備
Uninstall-Module AzureADPreview
Uninstall-Module AzureAD
Install-Module AzureADPreview
Import-Module AzureADPreview
Connect-AzureAD
```
※Uninstallは必要に応じてで構いません

```PowerShell:Get-AzureADDirectorySettingsTemplate
Get-AzureADDirectorySettingTemplate
```
まずはテンプレートを確認します。
```Text:実行結果
Id                                   DisplayName         Description
--                                   -----------         -----------
62375ab9-6b52-47ed-826b-58e47e0e304b Group.Unified       ...
08d542b9-071f-4e16-94b0-74abb372e3d9 Group.Unified.Guest Settings for a specific Microsoft 365 group
16933506-8a8d-4f0d-ad58-e1db05a5b929 Company.BuiltIn     Setting templates define the different settings that can be used for the associ...
4bc7f740-180e-4586-adb6-38b2e9024e6b Application...
898f1161-d651-43d1-805c-3b0b388a9fc2 Custom Policy       Settings ...
5cf42378-d67d-4f36-ba46-e8b86229381d Password Rule       Settings ...
```


今回使うのはTeamsチーム用グループなので Group.Unified です。以下のコマンドでこのテンプレートのIDを取得しています。コピペすれば済む話ではあるのですが、念のため出力結果から変数に入れます。
そして、秘密度ラベルを有効にする設定(EnableMIPLabels)を入れ、新しい設定として入力します。

```PowerShell:テンプレートとディレクトリセット
$TemplateId = (Get-AzureADDirectorySettingTemplate | where { $_.DisplayName -eq "Group.Unified" }).Id
$Template = Get-AzureADDirectorySettingTemplate | where -Property Id -Value $TemplateId -EQ
$Setting = $Template.CreateDirectorySetting()
$Setting["EnableMIPLabels"] = "True"
New-AzureADDirectorySetting -DirectorySetting $Setting
```

# コンプライアンスセンターでの設定

これで、秘密度ラベルがグループで利用可能になったはずです。
コンプライアンスセンター(https://compliance.microsoft.com/)
を開き左メニューから「情報保護」を選択し、「ラベルの作成」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/62d3f280-f7dc-e29e-5498-61376d49f9b9.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/100c278b-fc23-8a95-4289-1dad58e48b92.png)

グループサイトが選べるようになりましたので選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/8473fcd8-24f7-9946-aec8-d05b170cc9ed.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/d47434a3-933e-7265-379f-ac6f62074683.png)

プライバシーを非公開にします。（外部ユーザーアクセスはテナントのポリシーに応じてON/OFFを検討してください）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/d90894e6-56f9-ea8d-df12-1b0a01df9707.png)

ラベルが作成できました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/4e41ff97-89aa-46fd-89ef-0debaf48400f.png)

# ラベルの発行（秘密度ラベルポリシーの作成）

引き続き以下をクリックしラベルを発行します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/ca0c0e34-6d02-fbd9-55a7-81063ab3c114.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/3d526d74-4943-5bd3-d34e-68c95446445d.png)

必要に応じてチェックをONにします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/4701e0df-afce-6cda-c1a7-e287fb9ca521.png)


ここで「規定でグループとサイトにこのラベルを適用」を作成したラベルを設定し、「グループまたはサイトへのラベルの適用をユーザーに要求」のチェックをオンにします。




![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/ff48b596-986c-76ea-b93b-047f8d93788e.png)


以下、名前などを設定して完了です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/31ebeb60-7269-0fdf-6add-f0b6291db510.png)

# 動作確認

反映されるまで時間がかかりますので、しばらく待ってから一般ユーザーでTeamsにアクセスし、新しいチームを作成してみようとすると以下のようになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2095776/becd7f47-cccf-10e1-576e-333012ca4b6c.png)
パブリックチームがグレーアウト（選択不可）になっており、秘密度ラベルが表示されるようになりました。

# 応用例

ポリシーの適用範囲は変更可能なので、特定の人だけパブリックグループを作れるように設定することも可能です。