PHPで携帯用の認証システムを作ろうと思っているのですが(SNS的なものです)、Cookieが使えないと聞いたので、どのような認証システムにしたらよいかわかりません。


現在の所、PEAR::Net_UserAgent_Mobileを使って端末IDを使って認証をしようと考えていますが、いわゆる簡単ログインだけでなく、普通のユーザーIDとパスワードを使ったログインもつくりたいと思っています。

出来れば、OpenPNEのようなCMSを使うという選択肢は使いたくないのです(勉強のために)が、参考になるURLや書籍など、何かご存知でしたらご教授ください。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2008/03/27 13:05:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:pahoo No.1

回答回数5960ベストアンサー獲得回数633

ポイント23pt

au携帯はCookieをサポートしますが、ソフトバンクは機種によってまちまち、ドコモはサポートしていません。

携帯端末用Web制作バイブル第2版」(八木澤知彦/翔泳社/2006年06月/2,940円)が参考になります。

id:lemolemo75

回答ありがとうございます。

そうですか。。「携帯端末用Web制作バイブル第2版」は見てみます。

Cookieをサポートしていないとしたら、mixiやモバゲーなどはどのように認証をしているのでしょうか?URLにハッシュされたidを入れることも考えましたが、それだとセキュリティ的に不安がある気がするのですが。。

2008/03/20 13:29:02
id:Mars No.2

回答回数203ベストアンサー獲得回数20

ポイント23pt

>URLにハッシュされたid

似たような事をします。

不安があるのもわかりますが王道でもあります。

「セッション管理」といいますので

「php セッション管理」で検索してみてください。

id:lemolemo75

回答ありがとうございます。

セッション管理で同じようなことが出来るのですね。携帯業界では、このセッションを使うのが主流なんでしょうか?

2008/03/20 14:51:15
id:y-kawaz No.3

回答回数1422ベストアンサー獲得回数226

ポイント22pt

Cookieが使えない環境では普通URLにセッションIDを入れる形でセッション管理を実現します。

リファラなどでセッションIDが漏れる危険なども高いですが、他に方法が無いためトレードオフですね。


但し、

・セッションIDを埋められるのは携帯のIPだけにするとか、

・IPから分かる携帯キャリア種(IPだところころ変わるので)やUser-Agentや携帯固有のヘッダ情報等をログイン時のセッションに覚えておき

・リクエスト毎に常に変化がないことを確認してセッションハイジャックを検出出来るようにする

・かんたんログイン情報も使えるなら使う

等といった多少の工夫を併用してセキュリティ的な不安要素を削っていくのがベストです。

id:lemolemo75

回答ありがとうございます。

つまり、IPで携帯以外のものをはじき、セッションハイジャックをある程度手動で検知するための仕組みをログインチェック関数に加えれば良い感じですかね?

session_regenerate_idという関数を使うという方法を見たのですが、こちらはどうなのでしょうか?質問ばかりですいません。

2008/03/20 14:53:50
id:ken33jp No.4

回答回数928ベストアンサー獲得回数13

ポイント22pt

Basic認証は携帯でも有効ですので、

セッションと併用すれば少しはセキュリティがあがります。

あと、携帯には個別識別番号がありますので、認証情報と

結びつけると、その携帯でないとログインできないシステムも

構築可能です。携帯を替え買えた場合の考察は必要ですが・・。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません