Windows Azure Active Directory を使用して Office 365 を管理する

 

**概要:**Windows PowerShell を使用して Office 365 を管理する際に Windows PowerShell コマンドレット、スクリプト、およびバッチ プロセスを使用します。

そのとおりです。「Azure Active Directory」という語を見たときの最初の印象は、「これは確かに Windows PowerShell を使用して Office 365 を管理するための方法だ」というものではなかったと思われます。しかし実際には、「Azure」は長い期間にわたって Microsoft のクラウド サービスの名前であり、「Active Directory」は長い期間にわたって Active Directory の名前でした。これらの名前を合わせると、Azure Active Directory ディレクトリとなります。これは Windows PowerShell を使用して Office 365 のユーザー、グループ、ライセンス、およびサブスクリプションを管理することを可能にするテクノロジです。このトピックには、以下のことについての情報が記載されています。

  • Office 365 ユーザー アカウント情報を返す

  • ユーザー アカウントから返すプロパティ値の選択

  • ユーザー アカウントのプロパティ値の構成

  • Office 365 ユーザー ライセンスの操作

  • 位置パラメーターと Office 365 に関する簡単な注意

Azure Active Directory のコマンドレットについてさらに知るためには、ここ に詳しい情報が記載されています。

Office 365 ユーザー アカウント情報を返す

名前は別として、Azure Active Directory を使用して実行可能な管理タスクに焦点を合わせるほうが興味深い (かつ重要) といえます。Azure Active Directory には 66 のコマンドレットが含まれており、その大半は Office 365 ユーザー、グループ、ライセンスを管理するために使用されます。たとえば、Office 365 ユーザーのクイック リストが必要ですか?次のコマンドを試してください。

Get-MsolUser

少し回り道になりますが、これはコマンドレット名について説明するよい機会かもしれません。Azure Active Directory コマンドレットの名前を見ると、そのすべてに 1 つの共通点があることがわかります。

  • Add-MsolForeignGroupToRole

  • Add-MsolGroupMember

  • Add-MsolRoleMember

  • Confirm-MsolDomain

  • Connect-MsolService

ご覧のとおり、コマンドレットの名詞 (ハイフンの後にくる名前の一部) はプレフィックス Msol で始まります。これは偶然でしょうか?いいえ。偶然ではありません。それどころか、Msol プレフィックス (MsOnline の略語) は、これらのコマンドレットを Azure Active Directory コマンドレットとして識別するために使用されています。どの Azure Active Directory コマンドレットにもプレフィックス Msol が使用されなければならず、それ以外の Windows PowerShell コマンドレットでは Msol プレフィックスを使用できません。たとえば、どの SharePoint Online コマンドレットにも次のようにプレフィックスがあります。

  • Add-SPOUser

  • Connect-SPOService

  • Disconnect-SPOService

  • Get-SPOAppErrors

  • Get-SPOAppInfo

すべての Lync Online コマンドレットには、次のようにプレフィックス Cs が使用されます。

  • Get-CsAudioConferencingProvider

  • Get-CsOnlineUser

  • Get-CsTenant

  • Get-CsTenantFederationConfiguration

  • Get-CsTenantHybridConfiguration

Cs プレフィックスは、Communication Server の短縮名です。これは、Lync Server が、以前は Office Communications Server と呼ばれていたためです。名前が公式に変更された時点で、多数のコマンドレットが既に完成していました。後になってコマンドレット名を変更すると、製品のリリースが遅れてしまう可能性があったため、Cs プレフィックスを引き続き使用することになりました。

興味深いことに、Exchange コマンドレットでは、次のようにどんな種類のプレフィックスも使用されません。

  • Add-RecipientPermission

  • Get-LinkedUser

  • Get-RecipientPermission

  • Get-RemovedMailbox

  • Get-SendAddress

なぜでしょうか? Exchange は、一連の Windows PowerShell コマンドレットをリリースした最初のサーバー製品です。当時は、コマンドレットのプレフィックスまたはその他の識別子の使用が強制されることはありませんでした。しかし、他のサーバー チームがコマンドレットの作成を開始するにつれ、1 つの問題があることが明らかになりました。Exchange に Set-User という名前のコマンドレット (実在する) が含まれる場合、ユーザー プロパティを設定するコマンドレットが必要な他のチームはどうしたらよいのでしょうか?(コマンドレット名は一意でなければなりません。)解決策は、プレフィックスを使用するというものでした。この結果、Set-MsolUser、Set-CsUser、および Set-SPOSiteUser という名前のコマンドレットが存在するようになったのです。

