2009-05-16 4 views
1

ユーザーはmp3をアップロードして、ページに埋め込まれたプレーヤーで再生できるようにしたいと考えています。専用のユーザーがコンピュータの出力から直接録音してオーディオをコピーするのを止めることは不可能だとわかっていますが、ユーザーがURLをコピーして貼り付けてデータに直接アクセスできるようにするのは難しく、不可能にしたいと考えています。ユーザーが自分のサイトのmp3ファイルをハードドライブに保存するのを難しくするにはどうすればよいですか?

現在、私がやっていることは次のとおりです。

  • が自分のWebサーバにアクセス可能ではないされているディレクトリにmp3ファイルを保存します。代わりに、オーディオ/ MPEGのをtext/htmlするMIMEタイプを変更するには、ヘッダーを使用し

問題フィードコントローラへのURLです(私のswfファイルのプレーヤーはそれだけでデータを読み込み、気にしません)データにアクセス可能です。したがって、ユーザーがページのソースを見て、アドレスバーにURLを貼り付けると、Webサーバーはmp3データをうれしく吐き出します。

誰にもこれをもっと難しくするための提案はありますか?ありがとう。

答えて

2

はそう

http://www.site.com/files/foo.mp3 

フラッシュは、おそらくそこから次のステップである

http://www.site.com/files.php?fn=foo.mp3 

になり場所をマスクするためにPHPスクリプトを使用してください。おそらく、共有状態を使用してダウンロードを許可するために、ある形式のワンタイムIDを使用したことがあります。あなたのsession_idはここで役に立つでしょう。

覚えておいてください:フラッシュは、一時的なフォルダにキャッシュを残しているかもしれません...私は/tmp/aiden-sdjks/foo.mp3をいくつかのプレイヤーで見つけるのに使っていました。バックエンドで別のファイル形式を使用するストリーミングソリューションがフラッシュでより優れているかもしれませんか?

少なくともこれは、ソースを探してURLを見つける人々を停止させます。彼らがプレーヤーをリバースエンジニアリングし、ダウンロードを吐くために自分自身を書く努力に向かない限り。

暗黙のセキュリティは、しかし、頭を下げる危険な道です。誰かが十分な努力をして、常に成功するでしょう。 BBCIplayerがDRM化をどのように役立てるかを見てください。

+0

ワンタイムIDのことは素晴らしい考えです。ありがとう。 –

+0

心配はいりません。以下のストリーミングの提案も良い考えです。私は100%のセキュリティは多くの場合現実的だとは思わないが、あなたはそれをお尻の痛みにすることができます! –

0

あなたはそれを作りたいと思っていますか。基本的なROT-13のURLを書き換えるためにjavascriptを使うことができますし、うまくいけば人々はそれを解読するつもりはありません。

私はHTMLオブジェクトsrcにjavascript関数を入れてみませんでした。

-1

Flash Playerソリューションでは可能かどうかはわかりませんが、検討する価値はあるかもしれません。

+0

私は現在、SoundManager 2を使用しています。これは、フラッシュベースのMP3プレーヤーです。 –

2

Flashでサーバー上のファイルに直接接続することをプログレッシブストリーミングといいます。これにより、Flash Playerは再生時にサーバーからファイル全体をロードします。別の解決方法があります。ストリーミングは、再生中にいつでもユーザーのマシンにわずかなデータしかロードしません。

フラッシュで最も信頼できるオプションは、コンテンツにストリーミングサーバーを使用することです。 Flash Media Serverは1つのオプションですが、購入したり、ホストされているバージョン(Akamaiなど)を見つけることができる製品です。あなたが小さい単位であれば 、そこにWindowsメディアプレーヤーまたはQuickTimeプレーヤーについて(http://osflash.org/red5

わからないRed5のようなメディアサーバーのオープンソースバージョンがあるが、私は同様のソリューションがあるだけでなく

0

があると確信しています保護されたディレクトリにファイルを格納する必要があります。私のホスティングサービス(Nearly Free Speech)はこれを自動的に設定し、CGIスクリプト(たとえばPHP)内でファイルを取得し、一時ファイルに書き込んだりバイナリを直接使用したりすることができます。たとえば、個人用ウェブサイトへの訪問の簡単なリストをこのディレクトリに格納します。このディレクトリは、Webルートの範囲外です。

関連する問題