- PR -

ASP.NETのフォーム認証とファイルアクセス制御

1
投稿者投稿内容
豪雪地帯
常連さん
会議室デビュー日: 2004/06/08
投稿数: 34
投稿日時: 2004-06-21 19:08
ASP.NETでフォーム認証を利用しているとき、認証が済/未認証に関わらず、仮想ディレクトリィ内に存在するJPEGファイル名をURLで指定すると、アクセスできてしまいます。

セキュリティの面でまずいと思うのですが、アクセス出来ないようにするには、どのような設定或いは、プログラミングを行えば良いのでしょうか。

ちなみにimageサブディレクトリィを作って、そこにJPEGファイルを集めて、IISマネージャでそのディレクトリィのWebサイトアクセス許可を「ログアクセス」と「このリソースに索引を付ける」以外は全部チェックをはずし、実行アクセス許可を「なし」にしてみたのですが、それだとURL指定でアクセスはできなくなりましたが、今度はプログラムの中からそのJPEGファイルを参照できなくなってしまいます。

ASP.NET(VB.NET)+IIS5.0環境です。
よろしくお願いします。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-06-21 19:15
これ
[ASP.NET]特定の拡張子に対するアクセスを制限するには?

あれ?こっちかな?
[ASP.NET].htmlや.pdfファイルをフォーム認証やロギングの対象にするには?

[ メッセージ編集済み 編集者: Jitta 編集日時 2004-06-21 19:16 ]
豪雪地帯
常連さん
会議室デビュー日: 2004/06/08
投稿数: 34
投稿日時: 2004-06-22 16:14
Jittaさん、ありがとうございます。

"[ASP.NET].htmlや.pdfファイルをフォーム認証やロギングの対象にするには?"
のやり方でhtmlやjpgファイルをフォーム認証の対象とする事ができました。

ただ、jpgファイルは直接URL指定され、フォーム認証を通っても
表示させたくないので、
"[ASP.NET]特定の拡張子に対するアクセスを制限するには?"
のやり方で拡張子jpgに制限をかけたら、肝心のプログラム内
(htmlのsrc指定)からも参照できなくなってしまいました。

当然といえば当然ですが、その辺の対応が次の課題になりそうです。
(他を類推できないようなjpgファイル名称を工夫するとか等)
uguuxp
会議室デビュー日: 2004/04/26
投稿数: 12
投稿日時: 2004-06-23 15:20
豪雪地帯様

あまり面白くないやり方ですが、 jpg ファイルは別の場所に格納しておき、 jpg ファイルを指定するような URL が要求された場合にバイナリデータとして返すようなストリームを作るとか…
1

スキルアップ/キャリアアップ(JOB@IT)