私はOpenIDを使ってユーザーをサインするウェブサイトを持っています。私が使用しているライブラリは、ユーザーがログインしたときにユーザープロファイルを返します。このプロファイルには、ユーザーの電子メール、名前、アバターへのリンク、OpenIDプロバイダから返されたIDが含まれます。OpenIDを使用してログインしたままにするための安全な戦略
ログインしているユーザーを維持するための私の戦略はこれです:初めてでユーザーloggesが、私はOpenIDのの返されたID
- 私はこのハッシュコードを保存します2つのクッキー内のユーザーIDとともに表示されます。
- ユーザーが、私はこれらのクッキーをチェックし、彼らが利用可能にしている場合、IDとハッシュコードを一致させよう、それが正しいなら、私は、ユーザーがログインし、私のウェブサイトに来るとき。
今度はという問題がこれです。このクッキー情報が何らかの形でユーザーから盗まれた場合、ハッカーはユーザー自身の代わりに簡単にログインできます。ユーザーがログインしてユーザーのcookeisを更新するたびに新しいハッシュコードを作成できますが、他のブラウザー/コンピューターのCookieの情報は無効になります。
StackOverflowのウェブサイトは、このような問題に悩まされないので、私は私のログイン戦略を確保し、ユーザーのためにログイン滞在する機能を追加するために、両方の何をすべきかを知っていただきたいと思います。
「ハッシュコード」とはどういう意味ですか?それが単にユーザーのopenid URLの安全なハッシュであれば、攻撃者は最初に元のCookieを入手する手間を省くことができます。 –
StackOverflowウェブサイトがこの問題を抱えていないことをどう知っていますか? –
@NickJohnsonあなたは正しいですが、私は彼らが推測することを困難にするために最善を尽くしています。しかし、どういうわけか、(あなたが言及したように)ランダムなセッションIDがより良い解決策になると思います。 –