MicrosoftTeamsのメンバー管理をPowerShellで行う

MicrosoftTeamsにはPowershellの管理Moduleが存在します。これを使ってメンバー管理の自動化をやってみようと思います。

MicrosoftTeamsモジュールのインストール

PowershellでInstall-Module MicrosoftTeamsを実行してやるとインストールできます。

管理者権限がないとかProxyの中にいるとかうまくインストールできない場合は下記をみてください。

MicrosoftTeamsモジュールのインポート

Installが終わったらImport-Module MicrosoftTeamsでImportします。この時に-Vervorseオプションを付けるとImportしたコマンド一覧が表示されます。

この中で普通の管理者向けに有用なのはTeamUser系だと思います。ActiveDirectoryと連動はするんですがグループで登録すると個々のIDに分解されて登録されるのでActiveDirectory側のグループメンテナンスに追随しないんですよ。なので運用開始したらメンバーのメンテナンスをしないといけません。なのでメンバー一覧を取得(Get-TeamUser)して手元の一覧と突合して削除(Remove-TeamUser)したり登録したり(Add-TeamUser)したりすればメンテナンスしてやれそうです。

MicrosoftTeamsへのConnect

最初にPowershellをTeams自体にConnectしないといけません。まずConnect-MicrosoftTeamsコマンドレットを使います。自分はMFA認証有効な環境なのでUserIDを入力する画面から上がってきてすぐ解決するんですが、そうでない方は下記ヘルプを参照ください。

自分の場合はオプションなしで実行すると、MFA認証画面が上がってきて終了します。

TeamのGroupIdを調べる

次に操作したいTeamのGroupIdを調べます。下記を実行すれば自分が所属しているTeamのGroupIdが返ってくるはずです。

ここで調べられたIdでグループを操作できます。詳しくはGet-Teamのヘルプを御覧ください。

Groupのメンバーを取得する

GroupIdがわかると、メンバー一覧が取得できます。

この結果を配列にいれるなりして、手元のCSVと比較したりActiveDirectoryに問い合わせるなりして管理ができます。PowerShellからActiveDirectoryに問い合わせる手段は下記を参照ください。

メンバーを削除する

既存のメンバーを削除するにはRemove-TeamUserで出来ます。詳しくは下記のヘルプをご覧ください。

メンバーを追加する

同じようにAdd-TeamUserで出来ます。ヘルプを掲示しますのでご覧ください。

まとめ

Connect-MicrosoftTeamsさえ突破できれば、*-TeamUserコマンドレットでチームメンバーは管理できます。チームを大量に作ったり消したりよりはチームメンバー管理のほうがよくあることだと思うので参考にしてください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください