何となく Blog by Jitta
Microsoft .NET 考

目次

Blog 利用状況
  • 投稿数 - 761
  • 記事 - 18
  • コメント - 37042
  • トラックバック - 222
ニュース
  • IE7以前では、表示がおかしい。div の解釈に問題があるようだ。
    IE8の場合は、「互換」表示を OFF にしてください。
  • 検索エンジンで来られた方へ:
    お望みの情報は見つかりましたか? よろしければ、コメント欄にどのような情報を探していたのか、ご記入ください。
It's ME!
  • はなおか じった
  • 世界遺産の近くに住んでます。
  • Microsoft MVP for Visual Developer ASP/ASP.NET 10, 2004 - 9, 2011
広告

記事カテゴリ

書庫

日記カテゴリ

ギャラリ

その他

わんくま同盟

同郷

 

Re:もうちょっと具体的に:re: Re:もうちょっと具体的に(えムナウさん)より:

私が好みなのはcom.execute()でストアドをよんでそのストアドのエラー値をRETURN_VALUEで拾うやり方です。
ストアド内でTransactionしていれば完璧に複数人数が使う業務に耐えられますし、SQLサーバーや.NetFrameWorkのException関係のコストも軽減できます。

データの操作はデータベース内で完結させる。昔、書いたような気がするのですが、忘れた。

私も、理想としては、そうしたい。理想では。そう。理想。。。

何が現実と違うのか。

Stored Procedure そのものがひとつの言語なので、ひとつのアプリケーションの中で複数の開発言語を使う。これが、本当に良いことなのだろうか、というのがひとつ。もちろん、SQL も、それはそれでひとつの言語なんだけど。

ああ。でも、後ろ向きな考え方だなぁ。

うん。千里の道も一歩から。今踏み出さないと、いつ踏み出すのか。

戯れ言は言っていられませんね。

ちゃっぴさんのコメントも、ふれてしまう。

re: ウェブだけじゃないのよ、SQL インジェクションは(ちゃっぴさん)より:

個人的には、DBMS の security 機能を利用した
より security に配慮した実装をやるべきではないのか?

でも、読めちゃいけない data が読めるとか
そういう問題は本来は code で解決する問題じゃ
無いような・・・

夏椰さんところ(スキーマわけによるセキュリティ対策 その2)で話されているように、スキーマをわけるなど、データベース自体がセキュリティを考えるのがよいでしょう。

いくら警戒しても、しすぎることはない。入力系の防御については、いろんな突破策が、後から後から出てくるでしょう。しかし、データ自体にアクセスできないのであれば、漏れることはないのですから。

ただ、泣き言に戻ってしまいますが、アプリケーションの設計をやって、コードを考えながら、データベースの設計やストアドの設計や、コーディングもやるのかぁ。。。

ん。。。いかに自分が安穏とした職場にいるか、よくわかりますです。。。