いずれにしても、「Get-MsolUser」を実行すると、次のような情報が返されます。

UserPrincipalName                     DisplayName           isLicensed
-----------------                     -----------           ----------
ZrinkaM@litwareinc.onmicrosoft.com    Zrinka Makovac        True
BonnieK@litwareinc.onmicrosoft.com    Bonnie Kearney        True
FabriceC@litwareinc.onmicrosoft.com   Fabrice Canel         True
BrianJ@litwareinc.onmicrosoft.com     Brian Johnson         False 
AnneWlitwareinc.onmicrosoft.com       Anne Wallace          True

これらはすべて、Office 365 のユーザーです。

では、ライセンス未付与のユーザー、つまり、Office 365 に追加されているものの、どのソフトウェア アプリケーションのライセンスも付与されていないユーザーの一覧を表示するとしましょう。これも難しいことではありません。

Get-MsolUser -UnlicensedUsersOnly

もう一度、Get-MsolUser コマンドレットを呼び出しますが、今回は UnlicensedUsersOnly パラメーターを追加します。名前が示すように、このパラメーターは、返されるデータをライセンスが発行されていないユーザーに制限します。

UserPrincipalName                     DisplayName           isLicensed
-----------------                     -----------           ----------
BrianJ@litwareinc.onmicrosoft.com     Brian Johnson         False
ScottW@litwareinc.onmicrosoft.com     Scott Wallace         False

よくできていますね。

Windows PowerShell は火星人が作ったコンピューター言語ではないかと言われているのも事実です。多くのユーザーは Windows PowerShell と聞くと、次のようなコマンドを想像します。

gc test.txt | sort {[int]$_} |% {$i = 1}{while ($i -lt $_){$i;$i++};$i++}

確かに、言いにくいことですが、このコマンドは少し気が利かないですね。これに対し、Office 365 のライセンスが付与されていないユーザーだけを返すコマンドについて先ほど説明しました。これを行うために、Get-MsolUser というコマンドレットと、UnlicensedUsersOnly というパラメーターを次のように使用しました。

Get-MsolUser -UnlicensedUsersOnly

そして、このコマンドを実行すると、ライセンス未付与のユーザーだけが返されました。

これらのことから、Windows PowerShell は、ユーザーが望むとおりに暗号めいたものにも、明快で率直なものにもなるということが分かります。

ユーザー アカウントから返すプロパティ値の選択

Windows PowerShell は、必要に応じた処理を行えるようにするものです。たとえば、前に説明したように、Get-MsolUser コマンドレットを実行すると、以下の 3 つのプロパティ値が返されます。

  • UserPrincipalName

  • DisplayName

  • isLicensed

それは良いですね。しかし、本当に見たいものがユーザーの表示名や所属部門、およびユーザーが Office 365 サービスを「消費」する国または地域である場合はどうなりますか。その後どうなりますか。

注意

「消費」という言葉が最もふさわしい言葉でないことは認めますが、用語については気にしないでください。UsageLocation プロパティは、ユーザーが通常 Office 365 を使用する地理的な位置を意味します。地理的な位置は、非常に重要です。Office 365 のライセンス、ポリシー、および使用可能な機能は、この位置に基づいてある程度決まってくるためです。

既に説明したように、Get-MsolUser で表示されるのは、この例で必要としているプロパティのうち DisplayName のみです。私たちは運が悪いようにも思えますが、

いいでしょう。以下のコマンドを実行すれば、そんなことはありません。

Get-MsolUser | Select-Object DisplayName, Department, UsageLocation

このコマンドは、以下の結果を返します。

DisplayName             Department                       UsageLocation
-----------             ----------                       -------------
Zrinka Makovac          Sales & Marketing                US
Bonnie Kearney          Sales & Marketing                US
Fabrice Canel           Legal                            US
Brian Johnson
Anne Wallace            Executive Management             US
Alex Darrow             Sales & Marketing                US
David Longmuir          Operations                       US

