🐚
MS Graph API を MS Graph PowerShell から実行する
はじめに
Azure AD や Microsoft 365 をコマンドで操作する場合、 MS Graph PoweShell を使うことが多いですが、発展途上のためすべての API に対応するコマンドが準備されていません。そのため、マイナーな操作を行う場合はどうしても API を直接叩く必要があります。
このとき、トークンなどの前処理が結構面倒なので、MS Graph PoweShell にある Invoke-MgRestMethod を使って簡単に実行します。
実行方法
MS Graph PowerShell にログインして、Invoke-MgRestMethod を実行します。MS Graph PowerShell がトークンの処理を実施してくれるので、HTTP ヘッダの準備は不要で、Method と Uri、Body を指定すれば実行できます。
# ログイン
Connect-MgGraph -scopes User.ReadWrite.All
# ユーザー一覧の取得
Invoke-MgRestMethod -Method GET -Uri "https://graph.microsoft.com/v1.0/users" | ConvertTo-Json
# ユーザーの作成
$body=@"
{
"accountEnabled": true,
"displayName": "Adele Vance",
"mailNickname": "AdeleV",
"userPrincipalName": "AdeleV@skyblueworks.com",
"passwordProfile" : {
"forceChangePasswordNextSignIn": true,
"password": "xWwvJ]6NMw+bWH-d"
}
}
"@
Invoke-MgRestMethod -Method POST -Uri "https://graph.microsoft.com/v1.0/users" -Body $body
Discussion