Microsoft 365にPowerShellで接続する方法

はじめに
本日のBlogは、PowerShell から Microsoft 365 に接続する方法をご紹介します。
MS365の管理者画面では、確認することができない値など確認したい場合、MS365にPowerShellで接続することにより、様々な値を確認することができます。
例えば、MS365とGluegent GateをSSOする際に使用される値、「ImmutlbeID」の値を確認することができます。
接続方法を簡単にご紹介します。
Microsoft Graph PowerShell のインストール
1. Windows PowerShellを起動する。 Windowsキー押下-「Windows PowerShell」と入力、「開く」をクリックする。
2. 以下コマンドを実行。
PowerShell スクリプト実行ポリシーを、リモート署名済みまたは制限の少ない設定にする。
>Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
3. 実行ポリシーの変更に同意する。[A]を入力する。
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] す べて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): Y
4. 以下コマンドを実行。Microsoft Graph PowerShellをインストールする。
※1 NuGet プロバイダー関連のメッセージが表示された場合は、本記事の最下部に記載した「※ 1 NuGet プロバイダーの対応」を参照。
>Install-Module Microsoft.Graph -Scope CurrentUser -Repository PSGallery -Force
5. 以下コマンドを実行。モジュールがインストールされたことを確認
>Get-InstalledModule Microsoft.Graph
6. 以下コマンドを実行。MS365に接続する。
>Connect-MgGraph -Scopes "User.Read.All","Group.ReadWrite.All"
7. MS365に接続する。ユーザ情報を入力する。(この画面は、すでにMS365に接続済みユーザが表示されている)
8. 以下メッセージが表示されることを確認する
>Connect-MgGraph -Scopes "User.Read.All","Group.ReadWrite.All"
Welcome to Microsoft Graph!
Connected via delegated access using *******-********-**********-**********
Readme: https://aka.ms/graph/sdk/powershell
SDK Docs: https://aka.ms/graph/sdk/powershell/docs
API Docs: https://aka.ms/graph/docs
NOTE: You can use the -NoWelcome parameter to suppress this message.
9. 以下コマンドを実行。MS365からユーザ情報を取得。ユーザ情報が取得できていること確認。
>Get-MgUser
DisplayName Id Mail
----------- -- ----
テスト A*******-****-****-****-********
10. 以下コマンドを実行し特定ユーザの細かい情報を取得する。UserIDの引数は、「9」で確認したidを指定する。
ImmutableId など細かい値の確認が可能。
>Get-MgUser -UserId A******-****-****-****-******** | fl
結果抜粋
OnPremisesDistinguishedName :
OnPremisesDomainName :
OnPremisesExtensionAttributes :
OnPremisesImmutableId :*******************************
OnPremisesLastSyncDateTime :
OnPremisesProvisioningErrors :
OnPremisesSamAccountName
11. 作業が終わった後は、必ず以下コマンド実行する。MS接続情報が保持されるため、作業が終わったらセッションを破棄する。
>Disconnect-MgGraph
※ 1 NuGet プロバイダーの対応
「Install-Module Microsoft.Graph -Scope CurrentUser -Repository PSGallery -Force」コマンドを実行したあと、「 NuGet プロバイダー」が必要ですと表示された場合、Yを選択する。
インストールに10分程度かかる場合もある。
続行するには NuGet プロバイダーが必要です
PowerShellGet で NuGet ベースのリポジトリを操作するには、'2.8.5.201' 以降のバージョンの NuGetプロバイダーが必要です。
NuGet プロバイダーは 'C:\Program Files\PackageManagement\ProviderAssemblies' または
'C:\Users\*******\AppData\Local\PackageManagement\ProviderAssemblies'
に配置する必要があります。'Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force' を実行して NuGetプロバイダーをインストールすることもできます。
今すぐ PowerShellGet で NuGetプロバイダーをインストールしてインポートしますか?
[Y] はい(Y) [N] いいえ(N) [S] 中断(S) [?] ヘルプ (既定値は "Y"): y
以上になります。
PowerShellを利用する際の参考になれば幸いです。