2016.01.07

3Dセキュア認証のシミュレート機能について

技術話

自社システムだけで完結するものは、検証もしやすい。


検証目的でデータそのものを加工してみるなんていうこともできちゃう。


でも、他システムと連動するとなると、慎重にならざるを得ない。


他システムとのデータ連動において、本番で何らかの不備が発覚した時に取り返しのつかないような状況にはなりたくないし。


特に、お金の動き・決済情報に直結するデータ連動ならば、どれだけ失敗を避けたいかは想像しやすいと思う。


そのため、十分に検証できる環境を提供してくれるなら、あらゆるケースを想定して徹底的にテストする。


でも、十分に検証できるとはとても言えないものが中にはある。


クレジットカードの「3Dセキュア認証」が、まさにそうだ。






◆3Dセキュア認証って何だ


VISA、MasterCard、JCBが推奨している本人認証用サービス。

※クレジットカード会社によって名称は異なります。


クレジットカード裏面の署名欄に記載のある「セキュリティコード」より強固なものとなります。


クレジットカードそのものの盗用があっても本人のみが知るパスワードを使用するため不正を防止できます。






◆なぜ3Dセキュア認証は検証しづらい?


多くの場合、3Dセキュア認証の検証には実在するクレジットカードおよび本番環境を用いる必要があります。


つまり、3Dセキュア認証に限ってのみ、テスト環境やテストカードといったものが提供されないことを意味します。


これは一度自社サイトを離れ、VISA、MasterCard、JCBそれぞれが提供するパスワード入力画面を経由し、また自社サイトに戻ってくるという決済上の流れを完全再現するため、クレジットカード会社側は本番環境を用いていることが要因と考えられます。


そのため、十分な検証には実在する3Dセキュア非対応・対応のカード2種類を所持した上で、本番環境を用いた実際の決済を実行してみなければならないのです。


そんな認識もなく、ただ検証をする=実際に決済されるため、そのまま放置すると請求が来てしまう、なんてことも。


検証に使用した決済は、必ず取り消すところまで進めましょう。。






◆開発者想い(?)の代行会社は「3Dセキュア認証」もシミュレートしてくれる


今のところ経験上、2社だけ3Dセキュア認証もシミュレートしてくれる代行会社があった。


自分(開発者)の目線では「やりやすいな~ありがたい」と思っていたけど。


シミュレートができる代わりに、VISA、MasterCard、JCBそれぞれが提供するパスワード入力画面を経由せず、代行会社が用意するダミーの3Dセキュア認証画面を経由するため、完全再現とまではいかない。




・実在するカードを用いて実際に決済されてしまうが、100%動作保証が取れるほうが良いのか


・代行会社が用意するシミュレート機能に任せ、100%に近い(?)動作保証が得られるほうが良いのか




改めて整理して考えてみたら、前者だなと思えてくる。


面倒だけど手は抜かないほうがいい。

松本 玄

代表取締役専務
京都開発研究所 所長

松本 玄

2014年7月8日に株式会社ガーディアン第二代社長に就任。
2018年9月25日に代表取締役専務に就任。
京都開発研究所にて従来の開発、プログラミング、サーバ構築保守業務を中心としながら、離れた東京メンバーとのコミュニケーションを欠かさぬよう継続し、メンバーと共に成長していきます!
師でもある社長、青山の元で経営について学んでいます。