FPSP 2010のForefront管理シェルで使用できるコマンドレット (Set-FsspRealtimeScan) について

スポンサーリンク

Forefront Protection 2010 for SharePoint (FPSP 2010) のForefront管理シェルは、PowerShellを用いたコマンドラインインタフェースです。

Forefront管理シェルは、FPSP 2010の管理を目的として様々なコマンドレットが用意されていますが、 オンライン上では説明のみで詳細なコマンド オプション情報については公開されていないようです。

このヘルプ情報について、オンライン上で日本語として確認したいと思い、本ブログ上で纏めたいと思います (内容については「Get-Help」コマンドレットの-Fullオプションを用いて実行した結果を編集したものとなります)。

この記事では、「Set-FsspRealtimeScan」コマンドレットについて記載します (他のコマンドレットについては、「FPSP 2010のForefront管理シェルで使用できるコマンドレットについて」を参照)。

■名前

Set-FsspRealtimeScan

■概要

リアルタイム スキャンの構成を設定します。

■構文

Set-FsspRealtimeScan [-Bypass <Boolean>] [-DocFilesAsContainers <Boolean>]
     [-EnableFileFiltering <Boolean>] [-EnableKeywordFiltering <Boolean>]
     [-EnableSpywareScan <Boolean>] [-EnableVirusScan <Boolean>]
     [-EngineUsagePolicy <EngineUsageEnum>]
     [-FileFilteringSkipScanofCompressedFiles <System.Nullable`1[System.Boolean]>]
     [-FilteringDeletionText <string>] [-MalwareDeletionText <string>]
     [-MaxContainerScanTime <int>] [-MaxTextSize <int>] [-ProcessCount <int>]
     [-ScanOnSignatureUpdate <Boolean>]
     [-SpywareAction <SPRealtimeSpywareActionEnum>]
     [-SpywareQuarantine <Boolean>] [-SuppressMalwareNotifications <Boolean>]
     [-SuppressMalwareNotifications <Boolean>] [-VirusAction <SPVirusActionEnum>]
     [-VirusQuarantine <Boolean>] [<CommonParameters>]

■説明

リアルタイム スキャンのカスタマイズを有効にします。設定できるパラメータには次のようなものがあります。ウイルス スキャンの有効化、コンテナのスキャン、エンジンの使用ポリシー、ウイルス検出アクション、検疫、フィルタリングなどです。さらに、リアルタイム スキャンをバイパス モードにして、内容をスキャンしないようにすることもできます。

■パラメーター

-Bypass <Boolean>
SharePointファイルのリアルタイム スキャンをすべてバイパスするかどうかを指定します。省略可能です。リアルタイム スキャンをバイパスするようにFPSPを構成すると、リアルタイム スキャン ジョブによるウイルスのスキャンもフィルタリングも行われなくなります。指定可能な値は$falseおよび$trueです。既定値の$falseは、-Bypassが効力を持たないことを意味します。

注意: この設定は、トラブルシューティングにのみ使用してください。サービスをリサイクルする必要がないため、トラブルシューティングに適しています。ただし、-Bypassを$trueに設定すると、ウイルスから保護されなくなります。

必須false
位置named
既定値false
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-DocFilesAsContainers <Boolean>
リアルタイム スキャンで、構造化ストレージとOLE埋め込みデータ形式 (.doc、.xls、.ppt、.shsなど) をコンテナ ファイルとして使用するファイルをスキャンするかどうかを指定します。 省略可能です。 指定可能な値は$falseおよび$trueです。 既定値の$falseは、構造化ストレージを使用するファイルがコンテナ ファイルとしてスキャンされないことを意味します。

必須false
位置named
既定値true
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-EnableFileFiltering <Boolean>
リアルタイム スキャンによるファイル フィルタリングを有効または無効にします。省略可能です。指定可能な値は$falseおよび$trueです。既定値の$trueは、リアルタイム スキャンによるファイル フィルタリングが有効であることを示します。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-EnableKeywordFiltering <Boolean>
キーワード フィルタリングを有効または無効にします。省略可能です。指定可能な値は$falseおよび$trueです。既定値の$trueは、キーワードのフィルタリングが実行されることを示します。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-EnableSpywareScan <Boolean>
スパイウェア スキャンを有効または無効にします。省略可能です。指定可能な値は$falseおよび$trueです。既定値の$trueは、リアルタイム スキャンで Microsoft Antimalware Engineを使用してスパイウェアをスキャンすることを示します。値を$falseに設定すると、スパイウェア スキャンが無効になります。

スパイウェア スキャンを有効にした場合は、Microsoft Antimalware Engineが定義の更新に対して有効になっていることを確認してください。これはSet-FsspSignatureUpdateを使用して実行します。

注意: スパイウェア スキャンを無効にしても、フィルタリングは有効のままにできます。

必須false
位置named
既定値true
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-EnableVirusScan <Boolean>
ウイルス スキャンを有効または無効にします。省略可能です。指定可能な値は$falseおよび$trueです。 既定値の$trueは、リアルタイム スキャンで特定のウイルス対策エンジンを使用してウイルスをスキャンすることを示します。値を$falseに設定すると、ウイルス スキャンは無効になりますが、フィルタリングは有効のままになります。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-EngineUsagePolicy <EngineUsageEnum>
Forefront Protection 2010 for SharePointがファイルの内容のスキャンに使用するエンジン数を決める際に参照するインテリジェント エンジン選択ポリシーを指定します。省略可能です。使用するエンジンが多いほど、すべてのウイルスが検出される可能性が高くなります。ただし、使用するエンジンが多いほど、システム パフォーマンスへの影響も大きくなります。エンジンは、Set-FsspEngineManagementを使用して指定されます。

指定可能な値は次のとおりです。

  • All – 選択したすべてのエンジンでスキャンします。
  • Available – 選択したすべての利用可能なエンジンでスキャンします。既定値です。
  • Dynamic – 選択したエンジンの、動的に選択されるサブセットでスキャンします。
  • One – 動的に選択される1つのエンジンでスキャンします。

“All”と”Available”の相違点は次のとおりです。更新のためにエンジンをオフラインにすると、”All”の場合、そのエンジンが再開されるまでメール フローがキューに入れられ、”Available”の場合、残りのエンジンを使用してスキャンが続行されます。

注意: -EngineUsagePolicyは、以前は”Bias”と呼ばれていました。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-FileFilteringSkipScanofCompressedFiles <System.Nullable`1[System.Boolean]>
“SkipDetect”アクションが圧縮ファイルの種類のファイル フィルタに適用された場合の、このアクションの動作を指定します。省略可能です。Set-FsspRealtimeFilter を使用して、リアルタイム スキャン用のフィルタを構成します。指定可能な値は$false (既定値) および$trueです。

Forefront Protection 2010 for SharePointの標準機能では、ファイル フィルタを適用して、圧縮ファイルの内容がスキャンされます。圧縮ファイルの内容にファイル フィルタが適用されないようにするには、ファイル フィルタを作成し、アクションを”SkipDetect”に設定します。ただし、これが既定で機能するのは、.zipファイル、JARファイル、およびOPENXMLファイルのみです。

この機能を自己解凍実行可能ファイル (SMIMEファイル、.gzipアーカイブ ファイル、.rarアーカイブ ファイル、TARアーカイブ ファイル、およびMACBINバイナリ ファイル) でも有効にするには、このパラメータの値を$trueに設定します。その場合、アクションが”SkipDetect”に設定されているファイル フィルタにコンテナが一致するときは、これらの追加のファイルの種類内ではファイル フィルタリングが実行されません。

コマンドが連携するしくみの詳細な説明については、例を参照してください。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-FilteringDeletionText <string>
フィルタと一致したために削除されたファイルの内容の置き換えに使用されるテキストを指定します。省略可能です。既定の削除テキストでは、ファイルが削除されたことが受信者に通知され、ファイル名および一致したフィルタ名が示されます。

FilteringDeletionTextパラメータを使用して、キーワード置換マクロを含む、独自のカスタム テキストを入力できます。マクロは、アポストロフィで囲む必要があります (例: -FilteringDeletionText “‘%Filter%’ フィルタと一致したため、’%File%’ が削除されました”)。

削除テキストは最大8,192文字です (引用符で囲む)。

既定値: “Microsoft Forefront Protection for SharePoint は、フィルタの一致を検出したため、ファイルを削除しました。ファイル名: ‘%File%’ フィルタ名: ‘%Filter%'”

必須false
位置named
既定値“Microsoft Forefront Security for SharePoint removed a file since it was found to match a filter. File name: ‘%File%’ Filter name: ‘%Filter%'”
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-MalwareDeletionText <string>
“Delete”アクション中に、感染したファイルの内容を置き換えるために使用されるテキストを指定します。省略可能です。既定の削除テキストでは、ファイルが削除されたことが通知され、ファイル名および見つかった悪意のあるソフトウェアの名前が示されます。

MalwareDeletionTextパラメータを使用して、キーワード置換マクロを含む、独自のカスタム テキストを入力できます。マクロは、アポストロフィで囲む必要があります (例: -MalwareDeletionText “このファイルはウイルスに感染しています: ‘%File%’ マルウェア名: ‘%Malware%'”)。

削除テキストは最大 8,192 文字です (引用符で囲む)。

既定値: “Microsoft Forefront Protection for SharePointは、ファイルの感染を検出したため、ファイルを削除しました。 ファイル名:  ‘%File%’ マルウェア名:  ‘%Malware%'”。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-MaxContainerScanTime <int>
圧縮された添付ファイルのスキャン時にリアルタイム スキャンがタイムアウトになるまでの時間を秒単位で指定します。省略可能です。有効な値の範囲は、60~86400秒です (境界を含む)。既定値は120秒 (2分) です。

必須false
位置named
既定値120
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-MaxTextSize <int>
リアルタイム スキャンによるキーワード フィルタリングの対象となるドキュメントのテキストの最大サイズを指定します。省略可能です。既定値は10MBです。

Microsoftドキュメントの場合、テキストの最大サイズは、ドキュメント全体のサイズではなく、ドキュメントから抽出したテキストのサイズで測定されます (通常、ドキュメント全体のサイズよりもはるかに小さくなります)。

たとえば、MaxTextSizeが20MBに設定されている場合に、50 MB のテキスト ファイルを SharePoint サイトにアップロードすると、MaxTextSizeの設定により、スキャンされるのはファイルの最初の20MB のみとなります。

必須false
位置named
既定値10
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-ProcessCount <int>
1つのWebフロントエンド サーバーで実行するプロセスの数を示します。省略可能です。指定可能な値の範囲は、1~10の整数です。既定値は4です。

複数のプロセスを使用すると、起動時やファイル スキャンの要求時にサーバーの負荷が高くなります。大容量の環境でない限り、既定の数のプロセスで十分です。プロセスの数が増加すると、追加のサーバー リソースが消費されるので、一度に1プロセスずつ増やし、そのたびにパフォーマンスを評価することをお勧めします。

リアルタイム プロセスの数は、サーバー上の有効なプロセッサの数の2倍に設定することをお勧めします。たとえば、2プロセッサ サーバーまたは単一プロセッサのデュアル コア サーバーでは、ProcessCountの設定は既定値4をそのまま使用します。サーバーに2つのプロセッサがあり、それぞれがデュアル コアの場合、推奨される設定は8です。

注意: この値を変更するには、サービスをリサイクルする必要があります。

このパラメータを設定すると、次の警告が表示されます。

この設定の変更を有効にするには、関連する Microsoft Forefront、World Wide Web、およびMicrosoft SharePointの各サービスを再起動する必要があります。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-ScanOnSignatureUpdate <Boolean>
リアルタイム スキャンで使用するエンジンのいずれかが更新された場合に、リアルタイム スキャンを開始するかどうかを指定します。省略可能です。スキャンは、ストア内の最初のフォルダからではなく、最後にスキャンされたフォルダから続行されます。このオプションがトリガされたときに、リアルタイム スキャンが既に実行中の場合、リアルタイム スキャンはそのまま続行されます。指定可能な値は$falseおよび$trueです。既定値の$falseは、エンジンが更新されてもファイルが再スキャンされないことを意味します。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-SpywareAction <SPRealtimeSpywareActionEnum>
スパイウェアが検出されたときに実行するアクションを示します。省略可能です。指定可能な値はSkipDetectおよびSuspend (既定値) です。

注意: “Suspend”の場合、ファイルへのアクセスがブロックされます。

必須false
位置named
既定値Block
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-SpywareQuarantine <Boolean>
スパイウェアが検出されたときにファイルを検疫するかどうかを示します。省略可能です。指定可能な値は$falseおよび$trueです。既定値の$trueは、スパイウェアが見つかった場合に、ファイルを検疫することを示します。

注意: ファイルは、-SpywareActionパラメータの値に関係なく検疫できます。

必須false
位置named
既定値true
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-SuppressMalwareNotifications <Boolean>
このスキャン ジョブによってマルウェアが検出されたときにウイルスまたはスパイウェアの通知を送信するかどうかを示します。省略可能です。指定可能な値は$falseおよび$trueです。既定値の$falseは、ウイルスまたはスパイウェアの通知が有効な場合は、それらが送信されることを示します。Set-FsspNotificationで無効にされている場合、このパラメータは効力を持ちません。

必須false
位置named
既定値$false
パイプライン入力を許可するfalse
ワイルドカード文字を許可するfalse

-VirusAction <SPVirusActionEnum>
ウイルスが検出されたときに実行するアクションを示します。省略可能です。指定可能な値はSkipDetect、Clean (既定値)、およびSuspendです。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

-VirusQuarantine <Boolean>
ウイルスが検出されたときにファイルを検疫するかどうかを示します。省略可能です。指定可能な値は$falseおよび$trueです。既定値の$trueは、ファイルが感染した場合に、検疫することを示します。

注意: ファイルは、指定されている -VirusActionに関係なく検疫できます。

必須false
位置named
既定値
パイプライン入力を許可するtrue (ByPropertyName)
ワイルドカード文字を許可するfalse

<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: VerboseDebugErrorActionErrorVariableWarningActionWarningVariableOutBuffer、およびOutVariable。詳細については、「get-help about_commonparameters」と入力してヘルプを参照してください。

■入力

■出力

■メモ

■例

例1

 Set-FsspRealtimeScan -EngineUsagePolicy All -SiteScope Selected -SiteList site1, site2, site5 -MaxContainerScanTime 300 

例1:説明

エンジン使用ポリシーを”All”に設定して、選択したエンジンがすべて毎回のスキャンで使用されるように指定します。3つの特定のサイト (site1、site2、および site5) がスキャンされます。コンテナ ファイルの最大スキャン時間は、300秒 (5分) に設定されます。エンジンの選択は、Set-FsspEngineManagementコマンドレットを使用して行うことに注意してください。

コマンドが正常に完了した場合は、何も出力されません。

例2

 Set-FsspRealtimeScan -MalwareDeletionText "The '%Malware%' malicious software was detected in the '%File%' file." -FilteringDeletionText "The '%File%' file was found to match the '%Filter%' filter." 

例2:説明

2つの削除テキスト項目の古い値が、新しい値に変更されます。

コマンドが正常に完了した場合は、何も出力されません。

例3

New-FsspFilterList -File -List "RahRah" -Item "*.rar"
New-FsspFilterList -File -List "Ghi" -Item "ghi.exe"
Set-FsspRealtimeFilter -File -List "RahRah" -Action SkipDetect -Enabled $true
Set-FsspRealtimeFilter -File -List "Ghi" -Action Suspend -Enabled $true
Set-FsspRealtimeScan -FileFilteringSkipScanOfCompressedFiles $false -VirusAction Block

例3:説明

.rarファイルをフィルタリングする場合の例です。”Innocent.rar”という.rarファイルを想定します。これには、次の3つのファイルが含まれます。

  • eicar.com
  • abc.def
  • ghi.exe

“RahRah”という名前のフィルタを設定し、”.rar”という拡張子を持つすべてのファイルを見つけ出します。一致した場合は、フィルタが、”SkipDetect”のアクションでリアルタイム スキャンに割り当てられます。

“Ghi”という名前のフィルタを設定し、”ghi.exe”という名前のすべてのファイルを見つけ出します。一致した場合は、フィルタが、”Suspend”のアクションでリアルタイム スキャンに割り当てられます。

-FileFilteringSkipScanOfCompressedFilesパラメータが$falseに設定されています。 これは既定値であるため、明示的に設定する必要はありません。

Innocent.rarのスキャン結果は次のとおりです。

  1. “*.rar”で捕捉されますが、アクションはSkipDetectであるため、単なる通知です。
  2. 内容に対するウイルス スキャンが実施されます。 Eicar.comは、設定されているウイルス アクションであるためブロックされます。
  3. 内容はファイル フィルタの対象です。そのため、”ghi.exe”はブロックされます。

ここでは、-FileFilteringSkipScanOfCompressedFilesパラメータが$trueに設定されていると仮定します。

結果3.を除き、すべてがまったく同じです。現在は、次のようになっています。内容は、ファイル フィルタの対象ではありません。そのため、”ghi.exe”は中断されません。

コマンドが正常に完了した場合は、何も出力されません。

■関連するリンク

  • Get-FsspRealtimeScan

[参考]