これは概要を説明するための記事なので、今日のところは、このコマンドの仕組みを完全に説明することはしません。Select-Object コマンドレット (Windows PowerShell 3.0 に同梱) では、コマンドレットにどのプロパティを返させるかを選択できるとだけ言っておきます。UsageLocation プロパティの値だけを確認したいとしたら、Select-Object に、この特定のプロパティだけを返すように指示できます。

Get-MsolUser | Select-Object DisplayName

Select-Object では、1 つの項目のすべて のプロパティ値を返すこともできます。以下のコマンドを実行すると、どのような結果になるかを見てください。

Get-MsolUser | Select-Object *

コマンドレットはある項目の利用可能なすべての情報を常に返すとは限らないため、このコマンドレットは重宝します。Get-MsolUser に、あるユーザーに関するすべての情報を返させる場合は、以下のようなコマンドを使用します。

Get-MsolUser -UserPrincipalName "BelindaN@litwareinc.onmicosoft.com" | Select-Object *

さらに、利用場所が特定されていないユーザーに関する情報を返す便利なコマンドもあります。(このようなユーザーに対しては、利用場所が設定されるまで特定の操作を実行できないため、これは重要です。)そのコマンドは、以下のとおりです。

Get-MsolUser | Where-Object {$_.UsageLocation -eq $Null} | Select-Object DisplayName, Department, UsageLocation

このコマンドは、以下のデータを返します。

DisplayName              Department                      UsageLocation
-----------              ----------                      -------------
Brian Johnson 
Scott Wallace            Operations

現在 UsageLocation プロパティが設定されていないユーザーは、この 2 人だけです。

ユーザー アカウントのプロパティ値の構成

ここまで、Windows PowerShell を使用して情報を取得する方法を見てきました。さらに良いのは、Azure Active Directory コマンドレットを使用して情報を構成することもできるという事実です。Belinda Newman は、フランスに引っ越したため、利用場所を FR (フランスの ISO (国際標準化機構) コード) に設定する必要があるとします。いいですか。

Set-MsolUser -UserPrincipalName "BelindaN@litwareinc.onmicosoft.com" -UsageLocation "FR"

これがいかに簡単かわかるでしょう。Get-MsolUser コマンドレットが UsageLocation という名前のプロパティを返すことはすでに知っています。そのプロパティ値を設定するにはどうしたらいいでしょう。対応する Set-MsolUser コマンドレットと、そうです、UsageLocation パラメーターを使用するだけです。

Set-MsolUser -UserPrincipalName "BelindaN@litwareinc.onmicosoft.com" -UsageLocation "FR"

難しいことは何 1 つありません。

すばらしいと言ってもいいでしょう。すべてのユーザーがフランスに引っ越したとします。その場合は、次のようにします。

Get-MsolUser | Set-MsolUser -UsageLocation "FR"

この場合は、Get-MsolUser コマンドレットを使用してすべてのユーザー アカウントを取得します。その後で、その情報を Set-MsolUser コマンドレットに「パイプ」します。コマンド内に次のような小さなパイプ区切り文字が含まれているのを確認してください。

|

Windows PowerShell コマンドにパイプ文字が含まれている場合は、1 つ目のコマンドレット (Get-MsolUser) を使用して取得した情報のすべてを 2 つ目のコマンドレット (Set-MsolUser) にそのまま渡すことを意味します。この例では、Set-MsolUser を使用してすべてのユーザー アカウントを取得して、UsageLocation プロパティを FR に設定しています。

自分で言うのも何ですが、悪くないでしょ。

注意

そのとおり。言うは易しです。でも、ご心配なく。Windows PowerShell と パイプ処理およびパイプラインの使用に関する優れた入門書があります。

Office 365 ユーザー ライセンスの操作

すでに述べたように、Azure コマンドレットを使用すれば、さまざまな処理を実行できます。たとえば、次のコマンドは所有している Office 365 ライセンスの数だけでなく、配布すべきライセンスの数に関する情報を返します。

Get-MsolAccountSku

次のようなデータが返されます。

AccountSkuId                 ActiveUnits   WarningUnits  ConsumedUnits
------------                 -----------   ------------   ------------
litwareinc:ENTERPRISEPACK    25            0              25

このサンプル データでは、litwareinc ドメインから 25 のライセンス (ActiveUnits) が発行されており、現在、25 すべてのライセンスがユーザー (ConsumedUnits) に割り当てられています。

