2012-05-13 7 views
0

私はこれが安全かどうか疑問に思いましたが、私は記憶がどのように働いているのか分かりません。私が忘れてログオフすると、私はブラウザでauth_tktのクッキーを見ることができるので、user_idを暗号化してクッキーに保存するのは簡単ではないと思ったのですか?
pramid.security.remember secure?

EDIT:
私のログインコード:

headers = remember(request,user.userId) 
return HTTPFound(location="/",headers=headers) 

ログオフコード:

headers = forget(request) 
return HTTPFound(location="/login",headers=headers) 

答えて

1

pyramid.security.rememberは、それが近い改ざんを防ぎすることができたクッキーに署名するHMACを使用しています。 http://en.wikipedia.org/wiki/Hmac

忘れている質問については、クッキーなしで新しいリクエストをヘッダーに渡していますか?

headers = forget(request) 
return HTTPFound(location = request.route_url('home'), 
       headers = headers) 

http://docs.pylonsproject.org/projects/pyramid/en/1.3-branch/tutorials/wiki2/authorization.html#adding-login-and-logout-views

また、それはあなたが私たちを見る場合は多分あなたのログアウト・ビューコード

+0

含めて何を試してみましたが、ありがとう役立ちます!ログオフしてもアプリを実際に使用することはできません。Chromeで「Cookieを表示」ページが何らかの形でキャッシュされている可能性があります。 –

+0

@FelixScheinostもし私が間違ったクロムがウェブページのようにhtmlのすべての設定ページをレンダリングするなら、クッキーが変更されたかどうかを見るためにリフレッシュする必要があります:) – daniel

+0

ああ、忘れました。私は、クロムが背景をリフレッシュするような素晴らしいものを使用しないことに驚いています。私はまた、別の方法でテストしました。同時に2つの異なるブラウザにログインすると、異なるauth_tktのものも生成されます。 –