ikepyonのだめ人間日記

セキュリティに関することを書いていく予定。

HiddenとWebアプリケーション

http://d.hatena.ne.jp/ockeghem/20071104/1194187563
を読んで、これは生きた化石の設計だなぁと思ったw
元々、HTTPはステートレスなので、複数ページに渡って内部データをやり取りしたいために、Hiddenと言うものが使われてきたんだと思うんだが(実際のところは知らんw)、今となってはそのようなやり方は古生代のやり方だと思う。
かつて、WebアプリケーションがCGIプログラムと呼ばれていたころは、セッション管理と言うものを自作せざるを得ず、その為、セッション変数と言うものを使うにはしきいが高かったから、簡易的にHiddenが使われてきたと思うんだな。データがページに埋め込めて、内部データの引継ぎを簡単に実装できるから、かつてはCGIプログラムで使われてきた。それでも、きちんとしたCGIプログラムでは、入力データのチェックを行うことで安全に実装することが可能だったりするんだけど、そういったことをしてないアプリケーションの方が多かった。
時代は下ってw、今やフレームワークや言語でセッション管理を実装しているため、Hiddenで内部データの受け渡しをやる必要がなくなったんだけど、未だにそれが行われているって事は、頭の切替ができてない開発者(設計者)がまだまだいるってことだよなぁ。
それとも、いわゆる入門書でセッション管理の仕組みとかセッション変数の使い方とか解説してない?
いずれにせよこんな設計は古臭いやり方なので、早急にやめて欲しいんですが、実際のところどうなんでしょ?
まあ、美しくて、安全な設計パターンみたいなのを作ってそれを広めたほうがいいのかもしれないけどねぇ。

とりあえず、こういった古臭いアプリケーションは「イトウ」ではなく「シーラカンス」と言うことを提唱してみるw