- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:asp.NET内でSQLプロシージャを実行させた)
asp.NETでSQLプロシージャを実行させる方法と注意点
このQ&Aのポイント
- ASP.NETの環境でSQLのプロシージャを実行する方法について調べました。プロシージャはテキストファイルを読み込んでデータベースに追加・削除する機能を持っています。
- プロシージャを実行させるためには、.NETユーザーにサーバーロールのbulkadmin権限とユーザ権限のdd_ddladmin権限を付与する必要があります。
- ASP.NETでプログラミングされている場合、一般的にはWEBログインユーザーに上記の権限を付与することはないようです。セキュリティ上の配慮が必要です。代わりに、危険だと判断される場合はサブプロシージャを使用することが推奨されています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
セキュリティが気になるのでしょうか? 攻撃者にとって権限とかはあまり意味を成さないかと。 ご自信で自分の作ったプログラムに攻撃を仕掛けてみると分かると思いますが、権限があろうがなかろうと大して関係はありませんので。 権限が無くても、IISのプロセスに実行させてしまえば操作は全権限持ってるのと同様ですし。 セキュリティを意識するのであれば、POSTされたデータを直接通さない方がいいかと思います。 チェックボックスとかで数字以外入らないはずのフォームから文字列がきたりするので、そういったところをしっかりとエスケープしたりすることだけをしています。 自分は権限はとりあえず動けばいいので与えておいて、でもユーザーが起こすアクションには自由を与えないという風に作成していますね。 あまりセキュリティ対策に詳しくないので、自分が攻撃して突破できるところを全てふさいでいくっていう風に対策したらそうなりました。 ご参考までに。
お礼
アドバイスありがとうございます。 私はaspでプログラムを作成しているときにSQLインジェクションに攻撃された経験があるもので、リクエストにおいてはそういった対処をしてきました。 asp.netになってからframework側でいくつかの対策が打たれているため、作業がしやすくなったとの認識があります。