アルパカのメモ

Graph PowerShell SDK

はじめに

PowerShell のコマンドレットは、2022年12月以降に廃止される予定。そのため、Graph PowerShell SDK への移行が必要。

MSOnline / AzureAD PowerShell から Graph PowerShell SDK への移行について 1_概要 | Japan Azure Identity Support Blog

インストール

Microsoft Graph SDK をインストールする - Microsoft Graph | Microsoft Learn

Install-Module Microsoft.Graph

Graph 全部をインストールするためか、インストールに時間がかかる。

認証

2つの方法がある。

  • とりあえず Connect-MgGraph を実行してサインイン画面を表示し、自分でログインする
  • PC で証明書をつくり、Azure AD にアプリとして登録する

接続

Connect-MgGraph -Scopes User.Read.All

スコープの指定必須。このあと使う API によってスコープは異なる。

スコープ

必要なスコープは、各コマンドのドキュメントに書いてある。

例:Get-MgUser (Microsoft.Graph.Users) | Microsoft Learn

スコープの種類の詳細:
Microsoft Graph permissions reference - Microsoft Graph | Microsoft Learn

切断

Connect-MgGraph を実行すると、ユーザーフォルダにキャッシュファイル (みたいなもの) が保存され、PowerShell を終了した後も残る。 つまり再度 PowerShell を起動した後でも接続を再利用できるが、切断したい場合は以下を実行する。

Disconect-MgGraph

参考:MSOnline / AzureAD PowerShell から Graph PowerShell SDK への移行について 3_インストール・接続編 | Japan Azure Identity Support Blog

コマンドを探す

下記公開情報に、既存のコマンドレットと Graph の対照表がある。

Find Azure AD and MSOnline cmdlets in Microsoft Graph PowerShell | Microsoft Learn