Powershell で Microsoft Graph や Teams に接続する方法

スポンサーリンク

Microsoft365やMicrosoft Entra ID(旧AzureAD)へPowershellで接続するにはMicrosoft Graphに接続する必要がある。Microsoft Graph (マイクロソフト グラフ)は、Microsoft 365やAzure ADなど、Microsoftクラウドサービスのデータへのアクセスを提供するためのAPIとなる。

また、Teams へPowershell で接続する方法も記載する。チームメンバの一括登録や、チームの管理で便利になる。

PCの環境設定

いざ、接続しようとしてもそのままでは使えないので環境を設定する。

Powershellの実行ポリシーを変更する。

Powershellで作業するにあたり「このシステムではスクリプトの実行が無効になっているため、~」云々のエラーがでいるのでPowershellを起動して下記コマンドで実行ポリシーを変更しておく。

現在の設定を確認する。

PS> Get-ExecutionPolicy

実行するといずれかの出力があり、以下の通り。特に変更していなければRestriced と表示され、スクリプトの実行が禁止されている。

<ポリシー一覧>

ポリシー名内容
Restrictedスクリプトの実行を完全に禁止(デフォルト)
AllSigned信頼された発行者による署名付きスクリプトのみ実行可能
RemoteSignedダウンロードしたスクリプトは署名が必要
Unrestrictedすべてのスクリプトを実行可能(警告は出る)
Bypass制限なし

Restricted と表示されている場合はポリシーを変更する必要がある。

PS> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

-ExecutionPolicy でポリシー名を指定して、-Scope で対象範囲を指定する。

<Scope オプション一覧>

Scope名対象範囲内容
Process開いているPowerShell セッションのみ一時的に変更する。ウィンドウを閉じると元に戻る
CurrentUser現在ログインしているユーザー現在PCにログインしているユーザにのみ適用
LocalMachineコンピューター全体(すべてのユーザー)管理者権限が必要で全ユーザーに適用される
UserPolicyグループポリシーで設定されたユーザー用ポリシーADのグループポリシーによる設定
MachinePolicyグループポリシーで設定されたマシン用ポリシーADのグループポリシーによる設定

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

GraphまたはTeams に接続するのに必要なモジュールをインストールする。以下のコマンドを実行する。モジュールのインストールは10分くらいかかるかもしれない。

Graph
PS> Install-Module Microsoft.Graph
Teams
PS> Install-module microsoftteams

接続してみる

パソコンの環境が整ったら実際に接続。以下のコマンドで接続する。

Graph
PS> Connect-MgGraph
Teams
PS> Connect-MicrosoftTeams

コマンド実行すると以下の認証画面が表示されるので接続ユーザで認証する。対象テナントにたいして管理者権限が必要な操作を行う場合は、管理者ロールを付与しているアカウントでログインする。

認証に成功するとWelcome to Microsoft Graph!と表示される。Teamsの場合はアカウント名やテナントIDが表示される。

PS > Connect-MgGraph
Welcome to Microsoft Graph!

動作確認

Graph

Microsoft Entra ID(AzureAD)のユーザを取得してみる。

PS> Get-MgUser

正常に接続できていれば、EntraIDにいるユーザが表示される。

Teams
PS> Get-Team 

正常に接続できていれば、テナントに存在するチーム一覧が表示される。

コメント

タイトルとURLをコピーしました