V1 モジュール - MFA を使用してセキュリティ & コンプライアンス PowerShell に接続する
注意
この記事で説明する古いExchange Onlineリモート PowerShell モジュールのサポートは、2022 年 8 月 31 日に終了します。 このバージョンのモジュールを使用して Security & Compliance PowerShell に接続する機能は、2022 年 12 月 31 日に終了します。
Exchange Online PowerShell V2 モジュール (EXO V2 モジュール) を使用することをお勧めします。これは最新の認証のみを使用し、MFA の有無にかかわらずアカウントをサポートします。 インストールと接続の手順については、「 EXO V2 モジュールのインストールと保守」と 「 セキュリティ&コンプライアンス PowerShell への接続」を参照してください。 Exchange Online PowerShell モジュールのさまざまなバージョンの詳細については、「PowerShell モジュールと Basic Auth の異なるバージョンExchange Online理解する」を参照してください。
アカウントで多要素認証 (MFA) またはフェデレーション認証を使用している場合は、「 Basic auth - セキュリティへの接続&コンプライアンス PowerShell 」の手順を使用して、リモート PowerShell を使用してセキュリティ &コンプライアンス PowerShell に接続することはできません。 代わりに、Exchange Onlineリモート PowerShell モジュールをインストールし、Connect-IPPSSession コマンドレットを使用して Security & Compliance PowerShell に接続する必要があります。
注:
委任されたアクセス許可 (DAP) パートナーは、この記事の手順を使用して、Security & Compliance PowerShell の顧客テナント組織に接続することはできません。 MFA とExchange Onlineリモート PowerShell モジュールは、委任された認証では機能しません。
Exchange Onlineリモート PowerShell モジュールは、PowerShell Core (macOS、Linux、または Windows Nano Server) ではサポートされていません。 回避策として、サポートされているバージョンの Windows (物理または仮想) を実行しているコンピューターにモジュールをインストールし、リモート デスクトップ ソフトウェアを使用して接続できます。
はじめに把握しておくべき情報
予想所要時間 : 5 分
接続後、アクセスできるまたはアクセスできないコマンドレットとパラメーターは、役割ベースのアクセス制御 (RBAC) によって制御されます。 詳細については、「接続した後、アクセス権を持っている、またはアクセスできないコマンドレットとパラメーターは、ロールベースのアクセス制御 (RBAC) によって制御される」を参照してください。 詳細については、「Microsoft 365 Defender ポータルのアクセス許可」 および 「Microsoft Purview コンプライアンス ポータルのアクセス許可」 を参照してください。
次の Windows のバージョンを使用できます。
- Windows 10
- Windows 8.1
- Windows Server 2019
- Windows Server 2016
- Windows Server 2012 または Windows Server 2012 R2
- Windows 7 Service Pack 1 (SP1)*
- Windows Server 2008 R2 SP1*
* このバージョンの Windows はサポートが終了しており、Azure 仮想マシンでのみサポートされます。 このバージョンの Windows を使用するには、Microsoft .NET Framework 4.5 以降をインストールしてから、Windows Management Framework の更新されたバージョン (3.0、4.0、5.1 のいずれか 1 つ) をインストールする必要があります。 詳細については、「.NET Framework、Windows Management Framework 3.0、Windows Management Framework 4.0、および Windows Management Framework 5.1をインストールする」を参照してください。
WinRM は基本認証を許可する必要があります (既定で有効になっています)。ユーザー名とパスワードの組み合わせは送信しませんが、クライアント側の WinRM 実装は OAuth をサポートしていないため、セッションの OAuth トークンを転送するには基本認証ヘッダーが必要です。
注:次のコマンドを実行するには、WinRM を一時的に有効にする必要があります。 次のコマンドを実行して有効にできます
winrm quickconfig。WinRM で基本認証が有効になっていることを確認するには、コマンド プロンプトで(Windows PowerShell ではなく)、次のコマンドを実行します:
winrm get winrm/config/client/authBasic = trueの値が表示されない場合は、コマンド プロンプトで(Windows PowerShell ではなく)、次のコマンドを実行して WinRM の基本認証を有効にする必要があります:winrm set winrm/config/client/auth @{Basic="true"}注: Windows PowerShell でコマンドを実行する場合は、コマンドのこの部分を引用符で囲みます:
'@{Basic="true"}'。WinRM で基本認証が無効になっている状態で接続しようとすると、次のエラーが表示されます。
WinRM クライアントは要求を処理できません。 現在、基本認証はクライアント構成で無効になっています。 クライアント構成を変更して、要求を再試行してください。
Exchange Online リモート PowerShell モジュールをインストールする
注意
Exchange Onlineリモート PowerShell モジュールは、PowerShell Core (macOS、Linux、または Windows Nano Server) ではサポートされていません。 回避策として、サポートされているバージョンの Windows (物理または仮想) を実行しているコンピューターにモジュールをインストールし、リモート デスクトップ ソフトウェアを使用して接続できます。
インストールされているバージョンの Exchange Online Remote PowerShell モジュールに Connect-IPPSSession コマンドレットがない場合は、モジュールの最新バージョンをインストールする必要があります。
ClickOnce をサポートするブラウザー (Internet Explorer や Edge など) で次の手順を実行する必要があります。
注: ClickOnce のサポートは、Chromium ベースのバージョンの Edge でedge://flags/#edge-click-once使用でき、既定では有効になっていない可能性があります。
Exchange 管理センター (EAC) を開きます。 手順については、Exchange Onlineの Exchange 管理センターに関する記事を参照してください。
EAC で ハイブリッド > セットアップ に移動し、適切な [構成] ボタンをクリックして、多要素認証用のExchange Onlineリモート PowerShell モジュールをダウンロードします。
![EAC の [ハイブリッド] タブからExchange Online PowerShell モジュールをダウンロードします。](../docs-conceptual/media/24645e56-8b11-4c0f-ace4-09bdb2703562.png?view=exchange-ps)
表示される [アプリケーションのインストール] ウィンドウで、[インストール] をクリックします。
![[Exchange Online PowerShell モジュール] ウィンドウで [インストール] をクリックします。](../docs-conceptual/media/0fd389a1-a32d-4e2f-bf5f-78e9b6407d4c.png?view=exchange-ps)
MFA またはフェデレーション認証を使用してセキュリティ & コンプライアンス PowerShell に接続する
ローカル コンピューターで、Exchange Onlineリモート PowerShell モジュール (Microsoft Corporation > Microsoft Exchange Online Remote PowerShell モジュール) を開きます。
実行する必要があるコマンドでは、次の構文を使用します。
Connect-IPPSSession -UserPrincipalName <UPN> [-ConnectionUri <ConnectionUri> -AzureADAuthorizationEndPointUri <AzureADUri>]<UPN> は Microsoft 365 の職場または学校アカウントです。
値と <AzureADUri> 値は <ConnectionUri>、次の表に示すように、Microsoft 365 組織の場所によって異なります。
Microsoft 365 のサービス ConnectionUri パラメーター値 AzureADAuthorizationEndPointUri パラメーター値 Microsoft 365 不使用 不使用 Office 365 Germany https://ps.compliance.protection.outlook.de/PowerShell-LiveIDhttps://login.microsoftonline.de/commonMicrosoft 365 GCC High https://ps.compliance.protection.office365.us/powershell-liveid/https://login.microsoftonline.us/commonMicrosoft 365 DoD https://l5.ps.compliance.protection.office365.us/powershell-liveid/https://login.microsoftonline.us/commonこの例では、アカウント chris@contoso.com を使用して、Microsoft 365 の Security & Compliance PowerShell に接続します。
Connect-IPPSSession -UserPrincipalName chris@contoso.comこの例では、アカウント lukas@fabrikam.com を使用して、Office 365 ドイツの Security & Compliance PowerShell に接続します。
Connect-IPPSSession -UserPrincipalName lukas@fabrikam.com -ConnectionUri https://ps.compliance.protection.outlook.de/PowerShell-LiveID -AzureADAuthorizationEndPointUri https://login.microsoftonline.de/common表示されるサインイン ウィンドウで、パスワードを入力し、[サインイン] をクリックします。

