SQLでパスワードを平文で格納してはいけない データベース設計における重大なセキュリティリスクのうちの一つに、SQLでパスワードを平文で格納するというものがあります。 これは重大なセキュリティ欠陥であり、権限のない人に特権的なアクセスを与えるセキュリティリスクを生じさせます。 パスワードを平文で格納したインシデント例 パスワードは、よく文字列型の列としてAcountsテーブルに格納されます。 CREATE TABLE Acounts ( accountid SERIAL PRIMARY KEY, account_name VARCHAR(20) NOT NULL, email VARCHAR(…
全ての結果を一つのクエリで出そうとしてはいけない 電話で幹部と話している上司が、いきなりあなたの机に来てこう言いました。 「SQLを使って次の4つの値を調べて欲しい。開発者一人当たりの平均バグ修正数、修正したバグの中で顧客から報告された数、バグを修正した開発者の数、うちの課が取り扱っているバグの数」 あなたは怒りを抑えて、全ての答えを一気に取り出したいので、次のような複雑なクエリを書くことにしました。(これが間違い) SELECT COUNT(bp.product_id) AS how_many_products, COUNT(dev.account_id) AS how_many_devel…