あちあち情報局

趣味や日曜プログラムなどを書いています

ユーザ用ツール

サイト用ツール


サイドバー

メニュー

現在リニューアル中

タグ一覧

memo:image-pass

📝パスワードつき画像

Web画像にパスワードをつける方法


はじめに

Webサイトにアップロードする画像をパスワードを知っている人しか見られないようにするには通常.htaccessによるアクセス制御かパスワード付きのZIP圧縮する方法が一般的ですが、.htaccessはFTP側からは制限ができず、ZIP圧縮ではダウンロードして展開(解凍)作業が必要になります。

FTP側から見ても暗号化されていてダウンロードと展開作業が不要な方法を考えると、PDFのパスワード設定とhtmlのobject要素を使えばWebサイト上でパスワードを入力するだけで画像が表示できそうだと気が付きました。

閲覧にはPDFビュワーが必要ですが最近のブラウザはインストール済み、入って無くても各種OS用のPDFビュワーが無料で入手できます。

デモ

Windows版のChrome/Firefox/EDGE/Operaで試して下さい(IEはダウンロードリンクになる事があります)

※Edgeはver42だと表示されません。ダウンロードをクリックしてご覧ください。

パスワードに「test」と入力すると画像が表示されます。(PDFビューワーが無い場合はリンクからダウンロードしてください)

PDFファイルダウンロード

説明

PDFファイルをパスワード付けて作成します。PDF作成にはAdobe Acrobatやフリーソフトなどパスワード付けて保存できる編集ソフトを使います。私はLiberOfficeのDrawを使用しました。

パスワード付きで保存したPDFをアップロードし、Webサイトの表示したい部分に次のタグを書き込みます。(widthとheightは各自で調整してください)、後述のa要素はobject非対応ブラウザ用のダウンロードです(本来はダウンロードはobjectタグの内側に書いた方が良いのですがブラウザがEdgeだと正しく動作しないのでobject外に出しています)

<object data="PDFファイルのアドレス" type="application/pdf" width="300" height="300">
</object>
<p><a href="PDFファイルのアドレス">PDFファイルのダウンロード</a></p>

注意

ブラウザによって動作が違います

Firefoxobject部分にパスワード入力表示
Google Chromeobject部分にパスワード入力表示
Operaobject部分にパスワード入力表示
Microsoft EDGEページ表示した時にパスワード入力のダイアログ表示、1ページに1つしか設置できない → ver42だと表示されません
IE11ダウンロードしてPDFビューワーで表示(Adobe AcrobatReader インストール済みなら表示されるかも?)
memo/image-pass.txt · 最終更新: 2018/11/29 19:55 by 管理者