MFA の場合、アカウントに対して構成された検証応答オプション (携帯電話のテキスト メッセージや Azure Authenticator アプリなど) に基づいて検証コードが生成され、配信されます。
(MFA のみ): 開いた確認ウィンドウで、確認コードを入力し、[ サインイン] をクリックします。

(省略可能): 同じウィンドウで Exchange Online PowerShell モジュール セッションに接続する場合は、次のコマンドを実行する必要があります。
$EXOSession=New-ExoPSSession -UserPrincipalName <UPN> [-ConnectionUri <ConnectionUri> -AzureADAuthorizationEndPointUri <AzureADUri>]次に、特定のプレフィックスを使用して、Exchange Online セッションを現在のセッションにインポートします。
Import-PSSession $EXOSession -Prefix EXO
正常な動作を確認する方法
サインインすると、Security & Compliance PowerShell コマンドレットがExchange Onlineリモート PowerShell モジュール セッションにインポートされ、進行状況バーによって追跡されます。 何もエラーが表示されなければ、正常に接続されています。 クイック テストでは、Security & Compliance PowerShell コマンドレット ( Get-RetentionCompliancePolicy など) を実行し、結果を確認します。
エラーが表示された場合は、次の要件を確認します。
サービス拒否 (DoS) 攻撃を防ぐため、セキュリティ/コンプライアンス PowerShell に対して開かれるリモート PowerShell 接続は 5 つに制限されます。
Security & Compliance PowerShell への接続に使用するアカウントは、リモート PowerShell に対して有効にする必要があります。 詳細については、「Exchange Online PowerShell へのアクセスを有効または無効にする」を参照してください。
ローカル コンピューターと Microsoft 365 の間に TCP ポート 80 トラフィックを開く必要があります。このポートは多くの場合開いているはずですが、組織で厳格なインターネット アクセス ポリシーが使用されている場合は、念のために確認する必要があります。
接続要求中にクライアント IP アドレスが変更された場合 、Connect-IPPSSession コマンド (手順 2) で接続できないことがあります。 これは、組織が複数の IP アドレスを含むソース ネットワーク アドレス変換 (SNAT) プールを使用している場合に発生する可能性があります。 この接続エラーは次のようになります。
The request for the Windows Remote Shell with ShellId <ID> failed because the shell was not found on the server. Possible causes are: the specified ShellId is incorrect or the shell no longer exists on the server. Provide the correct ShellId or create a new shell and retry the operation.この問題を解決するには、単一の IP アドレスを含む SNAT プールを使用するか、セキュリティ/コンプライアンス PowerShell エンドポイントへの接続に特定の IP アドレスを強制的に使用します。