2012-12-30 11 views
18

私は、認証とセッション処理を必要とするFirebaseを使用して、基本的なwebappを構築しています。 Firebase Authのドキュメントを見て、私はFacebookのログインに対してemail/passwordオプションを使うことに決めました。Firebaseでのセッション管理?

ログインに成功すると、tokenが表示され、ページが更新されたときにログインするか、auth()を使用して新しいタブで再度ログインすることができます。しかし、そのためには、クライアント側のどこかにトークンを保存する必要があります。 authとセッションの処理を実装するsource code for Firefeedを介して、tokenはユーザーのブラウザのlocalStorageに保存されます。

このアプローチはどれくらい安全ですか? localStorageのデータはブラウザを使用している誰でも見ることができます。これには良い選択肢はありますか?

答えて

20

単純ログインによって返されるトークンは、時間に依存するユーザー固有のトークンです。侵害された場合、最悪の場合、攻撃者は限られた期間にそのユーザーを偽装することができます。ユーザーのパスワードやその他の機密データは含まれていません。

localstorageに保存されたホストドメインのJavascriptでしかアクセスできないため、他のサイトにアクセスすることはできません(ブラウザやサイトが侵害されていないと仮定しても、すべての賭けはオフになっています...)

したがって、短い答えは、このアプローチは非常に安全です。

+0

ありがとうございました。それは私が探していたものです。 – zodvik