不特定多数の方に開放したホームページ上で販売を行うネットショップ・オンラインショップにおける電子商取引では、ユーザーの入力情報を保護する事が必須であり、更に外部からの攻撃に備え十二分な対策を講じる必要があります。
ここまでの対策でサイバー攻撃や心ないいたずらを「ある程度、防御できる」ようになりました。
しかし、実はここからが悩ましいのです。
なぜかというと、cookie自体はその機能を満たしているにも関わらず「cookieにより一意に識別したユーザーの一連の操作であるセッションを管理できる」と明確に断言できない状態だからです。
そもそもcookieを含むHTTP仕様は、広く開放されたインターネット上で誰でも情報を発信でき、受信でき、一方通行ではなく、掲示板やショッピングカート機能などサーバとユーザーの対話、更には商取引もできるように考慮されたものですが、前提としてあくまで全てのアクセスは善意のアクセスに基づく利便性向上のためのものなのです。
だからそもそも、昨今のような悪意のあるアクセスが蔓延する状況は想定されていませんでした。
それでは具体的に何が障壁となるのでしょうか?
結論から言うと、「cookie自体を保護しきれない」からであり、一方でそれを補完する策としてcookie以外に一意のユーザーを識別する絶対的根拠となるものがないからです。
逆に言えば、cookie自体を完全に保護できれば、cookie以外に一意のユーザーを識別する絶対的根拠は不要ですし、cookie以外に一意のユーザーを識別する絶対的根拠があってそれを確実に保護する事ができれば、cookieを利用しなくても済むのですが、そうではない為に悩ましいのです。
ショッピングカートに必要な品質確保する為の大前提の対策。
セキュリティを考える上でショッピングカートCGIの対策を講じただけでは不足です。
ショッピングカートCGIで利用する複数のファイルと公開するウェブサーバ上のセキュリティ設定とディレクトリ保護、ウェブサーバへのアップロード、ターミナルエミュレータ利用におけるセキュアな接続なども必要です。
また、ログインID、パスワードはセキュアなウェブサーバ、セキュアなFTPソフト、セキュアなターミナルエミュレータにおいても徹底管理が必須です。
ネット上でショッピング機能を利用する場合、「一連の操作をしているユーザー」を特定する為にはcookie/クッキーの設定が不可欠です。
ここまでのセキュリティは最低限必要であり、cookieの実装によりショッピングカートを一応組み込む事はできますが、残念ながら完全にセキュリティが確保されるわけではありません。
また、善意のアクセスの拒否か、またはセキュリティ確保の二者択一を迫られるケースもあります。