ふらりのメモ書き

Microsoft 365 , Power Platform らへん

【Office 365】Office 365 を PowerShell で操作するためのメモ

PowerShel lで AzureAD やら Exchange Online やらを操作することが多いのでそのメモ書きです。
今回は Azure AD への接続。

PowerShell とは

ここに書いてある通りですね。(説明割愛)

PowerShell とは - PowerShell | Microsoft Learn

実際の画面はこんな感じです。

コマンド操作で色々できます。
Office 365 は Microsoft 365 管理センターから設定できるからコマンド操作なんていらないでしょ?とかよく言われますが、細かいところの設定はPowerShellでしかできないやつとか結構あります。
CSVファイルから一括設定なんて言うのもPowerShellを使うと簡単です。

私はよく試用版環境を作るので、ユーザーや各種グループ、設備や備品なんかをPowerShellで一括登録しています。(すぐ環境作れて便利ですよ)

Azure AD への接続の設定

参考になるのはこちら。
今回は両方のモジュールをインストールします。
確か現在のサポートは64Bit版のOSのみなのでお気をつけ下さい。
今回の環境は Windows 10 Professional 64bit の環境で実施しています。

docs.microsoft.com

Office 365 および管理者のユーザー アカウント、グループ、ライセンスへの接続に使用する PowerShell モジュールには、次の 2 つのバージョンがあります。

この記事の日付の時点で、Graph 用 Azure Active Directory PowerShell モジュールは、ユーザー、グループ、およびライセンスの管理について Windows PowerShellMicrosoft Azure Active Directory モジュールのコマンドレットの機能に完全に置き換わるものではありません。多くの場合、両方のバージョンを使用する必要があります。同じコンピューターに両方のバージョンを安全にインストールできます。

Windows Management Framework 5.1 以降のバージョンか確認

WIndows 10 バージョン 1607 以降であれば既定でInstallされているはずです。
PowerShellを起動します。(管理者権限じゃなくても大丈夫です。)

「$psversiontable」コマンドでPowerShellのバージョンが確認できます。
5.1未満の場合は最新版の導入が必要です。(Docs参照のこと)

$psversiontable

Windows PowerShellMicrosoft Azure Active Directory モジュールの設定

一連の流れで設定したいのでこちらから設定します。

Microsoft .NET Framework 3.5. x 機能の有効化

Windows PowerShellMicrosoft Azure Active Directory モジュールでは、Microsoft .NET Framework 3.5. x を有効化する必要があります。
赤枠の項目にチェックを入れて[OK]です。

Windows の機能の有効または無効化」の場所がわからない場合はこちらの記事をご参照ください。

flali.hatenablog.com

「IT プロフェッショナル 用 Microsoft Online Services サインイン アシスタント RTW」をインストールします。

Windows 10 の場合はこの作業は不要です。
※ 現在、64ビット版のIT プロフェッショナル 用 Microsoft Online Services サインイン アシスタント RTW が公開されていないようです。

"Install-Module MSOnline"コマンドの実行

PowerShellを管理者権限で起動します。
検索すると簡単に見つかりますのでお勧めです。

「 Install-Module MSOnline 」を入力したらEnterキーを押して実行します。
Install-Module (PowerShellGet) - PowerShell | Microsoft Learn
途中の設問にはすべて「はい(Y)」で「Y」を入力して進めます。

 Install-Module MSOnline 

最新版にUpdateしたい場合
Update-Module (PowerShellGet) - PowerShell | Microsoft Learn

Update-Module -Name MSOnline

アンインストールしたい場合
Uninstall-Module (PowerShellGet) - PowerShell | Microsoft Learn

Uninstall-Module -Name MSOnline

Graph 用 Azure Active Directory PowerShell の設定

管理者権限で実行したPowerShellをそのまま利用し「Install-Module -Name AzureAD」を実行します。
「信頼されていないリポジトリ」は「Y]で進めて下さい。

Install-Module -Name AzureAD

最新版にUpdateしたい場合

Update-Module -Name AzureAD

アンインストールしたい場合

Uninstall-Module -Name AzureAD

以上で必要な設定とインストールは完了です。

確認

「Connect-MsolService」を実行します。
サインインはOffice 365の管理者権限のIDでログインします。

Connect-MsolService

「Get-MsolUser」を実行します。
ユーザー一覧が表示されたらOKです。

Get-MsolUser

続いて、「Connect-AzureAD」を実行します。
サインインを求められたらOffice 365の管理者権限のIDでログインします。

「Get-AzureADUser」を実行します。
ユーザー一覧が表示されたらOKです。

Get-AzureADUser

エラーが発生した場合は再度設定を確認してください。

最後に

設定自体はそんなに難しくない...です。
一回設定すれば、モジュールのバージョンが古くならない限りは再設定はいりません。
次は、Exchange Onlineへの接続の方法を書く予定。
モザイクが全部バラバラだった...(直すの面倒なのでこのまま)

2021/08/11 若干修正