タグ

itとsqlに関するm_shige1979のブックマーク (5)

  • PostgreSQLアンチパターン

    37. 積み重なるWHERE句 -- 有効なアカウントのブログを取ってきたい場合 SELECT * FROM blog INNER JOIN users ON users.id = blog.user_id AND users.delete_flag = 0 WHERE blog.delete_flag = 0 38. 積み重なるWHERE句 -- 有効なアカウントのブログを取ってきたい場合 SELECT * FROM blog INNER JOIN users ON users.id = blog.user_id AND users.delete_flag = 0 WHERE blog.delete_flag = 0 ユーザの削除フラグを見る 39. 積み重なるWHERE句 -- 有効なアカウントのブログを取ってきたい場合 SELECT * FROM blog INNER JOIN users

    PostgreSQLアンチパターン
  • PHP入門書のSQLインジェクションとXSS対策をあらためて調べてみた

    継続的にPHP入門書のセキュリティ問題を確認していますが、今回は「やさしいPHP 第3版」を取り上げ、今どきのPHP入門書のセキュリティ状況を報告したいと思います。 やさしいPHP やさしいシリーズ 単行 – 2008/2/29 やさしいPHP 第2版 (やさしいシリーズ) 単行 – 2010/8/28 やさしいPHP 第3版 (「やさしい」シリーズ) 大型 – 2014/9/26 上記のように、2008年に初版が出版された後2回の改版がありました。 第2版ではクロスサイトスクリプティング(XSS)の説明が追加され、第3版ではXSSに加えSQLインジェクションの説明が追加されました。つまり、初版ではこれらの説明はなかったということです。 第3版におけるSQLインジェクションの対策方法はプレースホルダによるもので、結果として書にSQLインジェクション脆弱性は見当たりません(パチパチパ

    PHP入門書のSQLインジェクションとXSS対策をあらためて調べてみた
  • 新著が出ます:『SQL実践入門』 - ミックのブログ

    4月中旬ころになりますが、新著が出ます。SQLのパフォーマンスを主題にしたで、実行計画を読むことで、なぜこのSQLは遅いのか、あるいは速いのかをデータベースの内部動作まで把握して理解しよう、という趣旨です。 リレーショナルデータベースというのは、SQLという自然言語を模したインタフェースによって、低次のレイヤーを隠蔽する意図で作られたミドルウェアなので、当は実行計画などという手続レベルの世界をユーザが覗き見るのは、末転倒なところもあります。ただそうはいっても、現実にSQLが遅かったら原因を解析せざるをえないわけだし、大体当にブラックボックスにしたいなら、なんでどのDBMSも実行計画を見られる手段なんか用意してるんでしょうね不思議ですね、という理想と現実の狭間で悩むエンジニアの方々に少しでもベターな解に辿りつけるアプローチを提示できれば、と考えております。 以下まえがきと章立てです。

    新著が出ます:『SQL実践入門』 - ミックのブログ
  • ラックの扱われ方に見る脆弱性調査のあり方 | クロスジール

    SQLインジェクション判決が広まりを見せています 先日、以下の記事を書きました。 ・SQLインジェクション脆弱性の有無が重過失の判断に影響を与えた判決 http://www.crosszeal.co.jp/blog/20150209_sqlインジェクション脆弱性の有無が重過失の判断に影響を与えた判決.html この記事にも書いたとおり、北海道大学の町村先生、HASHコンサルティングの徳丸先生のエントリでこの件を知りブログを書いたわけですが、同じ方々も多いようで、この判決に関する情報や意見が検索で多くヒットするようになりました。 中には「脆弱性が一つでもあったら損害賠償が認められる」といった誤っている認識であったり、「SQLインジェクション対策をしたら費用が多くかかってしまう」といった首をかしげる意見もありますが、こういった情報が広まるのは良いことだと思います。今後広まっていく中で、正しい認

  • O/Rマッパーによるトラブルを未然に防ぐ

    1. O/R Mapper による トラブルを未然に防ぐ Makoto Kuwata <kwa@kuwata-lab.com> http://www.kuwata-lab.com/ PostgreSQLカンファレンス 2014 ver 1.1.0 2. copyright © 2014 kuwata-lab.com all rights reserved まえがき 現在、アプリケーション開発の現場では O/R Mapper (ORM) が普及しています。今後 も ORM を使った開発は、増えることはあっても減ることはないでしょう。 しかし ORM は、アプリケーション開発者にとっては便利でも、DB 管理者 (DBA) か らみたらトラブルの種でもあります。それが特にパフォーマンスに関する問題であるこ とが多いため、開発者と DBA が対立することも珍しくありません。 とはいえ、ORM によ

    O/Rマッパーによるトラブルを未然に防ぐ
  • 1