難しい問題を解決するための創造的な方法を探しています。そして、私はC#コードだけでこれを行う必要があります。ウェブサイトの設定はありません。AWS S3フォルダ全体へのアクセスを許可する - C#
ユーザーがファイルの「パッケージ」をアップロードします。これらはです。画像やその他のリソースへの相対パスを持つHTMLファイルです。現在私はこれらをS3バケットのフォルダに格納しています。これまでのところ問題はありません。
このファイルをクライアントに戻す必要がある場合に問題が発生します。 URLリンクの整合性を保ちながら、Xの時間だけHTMLファイルにアクセスできるようにする方法が必要です。例えば
- File.htmlがfish.pngへの参照を持っている -
<img src="fish.png"/>
私は彼らにFile.htmlへのアクセス権を付与した場合、彼らが持っていないため、魚のイメージが壊れています"fish.png"へのアクセス。 srcにセキュリティトークンがないため、リンクに両方のアクセスを許可しても、リンクはまだ壊れています。私も、フォルダと両方のファイルへのアクセスを許可しようとしましたが、まだ画像が壊れています。また、コンテンツをダウンロードすることもできません。これは、Xの時間だけリソースを利用できるという目的を破るためです。
私の問題がはっきりしていることを願っています。私は一般的にS3開発で非常に新しいです。どんな助けもありがとうございます。
EDIT - HTMLドキュメントリンクを変更することはオプションではないことを付け加えたいと思います。それらは常にHTMLをアップロードするとは限らず、フラッシュファイルやその他のファイルタイプでもかまいません。私は文書リンクの参照を維持する必要があります。
私はあなたが達成しようとしていることは明らかではありません。クライアントが複数のファイルをアップロードする場合、そのクライアントだけがファイルにアクセスできますか?あなたは彼らが一定の時間だけアクセス可能であると言うとき、それ以降何が起こるでしょうか? – chris
@chris - クライアントは、販売されている製品の一部であるファイルをアップロードします。パブリックを介したファイルへのアクセスで、タイマーを設定して資産を保護したいと考えています。タイマーがなくなると、ファイルが見つからないか、アクセスが拒否されます。ファイルへのアクセス権を得ること以外は何もしません。 – BrianLegg