ダメ技術部長の話

http://alfalfa.livedoor.biz/archives/51409411.html
http://d.hatena.ne.jp/NOV1975/20090111/p1 経由

「君たちさ〜、ログイン画面でユーザ認証って言うけど、
 IDとパスワード知ってたら誰でもログインできるって事だよね?
 それってどうなの?危険なんじゃないの?」

開発部長がこのような発言をすれば,*1まともにシステム知ってる人なら十人中十人がダメ部長の烙印を押すと思う.

そして悲しいかな,こういうボンクラ能無し最低ダメ部長というのは,日本のIT業界においてはそんなに珍しい存在ではないようだ.


どういうシステムを作るかにもよるけれど,IDとパスワードを知っている人間がログインできるのは正常な動作で,それは問題でもなんでもない.非常に高いセキュリティを求める場合はちょっと違うやり方もするけれど*2 *3,その場合でも,

  1. なぜ高度なセキュリティが必要か
  2. どういう脅威を想定しているか
  3. どういうタイプのセキュリティが必要か

くらいは開発部長なら提案できてしかるべき.

「セキュリティに絶対はない」のですべてのシステムには「危険がある」ものだ.セキュリティを採用するか否かは「危険があるから」ではなくて,「その危険が看過しうる者か否か」「その危険を減らすためにどこまでコスト負担すべきか」によって決まる.「危険なんじゃないの」だけではそれは専門家なら誰でも知ってる当たり前の事実を確認しているだけで,そこには「危険だからセキュリティを強化すべき」や「危険だけど看過しうる」のような主張が含まれていない.

また最適なシステムはそれを利用する利用者のスキルにも依存するし,セキュリティというのはそのハードやソフトだけではなく運用面まで込みで判断されるものだ.*4適切なパスワード管理ができない組織やユーザーならパスワードのみに依存するセキュリティは脆弱極まりないが,適切なパスワード管理が徹底されるならば十分に堅牢である場合が多い.「パスワード知ってたら〜」というのは,「正規の利用者でも禁止したい場面がある」のか「このシステムの性質上パスワードが洩れる可能性が高い」のか「ユーザーのレベルが低く,パスワードの適切な管理を徹底できない」のか,それだけでは明確になっておらず,なんら価値のある情報を提供していない.


上記の発言はどう見ても理解していない素人の発言なので,この発言をもって彼が「通常のパスワードによるセキュリティを超える高度なセキュリティを提案した」などと好意的に解釈することはできないよ.

仮に理解はしているけれど口べたなだけだったとしても,技術系の人間に求められる論理的な表現がまるで出来ていないために的確な指示が出せず*5,部長としては全く役に立たないだろう.

http://b.hatena.ne.jp/entry/http://alfalfa.livedoor.biz/archives/51409411.html

id:SiroKuro 現在の技術だと生体認証より(正しく運用された)パスワードのほうが堅牢なんだが知らない人は多そうだな。

そうなんだよね.ひょっとしたらそれが分かってないのかも.*6

id:kurokuragawa 車なんてちょっと右にハンドル切ると対向車に突っ込むんだぜ

この例えはいいな.


交通安全対策会議に呼ばれた,交通安全に関する識者の発言が次のような感じだったとすればどうだろう.

「君たちさ〜、シートベルト義務化で交通事故での死亡者数を減らせって言うけど、
 車のハンドルちょっと右に切ると誰でも事故を起こすってことだよね?
 アクセル全開で時速200kmで崖下に転落したらシートベルトだって意味ないよね?
 それってどうなの?危険なんじゃないの?」
「君たちさ〜、飲酒運転の取り締まり強化で交通事故での死亡者数を減らせって言うけど、
 車のハンドルをちょっと切って歩道に突っ込めば歩行者をなぎ倒すんじゃないの?
 赤信号で信号を無視して歩行者の群れに突っ込めばひき殺せるんじゃないの?
 それってどうなの?危険なんじゃないの?」

発言自体は一応間違いではないし,確かに危険なのは事実だ.しかしそれは自動車が「走る凶器」である以上は不可避な問題で,この発言は当然の事実を再確認しているだけにすぎない.

そして,この発言だけで,一体どこの誰が「全自動で安全に動く,空飛ぶロボットカーを発明してくれ」と主張しているように思うだろう.そしてその提案が現実的なものだと思うだろう.*7


あの部長の発言を聞いた開発者の脱力感が理解していただけるだろうか.

*1:しかも『進捗会議』で!!

*2:FeliCaなど物理的電子的な鍵を用意したり,生体認証を使ったり、ネットからのアクセスを禁止したり,サーバー室を分厚い鉄板とコンクリートで外部と物理的に隔離したり,サーバー室の鍵の所有者と操作するパスワードを知るオペレータを別の人にしたり,警備会社と契約してサーバー室の出入りをテレビカメラで監視したり,etc.
ただし当然コストは嵩むし,日々の作業は繁雑になるので,そのトレードオフを考慮して採用することになる.

*3:まあ,そもそも今回の奴は『進捗会議』という時点で,それ以前のレベルなのだが.

*4:有名なナチスエニグマ暗号機が解読されたのも運用面の隙を突かれたのが大きい.陸軍の方が海軍より運用が甘く,先頭6文字を乱数表から選ばせる海軍より「任意の6文字」をオペレータに選ばせていた陸軍の方が先に解読されている.人間に任意に選ばせた場合,任意とは言ってもランダムには程遠く,実際には安易に「ハイルヒトラー」のような予測可能な単語を選ぶオペレータも多かったのだ.この問題は現在でも同じで,安易に辞書に載っているような単語をパスワードに使う者は後を絶たない.
一方,海軍の暗号解読は,海軍が使用していた乱数表(もちろん軍事機密で,水をかけると消えるインクが用いられていて,いざという時は破棄が大原則.)が偶然入手できるまで待たなければならなかった.

*5:俗な言い方をするならば「彼にはコミュニケーション能力がない」.

*6:だから普通は生体認証は他の技術との組み合わせでしか利用できない.

*7:現在の技術だと,ハイテクを駆使したロボットカーによる自動操縦よりも,きちんと訓練されたドライバーの安全運転+シートベルトの方がより堅牢で安全なのである.常識だけどね.