ITScript および Windows PowerShell™ の概要
Windows PowerShell™ はタスク自動化フレームワークです。これは Microsoft . NET Framework を基盤として構築されています。 Security Controls の ITScript 関数は PowerShell 4.0の使用をサポートしているため、コンソール上やリモート ターゲット コンピュータ上でさまざまなスクリプトを実行できます。コンソールと選択したコンピュータ間で Windows PowerShell セッションを開始することもできます。
Security Controls で使用できる PowerShell API や REST API の機能について学習することも、お勧めします。
セットアップおよびシステム要件については、次の項目をご参照ください。
ITScripts タスクを実行する方法については、次の項目をご参照ください。
PowerShell スクリプトを使用すると、最も基本的なタスクから非常に高度で複雑な処理まで、さまざまな管理タスクを社内のコンピュータに対して実行できます。 対象コンピュータでの特定のタイプのデータ検索、ログ ファイルの収集および読み取り、ソフトウェアのインストール、レポートの作成、サービス ステータスの判定、レジストリの読み取りなどの処理を実行できます。 PowerShell スクリプトは、多数のコンピュータに対して実行される反復タスクを自動化するための優れた機能です。
Security Controlsでスクリプトを実行する利点は次のとおりです。
- スクリプトは、Security Controls で既に定義されているコンピュータおよびコンピュータ グループに対して実行されます。
- Security Controls に登録済みのコンピュータおよびコンピュータ グループ認証資格情報が使用されます。
- スクリプトはバックグラウンドで実行されます。
- スクリプトをただちに実行するか、指定した日時に実行するようにスケジュールできます。
- スクリプトは対象コンピュータに対して並列実行され、通常は、直列実行の場合に比べ、短時間で処理が完了します (並列処理のレベルは制御できます)。
- スクリプト出力はファイルに取り込まれ、いつでも確認できます。
- スクリプト実行のステータスは、Security Controls で表示されます。
- 直接 Security Controls から結果ファイルを開くことができます。
- スクリプトのパラメータを指定できます。また、さまざまなパラメータをテンプレートに保存したり、スクリプトの開始時または実行スケジュール時に指定したりできます。
- スクリプトでは PowerShell リモート処理機能を使用できるため、Windows PowerShell で提供される最も広範囲な機能を使用できます。
ITScript 機能にはさまざまな定義済みスクリプトが付属しています。 さまざまなユーティリティ タスクの実行に使用する基本スクリプトや、より複雑なタスクの実行に使用される上級者向けのスクリプトなどがあります。
スクリプト カタログ マネージャを使用して、使用可能な定義済みスクリプトを表示できます。
自分または信頼する他のユーザが作成したカスタム スクリプトをインポートできます。 インポートしたすべてのカスタム スクリプトは、定義済みスクリプトとともに、スクリプト カタログ マネージャに表示されます。 カスタム PowerShell モジュールもサポートされます。 他のカスタム スクリプトで使用できる cmdlet、プロバイダ、関数、変数、およびエイリアスを含むモジュールを作成してインポートできます。 詳細については、「カスタム スクリプトの作成」をご参照ください。
Security Controls では、スクリプトを実行するためのターゲット タイプが 4 つあります。 ターゲット タイプは、スクリプトを実行するときに、対象コンピュータで必要な項目を示します。 ターゲット タイプは、スクリプト作成者が scriptType 要素を使用して設定し、Security Controls で変更することはできません。 スクリプトは 1 つのモードでだけ実行できます。 すべての場合において、スクリプト エンジンは Security Controls コンソールで実行されます。
- コンソール:スクリプトはコンソールに対してだけ実行され、対象コンピュータ グループに対しては実行されません。 たとえば、Active Directory の問い合わせ、もしくは修正にコンソール スクリプトを使用することができます。
- 任意:スクリプトは、WinRM (PowerShell リモート処理) サービスを使用せずに、選択した対象コンピュータまたはコンピュータグループに対して実行されます。 コンソールの PowerShell クライアントは、リモート レジストリ サービス、リモート Windows ファイル共有、WMI サービスなどの他の Windows リモート処理サービスを使用して、対象コンピュータと通信します。 使用される実際のサービスは、スクリプトによって異なります。 スクリプトは、1 度に 1 台のコンピュータに制限されずに、並列実行されます。
- このタイプのスクリプトを実行するときには、対象コンピュータに追加のソフトウェアをインストールする必要がありません。 必要なポートは、使用中の Windows サービスで必要なポートだけです。
- ESXi Hypervisor: スクリプトが ESXi Server または vCenter Server に対して実行されます。 このタイプのスクリプトでは、VMware vSphere PowerCLI を使用できます。 VMware vSphere PowerCLI では、ネットワーク、ストレージ、VM、ゲスト OS などの vSphere 管理における全要素を自動化できます。 このタイプのスクリプトは、ESXi Server を含むコンピュータ グループに対してだけ実行されます。 コンピュータ グループのその他のコンピュータが含まれる場合、このスクリプトが実行されるときに無視されます。 ESXi Server を含むコンピュータ グループの作成については、「サーバでホストされる仮想マシンの追加」をご参照ください。
スクリプト カタログ マネージャを使用して、スクリプトで使用されるターゲット タイプを識別できます。
Security Controls には、ITScript 機能を使用するためのさまざまなセキュリティ機能があります。
- 信頼できる機関によって署名されたスクリプトだけを、スクリプト カタログ マネージャにインポートして使用できます。
- Security Controls は、コンピュータ グループに関連付けられている認証資格情報を使用してスクリプトを実行します。
- 承認したスクリプトのみが、Security Controls インターフェイスで使用できます。
- スクリプトは暗号化されません。 このため、実行前に、スクリプトを調査して確認できます。
Ivanti が作成したスクリプトは、Ivanti によって署名されます。カスタム スクリプトを作成する場合は、独自の証明書で署名する必要があり、そのスクリプトの使用に関する全責任を負うことになります。
スクリプトはオンラインの仮想マシンで実行できますが、オフラインの仮想マシンでは実行できません。