すばらしい。もちろん、個人ユーザーに割り当てられたライセンスを表示できたらもっと良くなります。ここでは、詳しい説明は省いて、Ken Myer に割り当てられているライセンスを見つける方法について説明します。

Get-MsolUser -UserPrincipalName "kenmyer@litwareinc.onmicrosoft.com" | Select-Object -ExpandProperty Licenses | Select-Object -ExpandProperty ServiceStatus

それでは、非常に複雑なコマンドのため、概要だけ説明します。このコマンドでは最初に Get-MsolUser を使用して、ユーザー kenmyer@litwareinc.onmicrosoft.com に関する情報を戻します。次に、その情報を Select-Object コマンドレットにパイプ処理し、ExpandProperty パラメーターを使用して Licenses プロパティを「展開」します。この操作を行うのは、Licenses が多値プロパティだからです。つまり、複数の値 (この場合は複数のライセンス) が含まれているため、確実にすべてのライセンスを操作する必要があります。次に、ライセンス情報を Select-Object にパイプして、ServiceStatus プロパティを拡張し、各ライセンスに関する詳細情報を入手します。

注意

この概要説明ではよくわからない場合は、「マルチ プロパティ値に関する記事」を参照してください。

最終的に、次のような結果が得られるはずです。

ServicePlan                      ProvisioningStatus
-----------                      ------------------
YAMMER_ENTERPRISE                None
RMS_S_ENTERPRISE                 Success
OFFICESUBSCRIPTION               Success
MCOSTANDARD                      Success
SHAREPOINTWAC                    Success
SHAREPOINTENTERPRISE             Success
EXCHANGE_S_ENTERPRISE            Success

確かに、一見しただけでは何がどうなっているのか理解できないかもしれません。幸い、思ったほど使いにくいわけではありません。ServicePlan プロパティには、ライセンスのコレクションが含まれています (組織内で使用可能なライセンスは購入した Office 365 プランによって異なります)。ServicePlan プロパティの値は次のようになります。

インデックス番号 サービス プラン 製品

0

YAMMER_ENTERPRISE

Yammer

1

RMS_S_ENTERPRISE

Windows Azure Active Directory

2

OFFICESUBSCRIPTION

Office Professional Plus

3

MCOSTANDARD

Lync

4

SHAREPOINTWAC

Office Web Apps

5

SHAREPOINTNETERPRISE

SharePoint

6

EXCHANGE_S_ENTERPRISE

exchange

さらに、ProvisioningStatus プロパティはライセンスが割り当てられているかどうかを示します。

  • なし ライセンスが割り当てられていないことを意味します。

  • 成功 ライセンスが割り当てられていることを意味します。

  • 無効 ライセンスは割り当てられているが無効になっていることを意味します。

ご覧のように、Ken Myer には Yammer 以外のすべての使用可能なライセンスが割り当てられています。

注意

上の表内のインデックス番号とは何ですか。インデックス番号はサービス プランのもう 1 つの識別子です。従来の優れたコンピュータープログラミングに基づいて、このようなコレクション内の最初のアイテムにはインデックス番号 0 が割り当てられます。そのため、YAMMER_ENTERPRISE のインデックス番号は 0 となります。コレクション内の 2 番目のアイテムにはインデックス番号 1 が割り当てられ、3 番目のアイテムにはインデックス番号 2 が割り当てられ、以後同じように続きます。いずれわかりますが、これらの番号は、Yammer ライセンスを持っているすべてのユーザー、または、Yammer ライセンスを持っていないすべてのユーザーを表示するためなどに使用できます。

これらのライセンスの割り当てを変更することはできますか。たとえば、Ken が Exchange と Lync Online を使用できないようにできますか。もちろんできます。ここでも、この操作の説明はしません。別の日のトピックとして残しておきます。ただし、Office 365 では、無効にするライセンスを指定することによって、ライセンスを管理 (部分的に) できます。これは、次のように、新しいライセンス オプション オブジェクトを作成することによって実現されます。

$disabledLicenses = New-MsolLicenseOptions -AccountSkuId "litwareinc:ENTERPRISEPACK" -DisabledPlans "MCOSTANDARD","EXCHANGE_S_ENTERPRISE"

