VCでつくったWindowsアプリから、Webサイト上のPHPを呼び出して、
MySQLのDBをいじる。
そんなストーリーを思いつき、サンプルアプリを作った。
家からやったら問題なかったので会社から試したら、403エラーが返ってきた。
原因はPOSTフィルターだった。
会社からのインターネットアクセスは制限が厳しい。
コンテンツフィルタリングが導入されていて、2chや検索結果のキャッシュ、
芸能・スポーツ関連などが閲覧できない。
その程度のことは、仕事をするのに関係ないからいいわけだが、
POSTフィルターは曲者だ。
掲示板への書き込みなどに使われるPOSTという技術をブロックするのだ。
POSTは、ブラウザからWebサーバーに情報を送信する方法の一つ。
表面にあらわれないで多くの情報を送信するのに便利なのだ。
GETだと、URLに?ではじまるパラメータが追加されて、送信情報が
そのまま見える形になってしまう。
ということは、送信した情報が検索エンジンに登録されてしまって、
意図せず情報が広まってしまう。
前述のサンプルアプリを協力会社のメンバーに試してもらったら、
何の問題なく動作した。
ちょっと、うちの会社のコンテンツフィルタリングは厳しすぎだな。
POSTフィルタリングだが、Web上のすべてのPOSTが
ブロックされているわけではなさそうだ。
おいらが試したのは、某レンタルサーバーを自分で借りた場所で、
サブドメインを付けたところ。
きっと、ドメイン名でブロックしているのか、レンタルサーバー会社が
登録してあるIPアドレスをすべてブロックしているかだ。
自分でつくった場所なんだから、あらかじめ登録されていたわけではない。
きっと、除外申請すればそこだけPOSTフィルタがかからなくなるだろうが、
その手続きは煩雑だし、またそれを一部のユーザーにさせるわけにはいかない。
興味深いサイトを見つけた。
自社のインターネットの規制はどれくらい?
これをみると、POSTフィルターまでやっているのは全体の5%。
2006年のデータなので、今よりもヌルイことは当然。
5年後の今は、情報漏えい、個人情報保護、コンプライアンスなどが
厳しく言われ始めているので、もっと増えていることだろう。
しかし、ソフト開発がWebに移行してきている昨今、ソフト開発会社で
POSTフィルタをかけているというのは、理不尽な気がしてきた。
2ch上の優良な技術情報をみたいときはある。
その他掲示板で、技術情報の交換をしたいときだってある。
会社に属する一技術者として、立ち上がってみようかね。
そうは言っても、そうそう短期的にルールが変わるものではない。
前述のアプリについてどうするか?
POSTをベースに作っておいて、もし403エラーで失敗したときには
送信情報を暗号化してGETで送信する。
サーバーサイド(PHP)で、複合化して情報取得してDBに送る。
POST用とGET用で、PHPを2つ用意しておけばよい。
ふむふむ、とりあえずの解決策がみえてきた。
POSTフィルター
投稿日:
執筆者: