訪問者がサイトから画像を保存できないようにする

StackOverflow https://stackoverflow.com/questions/21437

  •  09-06-2019
  •  | 
  •  

質問

私の独自の画像の使用を防ぐための効果的な戦略は何ですか?

私はそれらを保存すること、それらに直接リンクすることなどについて話しています...

現在、画像に透かしを入れていますが、入れたくないのです。

.NET プラットフォームが望ましいですが、既存のアプリケーションと統合する別のプラットフォーム上の戦略があれば、それはボーナスになります。

役に立ちましたか?

解決

ダウンロードを「不可能」にすることはできません。ユーザーがサイトにアクセスすると、写真が送信されます。ユーザーはその画像のコピーをブラウザのキャッシュに保持し、サイトを離れた後でもその画像にアクセスできます (もちろんブラウザによって異なります)。唯一の現実的な選択肢は、透かしを入れることです :O

他のヒント

各画像を Flash アプリケーション内に埋め込むことができますが、その場合、ブラウザは画像を「保存」する方法を認識せず、生の jpg をキャッシュ フォルダーに保存することもできません。プリント スクリーン キーを押すだけで画像のコピーを取得することもできますが、おそらくほとんどの訪問者を止めるには十分でしょう。

Response.WriteBinary()、埋め込みフラッシュ、JavaScript ハック、隠し div。

長年にわたり、私は画像を保護するためにあらゆる方法を検討し、試してきましたが、次の 1 つの結論に達しました。ネットで見れたら・・・それは受け入れられます、友よ。

では、実際にこのアクションの最終目標が何になるのかを検討する必要があります。著作権侵害を防止しますか?大きくて特大の透かしが好みでない場合は、いつでも隠しデータを埋め込むことができます (Apress には、有望そうな記事がありました) デジタルステガノグラフィー) を画像内に追加して、後で自分のものであることを識別できるようにします。縮小または低品質の画像のみを提供する場合があります。

Flickr は、画像の上に透明な gif レイヤーを配置するアプローチを採用しているため、ログインしていない状態で右クリックすると、これまでにないすばらしい画像が表示されます。 スペースボール.gif. 。しかし、スクリーンショットを阻止できるのは、写真を提供しないことだけです。

音楽業界が、ファイルをコピーしたり所有したりせずに、すべての音楽を聴かせることができれば、そうするでしょう。もしテレビが放送できて、誰も出演者のコピーを保存できないと確信できれば、おそらく彼らも同様に保存するでしょう。これはメディアを一般の人々と共有する上で残念な点です。ここでの本当に良い質問は、立派なユーザーがあなたの画像を利用するのを妨げずに、どうすればあなたの素材を保護できるかということです。保護をかけすぎると、誰もあなたのサイトにアクセスしたり、あなたのソフトウェアを使用したりしなくなります(個人的に言えば、もしあなたが私のマウスを無効にしようとすると、私はほぼ瞬時に善良なユーザーから悪いユーザーに変わってしまうでしょう)。

JavaScript を使用してクリック イベントをオーバーライドするのが、私が見た中で最も一般的な方法です...

見る: http://pubs.logicalexpressions.com/pub0009/LPMArticle.asp?ID=41

2セントを投資しても良いと思います。

おそらくウォーターマークを除いて、上記の方法はどれも機能しません。

どこに行っても、コンピューターのプリント スクリーンを押してグラフィック エディターに貼り付けることができ、少しトリミングするだけで、あなたの画像を手に入れることができます。

ウォーターマークの問題を解決する唯一の方法は、Photoshop ツールを使用してウォーターマークを削除することです。この時点で、ほとんどの人は諦めてコンテンツの対価を支払うか、少なくとも他の人を騙すことになると思います。

短い答え:あなたはできません。ユーザーに表示するものはすべて、ユーザーが利用できるようになります。透かしを入れたり、ぼかしたり、低解像度バージョンを提供したりすることはできますが、肝心なのは、ユーザーのブラウザに表示される画像はすべて、何らかの方法で利用できるということです。

それは不可能です。がある いつも 「PrintScreen」ボタン。

表示されているものは何でもキャプチャできます。

ユーザー側のアプリケーションを介して行うのではなく、実際のファイルに透かしを入れて解像度を下げます。

残念ながら、いつでもブラウザの画面を取得して画像を切り取ることができますが、完璧ではありませんが、ここに掲載されているほぼすべての解決策を回避できます:(

私がこれまでに見たもう 1 つのアプローチは、スクリーン グラブに対して依然として完全に脆弱ですが、右クリックとキャッシュ検索が十分に煩わしくなります。それは、画像を多数の小さな画像に分割し、それらを 1 つの画像のように並べてページ上に表示することです。画像。

しかし、誰もが言ったように、それが見えるなら、それをつかむことができます。

現実的には、最初から見られたくない場合を除いて、それはできません。JavaScript を使用してマウスの右ボタンのクリックをキャッチすることもできますが、実際にはそれだけです。

別の考えとしては、フラッシュに埋め込むこともできますが、やはりスクリーンショットを撮るだけかもしれません。

ごめん。それ無理。できることは、flickr のように不便にすることだけです。

それは不可能です。[PrintScreen] ボタンは常に存在します。

テストしたのを覚えています 画像フリーズ 数年前。Java アプレットを使用して画像を取得して表示しました。画像データと接続は暗号化されており、暗号化されていない画像は一時フォルダーや Java のキャッシュにも保存されていませんでした。

また、アプレットが Windows の Clipbrd を常にクリアしていたため、Print Screen が機能しませんでした。

かなりうまくいきましたが、いくつか欠点がありました。

Java が必要であることに加えて、アプレット (おそらくアプレット自体) を埋め込む JS は、Windows の Clipbrd にアクセスできないブラウザでは正しく読み込まれないように設定されていました。これは、IE および Windows でのみ動作することを意味しました。

また、clipbrd をクリアするためにアプレットが使用する間隔は、非常に高速な Print Screen と Gimp への ctrl+v を使用することで打ち負かすことができます。他の方法で画面を印刷することもできます。

ついに、 ジャド アプレットとそのすべて/ほとんどのファイルを逆コンパイルする可能性があります。したがって、本当に写真が必要な場合は、ソースを調べて、どのように作成したかを理解することができます。

つまり、わざわざ多くの人を止めることはできますが、ユーザビリティは無駄になり、訪問者が見ることができれば画像を取得する方法が常に存在します。

クライアントに送信したものはすべてクライアント上にあります。画像を保存するのが「かなり難しい」から「かなり難しい」の間のどこかにする以外に、できることはあまりありません。

最初に、画像やテキストをコピーすることはほとんど不可能であると言わなければなりませんが、それを困難にすると、ほとんどのユーザーがコンテンツを盗むことができません。この記事では、HTML/CSSで画像を保護する簡単で効果的な方法を示します。私たちはこれに対して非常に簡単な方法を取ります...まず、DIVで、特定の高さと幅で画像を配置します。(200 X 200 とします)

これで、同じ高さと幅で別の透明な画像を配置し、-200のマーギンを与えることができます。実際の画像と重複するように。そして、ユーザーがこれをコピーしようとすると、彼らは透明なGIFのみになります…

    <div style=”float: left;”>
<img src=”your-image.jpg” style=”width: 200px;height: 200px;”/>
<img src=”the-dummy-image.png” style=”border: 0px solid #000; width: 200px; height: 250px; margin-left: -200px; ” />
</div>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top