hiromasa.zone : o)

2005/3/31 Thursday 投稿時の月齢:21.2  月名:二十二日月  潮汐:小潮 Moon:21.2[二十二日月]今日の心技体 : 好調期低調期好調期

セッション管理は難しい このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 13:50

Web でユーザインターフェスを構築するにあたり、サーバサイドプログラムで面倒となるのがセッションの管理ではないだろうか。 よくある話なのですが、改めて書いてみる。

http の通信は1画面の送受信が終わればはいおしまいなので、サーバはクライアントを TCP/IP セッションを使って特定することができない。 つまり、同じクライアントに”次の画面”を出したくても、サーバはどれが同じクライアントの要求なのか分からないわけだ。

そこで、サーバが送信した情報の中に、クライアント(ブラウザ)を特定するような ID を送り込む手法が使われる。 このID はセッションID とかと呼ばれ、また、このようにクライアントを特定して動かすことをセッション管理という。

送り込む方法は3つで、 cookie 、post の hidden 、get の引数、のいずれかにセッションID を忍ばせる。 ログに残りやすいという理由で get の引数 ( hoge.cgi?sid=hogehoge )で実装するのはセキュリティ上あまりよろしくないとされる。(要は Apache のログを見るとすぐばれる、ということだと思われる)

この場合、hogehoge というセッションID 他に知られた場合、そのセッションID を使ってそのクライアントのフリをすることができる。 たとえば、銀行の残高照会をしているセッションID を知ることができた場合、そのセッションID を使って他人の口座情報をみることができてしまう。 この行為を、セッションハイジャックという。

cookie、post、get いずれの方法であっても、結局 http での通信である以上、セッションIDは平分で流れるわけで、多少の強度の違いがあれど脆弱性を持つこととなる。 完全にセッションハイジャックをはねたいならば、SSL などで暗号化するほかない。

と、言っているわけにはいかない場合もあって、たとえばハイジャックされたところで致命傷を負わない、がしかし、なるべくならされたくないシステム(たとえばブログの管理画面)などで、暗号化しないでセッション管理を実装することも多々あるわけだ。

で、ちょっと考えて PHPとデータベースで実装をしてみた。

  1. クライアントには cookie もしくは html(POST hidden属性) でセッションID を渡す
  2. セッションID には有効期限を持たせる(たとえば前回アクセスから10分以内であれば有効)
  3. 同一セッションであると認識するときに、セッションID のほかに、IPアドレス、USER_AGENT の同一性もみる
  4. 前回アクセス画面と、HTTP_REFFER が不一致していないかを検証する

これでだいぶ不正ははねることができると思うのだが、いろいろな条件が重なると正当なアクセスでも切れる可能性があって、悩みどころ。

たとえば HTTP_REFFER をださないブラウザだとセッションがつながらないだとか、NAT 環境であると、IPアドレスが全部同じになってしまって意味がないとか。

あと、結構はまるのが、負荷分散などでサーバが複数ある場合。 個別のアプリケーションサーバで独自に管理してしまうと、次のアクセスが違うサーバにいった場合につながらなくなってしまう。(分散装置と利用するアプリケーションサーバによっては、分散装置がセッション管理をして同じサーバにとばしてくれる場合もある)

うーん、なかなか難しい。

PHP はプロダクト自体にセッション管理をする機構が備わっているので、こちらも試してみようと思う。

2005/3/30 Wednesday 投稿時の月齢:20.3  月名:二十日余の月  潮汐:中潮 Moon:20.3[二十日余の月]今日の心技体 : 好調前不安定期低調期好調期

mthmarketing.com って誰? このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 15:35