投稿日時 : 2007年1月18日 22:06
コメント
  • # re: ストアド プロシージャ…悩む...
    渋木宏明(ひどり)
    Posted @ 2007/01/19 14:06
    人数がいて、手分けして作業が出来るならいいんですけどね>複数の開発言語
    「ひとりで開発」が多い身としては、正直言うと面倒ですw
    LINQ がもっと発展して、コード中に書いたクエリがビルドするとストアドプロシージャになって。。。みたいな時代が来るといいんですが (^^;
  • # re: ストアド プロシージャ…悩む...
    ちゃっぴ
    Posted @ 2007/01/19 20:00
    上記のように書いたのは、それこそ Web application ではないという前提だから特に強く書いてみました。

    Web application の動作環境をちゃんと構築するなら、Web(AP) - DB の間に security の境界があり、直接 DB を扱えないようにするのが一般的です。

    ところが、Web application ではない client - server application の場合には直接 DB に接続しにいくという場合も一般的なわけです。

    この場合、user と password がわかっていれば、それこそ DB から好きなだけ情報を引き出すことが可能ですから、DB server 側で対策を行わないとそれこそ意味無いでしょう。

    書いていて上記の状態が結構あるんじゃないか?ってのがよぎりましたので。
  • # re: ストアド プロシージャ…悩む...
    ちゃっぴ
    Posted @ 2007/01/19 20:09
    > Stored Procedure そのものがひとつの言語なので、ひとつのアプリケーションの中で複数の開発言語を使う。これが、本当に良いことなのだろうか、というのがひとつ。もちろん、SQL も、それはそれでひとつの言語なんだけど。

    SQL CLR とか OracleJVM とかもあるにはありますがね。

    でも、やっぱりもちやはもちやで。
    # たまに融通利かなくて怒るけど → SQL
  • # re: ストアド プロシージャ…悩む...
    Jitta
    Posted @ 2007/01/21 21:32
    ひどりさん、ちゃっぴさん、コメントありがとうございます。

    > LINQ がもっと発展して、コード中に書いたクエリがビルドするとストアドプロシージャになって
     おお!!!ナイス・アイディア!!!
     まぁ、それが出来るなら、「開発の仕事って、何?」なことになっているような気もしますが、ステキですね。


    > この場合、user と password がわかっていれば、それこそ DB から好きなだけ情報を引き出すことが可能ですから、DB server 側で対策を行わないとそれこそ意味無いでしょう。
     ある、カスタマーセンターに勤務されている方の日記に、「お客様から電話で、『パスワード、わかるんでしょ?』って聞かれたけど、『私どもではわかりません』と答えました。本当は、わかるんだけどね」と、ありました。書きながら、このことが頭をよぎっていたり(^-^;
     この方の対応は 100点(日記に書くのは減点)だけど、システムとしては欠点だと思います。
     結構、ありそうですね。そういう穴が。。。
    (だから、「一番の穴は人間だ」と思うのですが)
  • # re: ストアド プロシージャ…悩む...
    ひろえむ
    Posted @ 2007/01/22 7:18
    ただ、この場合、EXCELなんかもそうですが、複数アプリケーションを連携させるシステムならばすべて同じ問題を抱えてると考えてもいいかもしれませんね。

    たまたま、対象がDBだからそうですが、技術者がこの連携をコード上で行う場合は、なからず複数言語(もしくは複数のアプリケーションの操作)を習得するしかいないでものねー(^^;

    たまたま、両者MS製品ということであれば、SQL.CLRやVSTOなんかでアプリケーション-言語間の連携が取りやすいアプリケーション(まま、十分満足できるないようかどうかはともかく(^^;)が多く出てきましたが、依然、他のメーカー(作者)のアプリからは、まだまだ難しいワケで・・・。

    そういう意味では自社内でそういったソリューションを提供できるという意味においてはMSが一歩有利って感じがしますよねー(^^;

    ただ、その複数をうまくつなげてソリューションとするのがエンジニアの仕事といえば仕事なんですけどね(^^;
  • # re: ストアド プロシージャ…悩む...
    ちゃっぴ
    Posted @ 2007/01/22 21:49
    > ある、カスタマーセンターに勤務されている方の日記に ・・・

    結構あると思うんですが、Access から ODBC link table を
    使って DB を操作する tool。

    で、要件としては user には DB の password を教えない
    ということで、Access の機能で password を保存して
    配布しました。

    これ、以前解析したんですが、mdb の中に password 平文で
    埋め込まれています。

    見る人がみたらいちころなんですが・・・

    本当は、直接 DB に接続できる環境こそ DB の secuirty
    高めなければいかないと思うんですが、なかなかもって
    そういう指摘すらあんまり無いのが現状ですね。
  • # re: ストアド プロシージャ…悩む...
    Jitta
    Posted @ 2007/01/23 21:38
    ひろえむさん、コメントありがとうございます。

    > 自社内でそういったソリューションを提供できるという意味においてはMSが一歩有利って感じがしますよねー(^^;
     ですね。自宅の PC は、自作なのですが、マザーボード、グラフィックボードは、AOpen を使っています。プリンタとスキャナはキヤノン。ハードディスクは Maxtor を買うようにしています。同じメーカーで揃えるのは、相性の問題もありますし、やはりサポート情報を探すところが1箇所で済むため。
     ええ。使用しているツールの紹介ページは、実は、自分が照会するためのものなのです。。。
タイトル
名前
Url
コメント