ユーザーがCMSを介してファイルをアップロードするWebサイトがあります。
例 http://www.mysite.com/uploadedfiles/file1.txt
インターネット上のユーザーがこのURLをブラウザーに入力して、これらのファイルに直接アクセスできないようにしたい。これどうやってするの?
ただし、CMSを介してこれらのファイルを読み取り、変更、および削除するには、IISを許可する必要があります。
ファイルをWebにアクセスできないディレクトリに保存するか、ディスクに保存する前にランダムな名前を作成することをお勧めします。
CMSのIPアドレスからの接続のみを受け入れるようにサイトを構成するのはどうですか?
「リクエストフィルタリング」に移動し、特定のURLを禁止します(「URL」タブ内)。
これを安全にするには、別の方法でアプリケーションに実装する必要があります。
アップロードしたファイルを、Webリクエストではアクセスできないフォルダー(外部フォルダーなど)に保存しますD:\WebData\MyApp\Uploads
。ネットワークサービスアカウントがこのディレクトリへの「変更」アクセス権を持っていることを確認してください(CMSアプリの場合)。
次に、CMSユーザーのセッションをチェックして自分のファイルのダウンロード/変更/アクセスのみを許可する ASP.NETのHTTPハンドラー を実装します。