電子書籍の厳選無料作品が豊富!

PHPで自動ログインの仕組み
PHPで自動ログインの仕組みをどのように組むか検討しています。
初回アクセス時にユーザー名とパスワードの入力を行い次回アクセスから自動ログインしたいのですがセキュリティの問題で良い方法が分かりません。以下が現在検討中の方法です。

方法(1):クッキーにユーザー名とパスワードを保存する。
欠点 :クッキーを見たらログイン情報がばれる。

方法(2):クッキーにセッションIDを保存してDBのユーザー情報と付き合わせる。
欠点 :結局セッションIDを取られてしまえば成りすましされてしまう。

方法(3):方法(2)にアクセス元のIPアドレスを組み合わせる。
欠点 :100%安全ではない。

やはり、クッキーを使っていたらセキュアな認証は不可能なのでしょうか?
個人情報の流出が懸念されるような場合は毎回ログインしてもらいhttps通信の中
大切な情報はセッションに持つのが正しい方法なのですか?

WEBの開発には慣れていません。
認証処理の組か方の常識なのかもしれませんが、詳しい方がいたら教えて下さい。
宜しくお願い致します。

A 回答 (2件)

自動ログインに安全なものはないのでは?


セキュリティをバーターに自動で処理するのだから
    • good
    • 0
この回答へのお礼

ご回答有難うございました。

お礼日時:2010/10/01 16:22

安全性はさておき、CakePHPでは、パスポートというものを発行してオートログインしてやるようです。



http://www.garacter.com/notes/CakePHP+Note:%E8%8 …

つまり、ID/PASSとは別に会員情報に関してユニークで十分に長い予測不可能な値を会員に持たせて、
それをCOOKIEにつっこんでおき、それを送信されてきたら、紐づいているユーザのIDを調べて
ログインさせるという方法のようです。

後はその発行したパスポートを生成日から適当に期限を持たせて、しばらくしたら無効にする、というようにすると。
方法(2)に近いやり方ではありますが、そもそも方法(2)は、HTTPの通信を傍受されていれば、
自動ログインの実装でなくても簡単に成りすまされるものです。
    • good
    • 0
この回答へのお礼

ご回答有難うございました。
CakePHPのパスポートなど勉強になりました。

お礼日時:2010/10/01 16:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!