幾ら言っても分からない人もいる

セキュリティについて考える。
サービス運営者にしてもそうだが、作り手にとって無視できないのはビジネスリスクだろう。はっきり言って、クローズドでないオンラインに繋がる以上、100%のセキュリティなどありえないわけで、リスクをどこまで見積もって、システム要件と仕様に組み込み、どこまでコストをかけて、それでもある程度のリスクを受容するという判断と決断が重要になる。
要件を出すのもコストをかけるのも、リスクを受容するのも発注者側の話ではあるのだが、そういった危険性に疎い発注者の要件を素直に受けて穴だらけであることを知りながらシステムを作るなど言語道断であるし、逆にセキュリティはパーフェクトでなくてはならず、メーカに無限責任を押し付けてくるといった発注者に対して安請け合いをしないことも肝要だ。いずれの場合にせよ、その仕様と金額でどこまでの対処が可能で、どういったリスクが想定されるのかを理解してもらい、且つ現時点で想定不能な未知のリスクについて、一方的に無限責任を問われないような契約が必要となる。単純化すると、ファイアウォールの必要性を説明し、設置するのに必要な金を出させて、その機器(機種)によって回避できる危険と回避できない危険を正しく理解してもらう必要があるということだ。

全てのシステムにおいて、考えうるセキュリティ対策を最大限施すのが理想ではあるが、現実的にはそのシステムの重要性(常時運用の必要性、影響範囲、保持する情報自体の重要性など)に見合ったコストの範囲内で構築を行うことになるだろう。あるいは発注者側がどうしても確保したい利便性とトレードオフでやむなくリスクを飲む場合もあるだろう*1。逆に言えば、コストを言い訳に出来ない部分で手を抜いたり仕様で穴を作りこんだり必要もないのに実行権限を与えたり無意味なリスナポートを開けたりするのは如何なものかと思うわけだ。

「このメーカは、この程度のものしか作れない」とか「この程度のセキュリティ意識しか持っていない」とか、技術的または意識的な面での不信感を買う、というのはそれ自体が作り手にとっての「ビジネスリスク」じゃないのか?「セキュリティ」というのは、その穴が明らかになったとき「それが実際に及ぼす被害の大きさ」以上に不信感を与えるものになっているということだ。
例えばBBSの、利用者でもちょっと工夫(合法的に)すれば見える場所に管理者用設定画面があったとしたらどうだろう。それを使って管理者レベルでログインしても、せいぜい背景色を変えたり他人の発言を消したり出来る程度だ。
 でも、それを見た利用者や、そのBBSの構築を発注した運営者から見て、その事実は「その程度」のリスクで済むものだろうか?次回もそのメーカ(SHでもSIerでもWebデザイナでも何でもいいが)に頼もうと思うだろうか。

セキュリティ意識ってのはそういうことだよ。

*1:それが本当に良いかどうかは場合によるが、ビジネスリスクに限って言えば、発注者にリスクを理解させたうえで文書化しておけば、メーカ側のリスクは下がる。発覚したらニュースになるようなミッションクリティカルなシステムの場合、それでも世間的な評価低下は避けられないが