ここで実行するのは、litwareinc ドメイン (Enterprise ライセンス パックを購入済み) に対して、Lync (MCOSTANDARD) と Exchange (EXCHANGE_S_ENTERPRISE) という 2 つのプランを無効にすることだけです。このコマンドは、単独では、どのユーザーのライセンスも無効にしないことに注意してください。代わりに、Lync と Exchange の両方が無効になっている汎用ユーザー ライセンスを作成します。この汎用ユーザー ライセンスを取得して、実在するユーザーに割り当てることができます。

Set-MsolUserLicense -UserPrincipalName "kenmyer@litwareinc.onmicrosoft.com" -LicenseOptions $disabledLicenses

このコマンドを実行してから、Ken のユーザー ライセンスをもう一度見ると、次のように表示されるはずです。

ServicePlan                      ProvisioningStatus
-----------                      ------------------
YAMMER_ENTERPRISE                None
RMS_S_ENTERPRISE                 Success
OFFICESUBSCRIPTION               Success
MCOSTANDARD                      Disabled
SHAREPOINTWAC                    Success
SHAREPOINTENTERPRISE             Success
EXCHANGE_S_ENTERPRISE            Disabled

ほら。Exchange と Lync Online の両方が無効になっています。

複数のユーザーの Office 365 ライセンス情報の表示

確かに、Office 365 ユーザー ライセンスは少し複雑だと言えます。しかし、これは Office 365 とは無関係です。というのも、少し複雑なのは Office 365 のユーザー ライセンスの方だからです。Office 365 ではさまざまなライセンス パックが利用でき、自分に合っていると思う、希望する数の個別の製品ライセンスにユーザーを割り当てることができます。そのすべてを追跡するのは容易ではありません。これは、Office 365 管理センターで許可されているのが、一度に 1 人のユーザーのライセンス詳細を表示することだけであるという事実からも明らかです。Lync Online のライセンスが割り当てられているすべてのユーザーの一覧が必要ですか?もちろん、必要でしょう。残念ながら、管理センターはそれをすぐに提供することはできません。

しかし、Windows PowerShell なら、それが可能です。「Office 365 ユーザー ライセンスの操作」セクションで説明したインデックス番号のことを覚えているでしょうか?もしそうであれば、ライセンス パック Lync Online にはインデックス番号 3 が含まれていたことも覚えているでしょう。つまり、次のような非常に暗号めいたコード行を使用することで、Lync Online のライセンスが発行されているすべてのユーザーの一覧を返すことができるのです。

Get-MsolUser | Where-Object {$_.isLicensed -eq $true -and $_.Licenses[0].ServiceStatus[3].ProvisioningStatus -ne "Disabled"}

確かに、このコード行は少し複雑です。しかし、返したいと思っている情報を返します。

UserPrincipalName                     DisplayName           isLicensed
-----------------                     -----------           ----------
ZrinkaM@litwareinc.onmicrosoft.com    Zrinka Makovac        True
FabriceC@litwareinc.onmicrosoft.com   Fabrice Canel         True
AnneW@litwareinc.onmicrosoft.com      Anne Wallace          True
AlexD@litwareinc.onmicrosoft.com      Alex Darrow           True

次のように、Lync Online のライセンスが発行されていないすべてのユーザーの一覧を返すこともできます。

Get-MsolUser | Where-Object {$_.isLicensed -eq $true -and $_.Licenses[0].ServiceStatus[3].ProvisioningStatus -ne "Enabled"}

先ほどとは全く異なるユーザーの一覧が返されます。

UserPrincipalName                     DisplayName           isLicensed
-----------------                     -----------           ----------
BonnieK@litwareinc.onmicrosoft.com    Bonnie Kearney        True
BrianJ@litwareinc.onmicrosoft.com     Brian Johnson         False

では、Lync Online ライセンスに関する情報が必要でない場合はどうでしょうか。また、SharePoint Online ライセンスに関する情報が必要な場合はどうでしょうか?ライセンス表に戻ってみると、SharePoint Online ライセンスにはインデックス番号 5 が含まれているのが分かります。先ほどのコード例では、ServiceStatus プロパティを指定したときにインデックス番号 3 (Lync Online のインデックス番号) を使用しました。

Get-MsolUser | Where-Object {$_.isLicensed -eq $true -and $_.Licenses[0].ServiceStatus[3].ProvisioningStatus -ne "Disabled"}

SharePoint Online ライセンスを返すには、次のように 3 を 5 に置き換えます。

