dポイントプレゼントキャンペーン実施中!

お世話になります。
 SQL2000+asp.NETの環境で、SQLのプロシージャを実行させようとしています。
このプロシージャはテキストファイルを読み込んでデータベースに追加・削除するもので、ここで使用している関数は
 ・DELETE/UPDATE/INSERT
 ・BULK INSERT
 ・CURSOR
です。このプロシージャを実行させるには「.NETユーザー」に対し、
 サーバーロールにてbulkadmin
 ユーザ権限にてdd_ddladmin
の権限を付与すれば実行されることは確認しています。

 ここで、ご質問なのですが、asp.NETでプログラミングされていらっしゃる方は、普通にWEBログインユーザーに上記権限を付与していらっしゃるのか知りたいのです。
 逆に、この権限付与は危険だからsubプロシージャにて記述したほうがいいよとかお教えいただければ、と思います。

 以上よろしくお願いいたします。

A 回答 (1件)

セキュリティが気になるのでしょうか?


攻撃者にとって権限とかはあまり意味を成さないかと。

ご自信で自分の作ったプログラムに攻撃を仕掛けてみると分かると思いますが、権限があろうがなかろうと大して関係はありませんので。
権限が無くても、IISのプロセスに実行させてしまえば操作は全権限持ってるのと同様ですし。

セキュリティを意識するのであれば、POSTされたデータを直接通さない方がいいかと思います。
チェックボックスとかで数字以外入らないはずのフォームから文字列がきたりするので、そういったところをしっかりとエスケープしたりすることだけをしています。

自分は権限はとりあえず動けばいいので与えておいて、でもユーザーが起こすアクションには自由を与えないという風に作成していますね。
あまりセキュリティ対策に詳しくないので、自分が攻撃して突破できるところを全てふさいでいくっていう風に対策したらそうなりました。
ご参考までに。
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。
私はaspでプログラムを作成しているときにSQLインジェクションに攻撃された経験があるもので、リクエストにおいてはそういった対処をしてきました。
asp.netになってからframework側でいくつかの対策が打たれているため、作業がしやすくなったとの認識があります。

お礼日時:2011/03/09 10:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!