May 01, 2010
携帯でクッキーがどれぐらい使えるか調べたメモ。
■3キャリア+スマートホン(PC)対応クッキー記述
クッキーのドメイン、パス指定に何も記述しなければ完全一致として扱われるのでこれであればそのままクッキーの読み書きは可能です。
しかし一定規模のシステムであれば、クッキーのスコープを広く取りたいケースの方が多いと思います。
サブドメイン、複数のAレコードによるWebサーバが存在する場合に、3キャリア共通に使えるようにするクッキーのドメイン指定は、「.」から始まるドメインを指定することで可能です。
例:
Set-Cookie: testcookie=thankyoumovatwi; path=/; domain=.movatwi.jp
この辺、ハマリ所なのでウノウラボの記事もご参考ください。(なんとドメインが.jpと.inで挙動が違うらしいという、、)
携帯とCookieドメイン
■携帯電話でクッキーがどれぐらい使えるのか?
以下、2010年4/30~5/1の間に、モバツイユーザーの方にご協力をいただき調査しております。
以下の数値は、同じ人の重複を弾いていないものの、全てキャリアの回線経由のアクセスです。
(i-modeシミュレーターやFiremobile Simulator、携帯電話自体が無線LAN経由などのケースは対象になっていません)
ただし、重複が含まれているので、数値はあくまでご参考まで。
全体の母数:4639件
-ドコモ クッキー対応
648 (全体の13.9%)
-ドコモ クッキー非対応
1667 (全体の35.9%)
-KDDI クッキー対応
1264 + 446 (全体の36.9%)
(446は、プログラムにバグによりクッキー非対応扱いだったもの。ただ後の動きを見る限り、ほぼクッキー対応と考えてよいと思われるのでこっちに入れている。)
-KDDIクッキー非対応
1
-SoftBankクッキー対応
606 (全体の13%)
-SoftBankクッキー非対応
8
ということで、クッキーが使えない確率は、約36%となります。
認証処理をクッキーだけに絞るのは難しいですが、クッキーと端末IDを使い分けるコストをかけるには十分な割合だと思います。(説得に使ってください)
■各キャリアのクッキー事情
・softbankは、端末でクッキーの送信を制御できる。
・KDDIは、見る限りCookieをオフにする仕組みは存在していない?
(KDDIのサーバサイドでcookieを保存しているケースもあるとか?!)
・ドコモは2009年夏に出たドコモ2.0ブラウザからはクッキーがデフォルトOnになっている
(設定でoffにもできる)。
故に新しいブラウザの普及率と連動する。今後逆転していくだろうがまだ先。
(なお、キャリアの技術情報にクッキーに関する記述もあるのでそちらも参照ください)
■その機種がクッキーが使えるか否かを確認するには?
⇒ダミーのクッキーを埋めてみて、次の画面で確認する
(リダイレクトも含め)
端末によってはクッキーを保存するかを確認する設定があるので、トップページでいきなりこれをやるのはオススメしない。
ちなみに、Googleコンテンツ変換経由ではクッキーは使えません。UserAgentも「Mozilla/5.0 (en-us) AppleWebKit/525.13 (KHTML, like Gecko; Google Wireless Transcoder) Version/3.1 Safari/525.13」みたいな感じで送られてきます。
■携帯のクッキー認証について、どう考えるか。
ということで、パーセンテージ的には65%の携帯では使えるんですね。
PCネイティブのエンジニアからすると、3キャリア対応とは、ドコモに代表されるレガシーな(よくわからない)携帯に如何に足を引っ張られずに目的を達成するか?という部分に注意が行くという実態があると思います。
しかし、前を向くと意外とクッキーが使える率が高いことに驚きました。
とはいえクッキーについては、例えば、KDDIにはこのような記述があります。
EZweb対応端末においてCookieは、EZサーバに保管されます。
※ただし、WAP2.0ブラウザ搭載端末ではEnd to EndのSSL通信時は端末に保管されます。なお、EZサーバに保管されたCookieはKDDI設備のメンテナンスなどによりリセットされる場合があります。
これ読んで、意思決定者にクッキー使えます!と言い切れるかいうと、若干、悩ましいところではありますね。
保存されてるクッキー認証が、ユーザーの手以外のところでリセットされたら。。。
もちろんその場合には、再ログインしてくださいって話なんですが、端末IDという魔のパラメータでは確実に動作はするし、かつ、業界で普通に使われているパラメータを前にして、それを選択しないってのには、相応の意識と説得力が必要かなとは思いました。
(その選択を推奨してるわけじゃないです。自分の言葉で語れるように勉強しないといけませんね、という話です。単純に高木さんが言ってたから、、、では通じませんからね。)
以上、ご参考まで。