Get-MsolUser | Where-Object {$_.isLicensed -eq $true -and $_.Licenses[0].ServiceStatus[5].ProvisioningStatus -ne "Disabled"}

本当に簡単です。

詳細については、記事「Office 365 ワークロードのライセンス ユーザー」を参照してください。Windows PowerShell を使用して利用可能なライセンス オプションについて習得するのは、少し努力のいることでしょうか?確かに努力がいります。では、Windows PowerShell を使用して、利用可能なライセンス オプションを上手に活用できるのであれば、その少しの努力を払う価値がありますか?それを決めるのはあなたです。

でも、価値はあります。

位置パラメーターと Office 365 に関する簡単な注意

Azure Active Directory のコマンドレットは、少なくとも個別のユーザー アカウントを対象とした作業を行う場合に、Exchange や Lync Online のコマンドレットと異なります。たとえば、Lync Online や Get-CsOnlineUser コマンドレットでは、コマンド内に Identity パラメーターを含めることも除外することもきます。つまり、以下の 2 つのコマンドはどちらも機能し、どちらもまったく同じ情報を返します。

Get-CsOnlineUser -Identity "kenmyer@litwareinc.onmicrosoft.com"
Get-CsOnlineUser "kenmyer@litwareinc.onmicrosoft.com"

しかし Azure Active Directory のコマンドレットの場合は、これが当てはまりません。次のコマンドは機能します。

Get-MsolUser -UserPrincipalName "kenmyer@litwareinc.onmicrosoft.com"

注意

Get-MsolUser には Identity パラメーターがないので、ここでは UserPrincipalName パラメーターを使用しています。

しかし次のコマンドは機能しません。

Get-MsolUser "kenmyer@litwareinc.onmicrosoft.com"

なぜでしょうか?技術的な詳細情報は省略しますが、Lync Online および Exchange の多くのコマンドレットでは、Identity パラメーターが「位置パラメーター」として構成されています。つまり (いずれにしても上記のケースでは)、パラメーター名 (–Identity など) を指定しない場合、コマンドレットはコマンド内の最初のパラメーターを Identity パラメーターと推定します。最初の位置にユーザー ID を指定していれば、–Identity パラメーターは使用することも使用しないこともできます。次のどちらも機能します。

Get-CsOnlineUser -Identity "kenmyer@litwareinc.onmicrosoft.com"
Get-CsOnlineUser "kenmyer@litwareinc.onmicrosoft.com"

しかし、Azure Active Directory のコマンドレットでは位置パラメーターがサポートされません。付随するパラメーターを指定しないで値を含めるとします。

Get-MsolUser "kenmyer@litwareinc.onmicrosoft.com"

その場合は、次のようなエラー メッセージが表示されます。

Get-MsolUser : A positional parameter cannot be found that accepts argument 'kenmyer@litwareinc.onmicrosoft.com'.

Exchange と Lync Online では、いくつかの異なる方法でユーザーを参照できることにも注目してください。たとえば、以下の Exchange コマンドはすべて、同じメールボックス情報を返します。

Get-Mailbox -Identity "Ken Myer"
Get-Mailbox -Identity "kenmyer@litwareinc.onmicrosoft.com"
Get-Mailbox -Identity "kenmyer"

これらのコマンドは、それぞれユーザーの Active Directory 表示名、ユーザー プリンシパル名、電子メール エイリアスを使用しています。これらの ID は、いずれも機能します。ただし、そのようになるのは Exchange や Lync Online での場合です。ほとんどの場合に、Azure Active Directory では、ユーザー プリンシパル名を使用すること、そしてユーザー プリンシパル名のみを使用することが必要になります。

Get-MsolUser -UserPrincipalName "kenmyer@litwareinc.onmicrosoft.com"

注意

ObjectId パラメーターを使用することも技術的には可能です。しかし、そのためには、ユーザー アカウントに割り当てられた GUID (グローバル一意識別子) を入力する必要があります。たとえば、
Get-MsolUser –ObjectId "62e90394-69f5-4237-9190-012177145e10"
UserPrincipalName または ObjectId のどちらを使用するか、お好きに決めてください。

たしかに、少なくとも Windows PowerShell の初心者にとっては、これは難解な内容です。Windows PowerShell の初心者である場合は、「パラメーターの操作」の入門用の記事を参照してみてください。

関連項目

Windows PowerShell で Office 365 を管理するための最善の方法