PowerShellでOffice365を操作する~MSOnlineに接続しよう

Office365
PowerShellでOffice365を操作する~MSOnlineに接続しよう

4月になりましたね。

Office365 の管理者の方々は、新しい学生や社員の登録・管理作業に苦労されているのではないでしょうか。

Office365 の管理作業は通常ブラウザを使って行いますが、PowerShell で行うこともできます。主にCSVファイルを使用した一括登録・設定で威力を発揮します。

数十人ならまだしも、数百人、数千人分の作業をブラウザで1つ1つ行うのは現実的ではありません。絶対ミスしますし、ただの苦行です。

そこで、PowerShell で Office365 に接続し、一度に各種登録・設定を行う方法をご紹介しようと思います。

今回は Office365 に接続するところまでです。つながらないことには話になりませんからね。

Microsoft Azure Active Directory(MS Online)への接続準備

食材の準備

Office365 の情報は、Microsoft Azure Active Directory(MS Online)で管理されています。
これはクラウド上の Active Directory です。Office365 はクラウドサービスですので、管理する Active Directory もクラウドサービスというわけです。

PowerShell で MS Online に接続することで、初めて Office365 を操作できるようになります。

MS Online に接続するためには、いくつかのソフトウェアやモジュールをインストールする必要があります。

PowerShell の MS Online への接続モジュールは32ビットOSをサポートしていません。Windows 7 SP1、Windows Server 2008 R2 SP1 以降の64ビットOSのみです。

.NET Frameworkを新しくする

可能な限り新しくしましょう。PowerShell は .NET Framework 上で動作しますので、.NET Framework が古いと、新しい PowerShell がうまく動かない場合があるためです。

最新版(現時点では4.7.1)をインストールしてよいと思います。

環境によっては既に最新版が入っている場合があります。その場合は不要です。(メッセージが表示されます。)

PowerShellを新しくする

PowerShell は Windows Management Framework(WMF)と呼ばれる Windows 管理機能に含まれています。
WMF を新しくすることで、PowerShell も新しくなります。

WMF はオフラインの更新プログラムとして提供されています。最新版(現時点では5.1)をインストールしてよいと思います。

OSによっては、デフォルトで最新版が入っています。その場合は不要です。(メッセージが表示されます。)

Microsoft Online Services サインイン アシスタント

MS Online にサインインするためのソフトウェアが Microsoft から提供されています。

ダウンロード・インストールしましょう。

PowerShellのMS Onlineモジュール

PowerShell 用の MS Online モジュールをインストールします。それで Office365 を操作するための各種コマンドを実行できるようになります。

管理者権限で PowerShell を起動します。

> Install-Module MSOnline

インストール中に2回聞かれますが、どちらも「Y」→EnterでOKです。

これで MS Online に接続する準備ができました。

MS Onlineに接続する

つなげる

Office365のユーザーで接続する

管理者権限で PowerShell を起動します。

> $credential = Get-Credential

IDとパスワードを入力する画面が表示されますので、Office365 の管理者権限を持つユーザーのIDとパスワードを入力します。

> Connect-MsolService -Credential $credential

これで何も表示されなかったら接続成功です。

念のため

> Get-MsolDomain

と入力し、ドメイン(xxxx.onmicrosoft.com)が表示されればOKです。

これで、PowerShell で Office365 を操作ができる状態となりました。

PowerShell 画面を閉じた後に再度接続したい場合は、

> $credential = Get-Credential

からやり直してください。

最後に

まずは PowerShell で Office365 を操作できる状態にしました。これができてしまえばもう大丈夫です。

次回は、CSVファイルを使ったユーザーの一括登録についてご紹介します。