PhantomJSとセキュリティ強化
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
SitecoreはPhantomJSを使用して、Sitecoreクライアントで使用するページのスクリーンショットを生成します。これは、Sitecoreの $(dataFolder)\tools\phantomjsフォルダーに付属する外部実行可能ファイル (.exe) ファイルです。Sitecoreは、App_Config\Include\ContentTesting\Sitecore.ContentTesting.config設定パッチ ファイルのContentTesting.PhantomJS.ExecutablePath設定を通じてこのファイルを参照します。
PhantomJS実行可能ファイルへのアクセスを制限するには、dataフォルダをwebrootフォルダの外側に配置する必要があります。
Sitecoreが実行されるWindowsプロセスには、実行可能ファイルに対するRead & executes権限が必要です。このプロセスでは、フォルダ内の他のファイルにアクセスするために、フォルダ自体へのReadアクセスも必要です。
PhantomJSはSitecore内から実行されるため、Sitecoreが実行されているプロセスに設定されているのと同じ権限で実行されます。Sitecoreは 最小限の 権限で実行し、Sitecoreがアクセスする必要があるファイルとフォルダーへのアクセスのみを許可する必要があります。
Sitecoreは、getScreenShotForURLパイプラインのRenderScriptsプロセッサから生成されたスクリプトをPhantomJSに渡します。このスクリプトは、生成された画像を特定のフォルダに書き込むようにPhantomJSに指示します。GenerateFilenameプロセッサは、スクリプトで使用するパスとファイル名を生成する役割を担います。
デフォルトでは、出力パスは $(webroot)\temp\screenshotsです。Sitecoreが実行されるプロセスには、tempフォルダーに対するRead権限とWrite権限がすでにある必要があります。出力フォルダの場所はパイプライン内で決定され、ファイルを別の場所に出力するように変更できます。
デフォルトでは、PhantomJSはWebリソースのキャッシュにディスクキャッシュを使用するように設定されています。キャッシュが作成されるディスク上の場所はプラットフォームに依存し、Sitecoreが実行されているウィンドウのバージョンに応じて、次のいずれかになります。
-
C:\Ofi Labs\PhantomJS\cache
-
C:\Users\<user>\AppData\Local\Ofi Labs\PhantomJS\cache
パスでは、Sitecoreが実行されているアカウントが <user> です。
ディスク キャッシュが動作するようにするには、Sitecoreが実行されているアカウントにキャッシュ ディレクトリへの読み取りおよび書き込みアクセス権を付与する必要があります。 App_Config\Include\ContentTesting\Sitecore.ContentTesting.configファイルのディスク キャッシュを無効にするには、ContentTesting.PhantomJS.EnableDiskCache Sitecore設定をfalseに変更します。キャッシュを無効にすると、スクリーンショットごとにすべてのWebリソースを毎回取得する必要があるため、スクリーンショットの生成に時間がかかります。
スクリーンショット ファイルに使用されるフォルダーが変更されている場合は、新しい場所のパイプラインを確認できます。
コンテンツ配信サーバーのセキュリティを強化
コンテンツ配信サーバーのセキュリティを強化
スクリーンショットはUIとメールで使用されるため、コンテンツ配信サーバーでスクリーンショットを生成する必要はありません。
コンテンツ配信サーバーのセキュリティを強化するには、次のようにします。
-
phantomjs.exe実行可能ファイルを含む$(dataFolder)\tools\phantomjsフォルダを削除します。
-
PhantomJSプロセスを起動するgetScreenshotForUrlパイプラインを無効にします。
getScreenshotForUrlパイプラインを無効にするには、Sitecore.ContentTesting.config設定ファイルでパイプラインを無効にするパッチファイルを作成します。
パッチ ファイルの使用の詳細については、トピック「パッチ ファイルを使用してSitecore設定をカスタマイズする」を参照してください。