ファイルのアップロード機能をセキュリティ保護する
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
適用対象 |
すべての core ロール |
Sitecore Installation Framework |
ファイルのアップロードは、デフォルトでセキュリティ保護されていません。 |
Azure Toolkit |
ファイルのアップロードは、デフォルトでセキュリティ保護されていません。 |
upload フォルダーのスクリプトと実行のアクセス許可を拒否すると、Sitecore インストールのセキュリティを強化できます。
upload フォルダーのスクリプトと実行のアクセス許可を拒否する
upload
フォルダーのコンテンツの変更をユーザーに許可すると、スクリプトと実行可能プログラムをフォルダーに配置するためのアクセス許可も付与されます。これらのスクリプトとプログラムを実行すると、サーバーで予期しない動作が発生する可能性があります。
これを回避するために、upload フォルダーでスクリプトと実行可能ファイルを実行するためのアクセス許可を拒否できます。これにより、ユーザーがファイルをダウンロードしようとしたときに、アップロードされたファイルがサーバー側で実行されるのを防止できます。
この手順は、コンテンツ作成者が upload フォルダーにファイルを直接配置できるよう設定されている場合にのみ実行する必要があります。たとえば、共有ディレクトリまたは FTP サーバーを使用する場合、コンテンツ作成者はメディア ライブラリに多数のメディアをすばやく配置できます。
詳細については、Microsoft の Web サイトを参照してください。
upload フォルダーのスクリプトと実行の両方のアクセス許可を拒否するには:
-
インターネット インフォメーション サービス (IIS) マネージャーを開きます。
-
関連する Web サイトの upload フォルダーに移動し、[IIS] セクションで [ハンドラー マッピング] をダブルクリックします。
-
[アクション] ペインで、[機能のアクセス許可の編集] をクリックします。
-
[機能のアクセス許可の編集] ダイアログ ボックスで、[スクリプト] チェック ボックスと [実行] チェック ボックスをオフにし、[OK] をクリックします。
設定で、コンテンツ作成者が (たとえば、共有ディレクトリまたは FTP サーバーを使用して) temp
フォルダーにファイルを直接配置できる場合は、ユーザーに対して temp
フォルダーのスクリプトと実行のアクセス許可を拒否する必要もあります。
これは、(たとえばカスタム コードから) たとえば temp
フォルダーに .aspx ファイルが保存されている場合に、潜在的なセキュリティ問題を回避するのにも役立ちます。
アップロード ウォッチャーを無効にする
Sitecore にファイルをメディア ライブラリからのみアップロードできるようにするには、アップロード ウォッチャーを無効にする必要があります。この場合、Sitecore クライアント内からのみファイルをアップロードでき、アップロード対象のファイルを制御できます。
アップロード ウォッチャーを無効にすると、upload フォルダーに配置されたファイルはメディア ライブラリに自動的にアップロードされません。
アップロード ウォッチャーを無効にするには:
-
web.config ファイルを開き、<system.webServer><modules> セクションから次の文字列を削除します。
<add type="Sitecore.Resources.Media.UploadWatcher,Sitecore.Kernel" name="SitecoreUploadWatcher"/>
ユーザーが特定のファイル タイプをアップロードできないようにする
ユーザーが特定のファイル タイプ (.exe や .dll など) をアップロードできないように完全に制御するには、アップロード フィルター ツールを使用します。
アップロード フィルター ツールをダウンロードしてインストールする
アップロード フィルター ツールは、ダウンロード可能な Sitecore パッケージです。
アップロード フィルター ツールには、次のファイルが含まれています。
ファイル名 |
宛先フォルダー |
---|---|
UploadFilter.config |
Website\App_Config\Include\ |
UploadFilter.dll |
WebSite\bin\ |
アップロード フィルター ツールをインストールするには:
-
Sitecore スタート画面で、[コントロール パネル] をクリックします。
-
[管理] セクションで、[パッケージのインストール] をクリックします。
-
ウィザードの手順に従って、まずパッケージをダウンロードしてからインストールします。
アップロード フィルター ツールを設定する
アップロード フィルター ツールをインストールしたら、それを設定する必要があります。
アップロード フィルター ツールを設定するには:
-
UploadFilter.config
ファイルを開きます。RequestResponse<processors> <uiUpload> <processor mode="on" type="Sitecore.Pipelines.Upload.CheckExtension, Sitecore.UploadFilter" patch:before="*[1]"> <param desc="Allowed extensions (comma separated)"></param> <param desc="Blocked extensions (comma separated)">exe,dll</param> </processor> </uiUpload> </processors>
-
ユーザーが特定のファイル タイプをアップロードできないようにするには:
-
Allowed extensions
パラメーターに、アップロードできるファイル拡張子タイプのコンマ区切りリストを入力します。
または
-
Blocked extensions
パラメーターに、アップロードできないファイル拡張子タイプのコンマ区切りリストを入力します。
ファイル拡張子をドットなしで入力する必要があります。
重要Allowed extensions
パラメーターを設定すると、Blocked extensions
パラメーターは無視されます。ブロック リストにあるファイル タイプをアップロードしようとすると、次のメッセージが表示されます。
-
アップロード フィルター ツールをインストールした後、アップロード プロセス中にエラーが発生すると、[アップロード] ダイアログがフリーズする場合があります。これは既知の問題であり、こちらに解決策が記載されています。