エクスコムの情報流出はシステム設計というより業務設計がだめな件 - aikeの日記(情報元のブックマーク数)

例の件を決済日とかから分析した内容。とても興味深いのが、要件定義の誤りなんだろうな。これ。

あー、良く見たら決済日が今日(返却の翌日)になってる。つまり、申し込み日ではなく、返却後に決済する方針なんですね。これを実現するには確かにクレジットカード番号や名義、期限、セキュリティコード情報を少なくとも返却時点まで保管しておく必要がありますね。おそらく、紛失や延滞などの申し込み時点では含まれていない追加料金が発生した場合に二度手間にならず確実に徴収するためにこうしているのでしょう。   気持ちはわかるけどだめですね。やっちゃいけない業務設計です。システム開発者の方でも、これは満たしちゃいけない要件だと気づくべきです。

2013-05-30

じゃあ、どうすればいいのかというと、あんまり良い案を思いつきません。たとえば、申し込み時に保証金を乗せた額を提示し決済して返却時にカウンターで保証金分を現金で返すとか、前金制のホテルみたいに最初に通常料金を払って、もし追加料金が発生すれば返却時にカウンターで支払うとか。どちらも手間だけど。 そもそも海外旅行者向けWiFiレンタルという業態がオンライン決済に向いてないのかもしれないとか思ったり。

2013-05-30

宮本さんも書かれています。

理由としては、当社の決済スキーム上、申込時に決済はしておらず、帰国後の返却
を受け請求額確定後に決済をしておりました。そのためにお申込時に入力して頂いた
クレジット情報全てを保持しており、その情報を基に帰国後に決済を行っておりました。
本来は、入金確認後にセキュリティコードを含むすべてのクレジットカード情報を
削除しなければならなかったのですが、それがデータベース上に残ってしまって
おりました。

みやもと くにお - エクスコムグローバルさんから,問い合わせの返事がありました.... | Facebook

screenshot