セキュリティ/コンプライアンス センター PowerShell に接続する

Exchange Online PowerShell V2 モジュール (EXO V2 モジュールと省略されています) は、先進認証を使用し、Microsoft 365 のすべての Exchange 関連 PowerShell 環境 (Exchange Online PowerShell、セキュリティ/コンプライアンス PowerShell、およびスタンドアロン型 Exchange Online Protection (EOP) PowerShell) に接続するために多要素認証 (MFA) と連携します。 EXO V2モジュールの詳細については、「Exchange Online PowerShell V2 モジュールについて」をご覧ください。

この記事では、MFA の有無にかかわらず、EXO V2 モジュールを使用して、セキュリティ/コンプライアンス センター PowerShell に接続する方法について説明します。

最終的に廃止される、以前の、安全性の低いリモート PowerShell の接続手順を使用するには、「基本的な認証 - セキュリティ/コンプライアンス センター PowerShell に接続する」を参照してください。

以前の Exchange Online リモート PowerShell モジュールを使用して、MFA を使用するセキュリティ/コンプライアンス センター PowerShell に接続するには、「V1 モジュール - MFA を使用してセキュリティ/コンプライアンス センター PowerShell に接続する」を参照してください。 この以前のバージョンのモジュールは最終的に廃止されることにご注意ください。

はじめに把握しておくべき情報

MFA および先進認証を使用してセキュリティ/コンプライアンス センター PowerShell に接続する

ご利用のアカウントで多要素認証を使用している場合は、このセクションの手順を使用します。 それ以外の場合は、「先進認証を使用してセキュリティ/コンプライアンス センター PowerShell に接続する」セクションにスキップします。

  1. Windows PowerShell ウィンドウで、次のコマンドを実行して EXO V2 モジュールを読み込みます。

    Import-Module ExchangeOnlineManagement
    

    : すでに、EXO V2 モジュールをインストール している場合は、前のコマンドは表示のとおり機能します。

  2. 実行する必要がある最後のコマンドでは、次の構文を使用します。

    Connect-IPPSSession -UserPrincipalName <UPN> [-ConnectionUri <URL>] [-PSSessionOption $ProxyOptions]
    
    • <UPN> は、ユーザー プリンシパル名の形式 (navin@contoso.comなど) のアカウントです。
    • 必須の ConnectionUri の値は、Microsoft 365 組織の種類によって異なります。 詳細については、Connect-IPPSSession パラメーターの説明をご覧ください。
    • UserPrincipalName パラメーターを使用する場合、要求される場合以外の環境で AzureADAuthorizationEndpointUri パラメーターを使う必要はありません。
    • プロキシ サーバーを使用している場合は、最初に次のコマンドを実行します。$ProxyOptions = New-PSSessionOption -ProxyAccessType <Value>: このコマンドの <Value> は、IEConfigWinHttpConfigAutoDetect のいずれかです。 次に、値 $ProxyOptions を指定して、PSSessionOption パラメーターを使用します。 詳細については、「New-PSSessionOption」を参照してください。

    この例では、Microsoft 365 または Microsoft 365 GCC 組織でセキュリティ/コンプライアンス センター PowerShell に接続します

    Connect-IPPSSession -UserPrincipalName navin@contoso.com
    

    この例では、Office 365 Germany 組織でセキュリティ/コンプライアンス センター PowerShell に接続します

    Connect-IPPSSession -UserPrincipalName lukas@fabrikam.de -ConnectionUri https://ps.compliance.protection.outlook.de/PowerShell-LiveID
    

    この例では、Microsoft GCC High 組織でセキュリティ/コンプライアンス センター PowerShell に接続します

    Connect-IPPSSession -UserPrincipalName -ConnectionUri https://ps.compliance.protection.office365.us/powershell-liveid/
    

    この例では、Microsoft 365 DoD 組織でセキュリティ/コンプライアンス センター PowerShell に接続します

    Connect-IPPSSession -UserPrincipalName -ConnectionUri https://l5.ps.compliance.protection.office365.us/powershell-liveid/
    

詳細な構文とパラメーターについては、「Connectt-IPPSSession」を参照してください。

注意

完了した時点でリモート PowerShell セッションを切断してください。セッションを切断せずに Windows PowerShell ウィンドウを閉じると、使用可能なリモート PowerShell セッションがすべて消費される可能性があるため、セッションの有効期限が切れるまで待つ必要があります。リモート PowerShell セッションを切断するには、次のコマンドを実行します。

Disconnect-ExchangeOnline

先進認証を使用してセキュリティ/コンプライアンス センター PowerShell に接続する