たまに、neo.mthmarketing.com というホストから空コメント のPOST がある。(実際の空コメント のPOST

名前が Anonymous。メールアドレスが e。という投稿をしていきます。どうも、自動 POST しているみたいのですが、内容がないので目的がよく分からない・・・。

google すると、「mthmarketing.com」であたりました。 どうやら、 SPAM ロボットの様子。 google のトップに上がっている海外のサイトも wordpress を使っているので、wp-comments-post.php のファイル名を認識して動く機能ももっているような気がします。

POST のパラメータ間違っているのか、hiromasa.zone(ここ) では SPAM として機能していないですね。

Jacob’s Blog Stopping Comment Spam

こちらに、SMAP系SPAM系 ホストの IP 一覧がありました。 気になる方は .htaccess でブロックするとよいでしょう。

追記。

初稿で SPAM 系ホスト を、SMAP系ホストと誤記しておりました。 お詫びして訂正いたします。 SMAP 系ホストというのは、kimutaku.hoge.jp などのことを指します。(ウソTM)

hiromasa.zone 運用連絡 このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 14:57

ただいま、MySQL データベースが不調につき、応答が帰らない事象が断続的に発生しております。 もし、不幸にもつながらなかった場合はしばらくしてからアクセスしてみてください。

コンテンツマネージメントシステム (wiki とか blogとか)の台頭で、共有データベースの負荷が高くなっているのかもしれません。 一応、問い合わせ中であります。

2005/3/29 Tuesday 投稿時の月齢:19.1  月名:更待月  潮汐:中潮 Moon:19.1[更待月]今日の心技体 : 好調前不安定期低調期好調期

「笑っていいとも」テレホンショッキング御出演を祝いたい! このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 12:14

「体験手記レポート部」さんにトラックバックさせて頂いています。

「笑っていいとも」テレホンショッキング御出演を祝いたい

花輪が沢山出ています! しかもすごい声援です。

花輪

なんだかどきどきします。

笑っていいとも!に大泉洋さんが

笑っていいとも!に大泉洋さんが このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 9:02

朝なにげなく、ほんとうになにげなく 他の人の blog の投稿などをみていら、笑っていいとも!に大泉にょうさんが出演!?

聖地

救命病棟24時特別番組がらみか!やられた。

次のお友達は誰なんだろう。 緊急病棟の出演者だろうか・・・。 平成の怪物だろうか。(←違う

2005/3/28 Monday 投稿時の月齢:18.3  月名:寝待月  潮汐:中潮 Moon:18.3[寝待月]今日の心技体 : 好調前不安定期低調期好調期

取り戻したいデータたち このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 17:27

取り戻したいデータたち。

  1. ザウスルにクラスのみんながスタイラスで落書きした画像
  2. パソコン通信、携帯電話ショートメールのログ
  3. PC88 でサンプリングした CM音声
  4. 昇竜拳練習ソフト
  5. 英単語を覚えるソフトと、がんばって本から入力したデータ
  6. 昔作った同人ソフトの制作記録をかいたテキストファイル
  7. MSDOS の config.sys と autoexec.bat
  8. 高校の時に CP/M上で作った、競馬のゲーム
  9. 放課後に無意味に話していたおもしろアイディア
  10. みんなのハンドル名と本名

何故か、google にもひっかからない。

2005/3/27 Sunday 投稿時の月齢:17.1  月名:居待月  潮汐:中潮 Moon:17.1[居待月]今日の心技体 : 低調期低調前不安定期好調期

amazon.co.jp から勧められた物 このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 11:43

たまに amazon.co.jp で買い物をすることがある。 主に本が多い。

立ち読みしなくてもだいたい分かる本。 もしくは、そのジャンルでただ1冊しかないような本。 そういうのを買う。 ということは、なんとなく偏る。

アマゾン には、その人の買う物の傾向をみて「おすすめ商品」を出してくれる機能があってなかなか面白い。 しかしジャンル「ホームアンドキッチン」のおすすめは強敵である。

以前は、「鼻毛クリッパー クロームメッキ」をおすすめされた。

・・・、買い物の傾向から、ハナゲの傾向を導きだされたようだ。

そして今日見たところ、「空気清浄機 (12畳) 」。

・・・、どうも汚い印象をアマゾンにもたれている模様。 とほほ。

2005/3/26 Saturday 投稿時の月齢:16.6  月名:立待月  潮汐:大潮 Moon:16.6[立待月]今日の心技体 : 低調期低調前不安定期好調期

HTMLエンティティ変換 と Nvu このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 23:04

HTML で文書を書くときに、文中に「<」とか「>」があるとブラウザがタグと間違えてしまう(HTML SGML DTD による)ので、エンティティ変換を使い別な文字として入力します。(&lt; とか &gt; とかってやつですね)

たとえば、 “HTML の解説のためのHTML文書” を書くと上記が大量に現れ始めるので、それを手で書くのは非常にきつい。 間違います。 あと、プログラムのコードを書くときとかも同様。 昔は <xmp> なんてタグもありましたが、今は非推奨なのでがんばってエンティティ変換することになります。

良いソフトがないかなーと思い、ああそうだと、オーサリングソフトの「FrontPage Express」を探す。 エンティティ変換の部分だけ使おうという作戦。 しかし、 XP には入っていない!!(いつのまに消えたのだ!!) どうやら、98Me 以降は入っていないようです。 とほ。

ではと、Mozilla 系でなにかあったなーと、Nvu (エヌビュー)を思い出す。 Mozilla composer を独立させてたもので、最近人気のソフトです。 そういえば、使ったことがなかった。

Nvu スクリーンショット

とりあえず変換したい HTML のソースを食べさせたら、エンティティ変換はもちろん、“それがHTMLであることを認識して” 色分けできるようにスタイル指定までしてくれました。(Firefox のソース表示から色属性をもってきてくれる模様) びっくり。 すごいですね。 やり方を書いてみました。(Nvu を使って HTMLのエンティティ変換を便利にする

他の機能を見るても、 FTP透過でファイルを管理できたり良くできているようです。 さすが人気があるだけのことはあります。(なんでも、英語版が出た瞬間に各国から翻訳志願がきたらしい)

HTML オーサリングソフトは変なタグを吐くのではないかと気が気でなくて、逆に難しく感じるのですが Nvu は素直そうです。 ビューも工夫されていて 文章系のサイトではかなり便利な雰囲気。

現在 バージョン 0.9 でそろそろ 1.0 がでそうです。 がんばれ~。

フェルガナの誓い このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 12:57

日本ファルコムさんやってくれます。

イース – フェルガナの誓い

だんだん、メニューが増えていっている。。

なんだか、昔ログインとかの雑誌に少しずつ情報が増えていく、あのワクワク感覚まで再び。 さすがです。

みたかんじ、6の3Dエンジン継承ぽいですね。背景はビットマップ描画のFF方式です。 英雄伝説のフルポリゴンエンジン使うかと思っていましたが、アクション製があると厳しいそうなので、良い選択だと思います。

2005/3/25 Friday 投稿時の月齢:15.3  月名:満月  潮汐:大潮 Moon:15.3[満月]今日の心技体 : 低調期低調前不安定期好調前不安定期

レンタルサーバ特需 このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加

日記 - ひろまさ @ 16:42

いくつか、試験の為もあってレンタルブログを試してみた。(そろそろ各方面から質問がきそうなのもあります)

  1. livedoor Blog
  2. goo Blog
  3. Yahoo Blog
  4. T-CUP AutoPage

一番良かったのは、 AutoPage でした。 ほぼ、valid な XHTML で書き出してくれて、管理メニューも分かりやすくできています。 よく分かっている人が作っている感じで好感。

他、Yahoo は速攻 googlebot がきていたので、アクセス数を気にする人には良いかもしれません。(Yahoo は、google のページランクが高いので、Yahoo からのリンク扱いになる Yahoo Blog もランクが高くなる) livedoor はちょっといじりずらい。 goo は一度閉じると2度と同じ ID で作れない、、等々でした。

レンタルブログは手軽で良いですね。 流行るのがうなずけます。 ただ、やはり少しいじりたくなると html 自体は変更できないので限界があり、そこを考えると、もしかするとレンタルサーバの特需も来ているのではないかと思った次第。

Movable Type(Perl) や、WordPress(PHP + MySQL) など有名どこが動くところが人気が出そうです。Perl と PHP と MySQL が使えて、外部に Socket をつなげるサーバということになりますね。

なぜそんなことを思ったかというと・・・、最近ここのDBサーバがよく落ちそうになっているためです。。 何人収容しているのだろう。

つながらなかったら、しばらくしてから再チャレンジしてみてください。。

このサイトについて

このブログは引っ越しを行いコンテンツはフリーズしています。hiromasa.anotherへどうぞ。

Powerd By WordPress

We (Heart) WordPress

WordPressME Logo
WordPress Plugins

ブログ内検索

Todays Popular

WordPress Ring

はてなリング - WordPress -

情報

19 queries. 0.103 seconds.

このページの先頭へ