0

これが安全かどうか疑問に思ったのですが、remeber がどのように機能しているのかわかりません。Forget でログオフしてもブラウザで auth_tkt cookie が表示されるので、user_id を暗号化して cookie に保存するだけではだめだと思いましたね。

編集:
私のログインコード:

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

ログオフ コード:

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

1 に答える 1

1

pyramid.security.remember は、HMAC を使用して Cookie に署名し、改ざん防止に近づけます。 http://en.wikipedia.org/wiki/Hmac

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

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

また、ログアウト ビューのコードを含めて、試したことを教えていただけると助かります。

于 2012-05-13T09:52:16.727 に答える