アカウントが多要素認証を使用していない場合は、このセクションの手順を使用します。

  1. Windows PowerShell ウィンドウで、次のコマンドを実行して EXO V2 モジュールを読み込みます。

    Import-Module ExchangeOnlineManagement
    

    : すでに、EXO V2 モジュールをインストール している場合は、前のコマンドは表示のとおり機能します。

  2. 次のコマンドを実行します。

    注意

    この手順は省略できます。Connect-IPPSSession コマンドを実行した後にユーザー名とパスワードの入力を求めるメッセージが表示されるようにするには、次の手順で Credential パラメーターを省略します。 次の手順で Credential パラメーターを省略し、UserPrincipalName パラメーターを含めると、Connect-IPPSSession コマンドの実行後に、パスワードの入力を求めるメッセージのみが表示されます。

    $UserCredential = Get-Credential
    

    [Windows PowerShell 資格情報の要求] ダイアログ ボックスで、職場または学校のアカウントとパスワードを入力してから [OK] をクリックします。

    : Connect-IPPSSession コマンドが完了すると、$UserCredential のパスワード キーが空になります。

  3. 実行する必要があるコマンドでは、次の構文を使用します。

    Connect-IPPSSession [-Credential $UserCredential] [-ConnectionUri <URL>] [-AzureADAuthorizationEndpointUri <URL>] [-PSSessionOption $ProxyOptions]
    
    • 必須の ConnectionUri および AzureADAuthorizationEndPointUri の値は、Microsoft 365 組織の種類によって異なります。 詳細については、Connect-IPPSSession のパラメーターの説明をご覧ください。
    • プロキシ サーバーを使用している場合は、New-PSSessionOption コマンドレットの出力を変数 ($ProxyOptions = New-PSSessionOption -ProxyAccessType <Value> [-ProxyAuthentication <Value>] [-ProxyCredential <Value>] など) に格納します。 次に、PSSessionOption パラメーターの値として変数 ($ProxyOptions) を使用します。

    この例では、Microsoft 365 または Microsoft 365 GCC 組織でセキュリティ/コンプライアンス センター PowerShell に接続します

    Connect-IPPSSession -Credential $UserCredential
    

    この例では、Office 365 Germany 組織でセキュリティ/コンプライアンス センター PowerShell に接続します

    Connect-IPPSSession -Credential $UserCredential -ConnectionUri https://ps.compliance.protection.outlook.de/ -AzureADAuthorizationEndpointUri https://login.microsoftonline.de/common
    

    この例では、Microsoft GCC High 組織でセキュリティ/コンプライアンス センター PowerShell に接続します

    Connect-IPPSSession -Credential $UserCredential -ConnectionUri https://ps.compliance.protection.office365.us/powershell-liveid/ -AzureADAuthorizationEndpointUri https://login.microsoftonline.us/common
    

    この例では、Microsoft 365 DoD 組織でセキュリティ/コンプライアンス センター PowerShell に接続します

    Connect-IPPSSession -Credential $UserCredential -ConnectionUri https://l5.ps.compliance.protection.office365.us/powershell-liveid/ -AzureADAuthorizationEndpointUri https://login.microsoftonline.us/common
    

詳細な構文とパラメーターについては、「Connectt-IPPSSession」を参照してください。

注意

完了した時点でリモート PowerShell セッションを切断してください。 セッションを切断せずに Windows PowerShell ウィンドウを閉じると、使用可能なリモート PowerShell セッションがすべて消費される可能性があるため、セッションの有効期限が切れるまで待つ必要があります。 リモート PowerShell セッションを切断するには、次のコマンドを実行します。

Disconnect-ExchangeOnline

正常な動作を確認する方法

セキュリティ/コンプライアンス センターのコマンドレットがローカル Windows PowerShell セッションにインポートされ、この様子がプログレス バーに表示されます。 何もエラーが表示されなければ、正常に接続されています。 簡単に確かめるには Get-Ret-RentionCompliancePolicy などの、セキュリティ/コンプライアンス センターのコマンドレットを実行して、結果を確認します。

エラーが表示された場合は、次の要件を確認します。

  • よく起きる問題はパスワードの入力ミスです。 もう一度 3 つの手順を実行します。特に、ユーザー名とパスワードは慎重に入力します。

  • サービス拒否 (DoS) 攻撃を防止するため、セキュリティ/コンプライアンス センターに対して開かれるリモート PowerShell 接続は 5 つまでに制限されます。

  • 接続に使用するアカウントは、リモート PowerShell に対して有効になっている必要があります。 詳細については、「Exchange Online PowerShell へのアクセスを有効または無効にする」を参照してください。

  • ローカル コンピューターと Microsoft 365 の間に TCP ポート 80 のトラフィックを開く必要があります。 組織で厳格なインターネット アクセス ポリシーが使用されている場合は、開いている可能性がありますが、確認する必要があります。

  • 接続要求中にクライアントの IP アドレスが変更された場合、接続に失敗する場合があります。 これは、組織が複数の IP アドレスを含むソース ネットワーク アドレス変換 (SNAT) プールを使用している場合に発生する可能性があります。 この接続エラーは次のようになります。

    ShellId <ID> を使用した Windows リモート シェルの要求が失敗しました。サーバーにシェルが見つかりませんでした。 考えられる原因としては、指定された ShellId が正しくないか、サーバーにシェルが存在しなくなったことが考えられます。 正しい ShellId を提供するか、新しいシェルを作成して操作をやり直してください。

    この問題を解決するには、単一の IP アドレスを含む SNAT プールを使用するか、セキュリティ/コンプライアンス PowerShell エンドポイントへの接続に特定の IP アドレスを強制的に使用します。