ディスカバリー および サービスマッピング 用 PowerShell

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:4分
  • MID サーバーは水平ディスカバリーとトップダウンディスカバリーの最中に、PowerShell と PowerShell リモート機能を使用して構成アイテム (CI) にアクセスします。MID サーバーのパラメーターおよびスクリプトインクルード、プローブのパラメーター、PowerShell を使用するための認証情報を確認します。

    PowerShell は Windows のサーバーおよびアプリケーションの管理をコントロールおよび自動化するために使用されます。

    MID サーバー は PowerShell を使用して、WMI と WinRM の両方のプロトコルによって Windows サーバーと直接通信できます。WinRM プロトコルを使用する Windows サービスの場合、PowerShell プロセスは安全な PSSession (PowerShell リモート機能セッション) を確立し、MID サーバー が Windows サーバーへのクエリーを終了するまでそのセッションが継続します。WMI プロトコルを使用する Windows サーバーの場合、PowerShell プロセスはすべての PowerShell コマンドを認証情報と共に送信します。

    PowerShell はまた、複数の Windows ドメインでディスカバリーを実行するのに適した方法でもあります。PowerShell では、インスタンスに格納されている認証情報を使用して、異なるドメインのサーバー上で単一の MID サーバー 認証を行うことができます。

    MID サーバー が PowerShell および PowerShell リモート機能を使用するように構成しない場合、MID サーバー は WMI を使用します。

    PowerShell ディスカバリー の仕組み

    ここでは、MID サーバーが PowerShell を使用してプローブを展開する方法について説明します。
    プローブとセンサー

    Windows マシンが PowerShell に分類され、MSSQL インスタンスが検出されると、Windows - MSSQL と呼ばれるプローブが起動します。このプローブは、一致するセンサーに SQL データベースのカタログとバージョンを返します。

    プローブパラメーター

    WMI_ActiveConnections.ps1 プローブパラメーターには、PowerShell が有効になっているときにターゲットサーバーで netstat.exe を実行するスクリプトが含まれています。このスクリプトは、Windows サーバーの接続に関する情報 (プロセス ID、ポート、IP アドレスなど) を抽出します。

    認証情報

    ディスカバリー は認証情報 [discovery_credentials] テーブルの Windows PowerShell 認証情報、または MID サーバー サービスのドメインアドミニストレーターの認証情報を使用します。タイプの認証情報テーブルに PowerShell 認証情報が見つからない場合 (Windows)、ディスカバリーMID サーバー サービスのログイン認証情報を使用します。

    MID サーバースクリプトインクルード
    PowerShell 検出のために、次のスクリプトインクルードが追加されました。これらのスクリプトは MID サーバー上で実行され、ディスカバリー が WMIRunner および PowerShell のために使用するスクリプトを生成します。
    • GenerateWMIScriptJS:WMIRunner プローブの Javascript スクリプトを生成します。
    • GenerateWMIScriptPS1:PowerShell ディスカバリー用の PowerShell スクリプトを生成します。
    PowerShell の MID サーバーのパラメーター
    MID サーバーのオプションのパラメーターは「PowerShell の MID サーバーのパラメーター」にあります。パラメーターの設定を変更した後は、MID サーバー サービスを再起動してください。

    PowerShell バージョン要件

    PowerShell を使用する MID サーバーは、サポート対象の Windows オペレーティングシステムにインストールする必要があります。ServiceNow は以下のバージョンの PowerShell をサポートしています。
    バージョン 3.0
    • 正規 ディスカバリー
    • アプリケーション依存関係マッピング (ADM)
    • ファイルベースの ディスカバリー
    • PowerShell バージョン 3.0 は Windows Server 2003 をサポートしていません。
    バージョン 4.0
    • 正規 ディスカバリー
    • アプリケーション依存関係マッピング (ADM)
    • ファイルベースの ディスカバリー
    バージョン 5.0
    • 正規 ディスカバリー
    • アプリケーション依存関係マッピング (ADM)
    • ファイルベースの ディスカバリー
    注:
    PowerShell バージョン 6.0 はサポートされていません。ディスカバリーが依存している多くのコマンドレットがこのバージョンから削除されました。たとえば、リモート操作で使用できるのは、WinRM を使用するコマンドレットのみです。

    Windows PowerShell 実行ポリシー

    Windows PowerShell には 4 つの異なる実行ポリシーがあります。顧客はグループポリシー設定を使用してスクリプト実行ポリシーを設定できます。詳細については、Microsoft の Web サイトにある PowerShell のドキュメントを参照してください。
    • Restricted:スクリプトを実行できません。Windows PowerShell はインタラクティブモードでのみ使用できます。
    • AllSigned:信頼できる発行者によって署名されたスクリプトのみを実行できます。
    • RemoteSigned:ダウンロードされたスクリプトを実行するには、信頼できる発行者による署名が必要です。
    • Unrestricted:制限はありません。すべてのスクリプトを実行できます。
    注:
    Unrestricted 以外のポリシーがある場合は、スクリプトに署名する必要があります。