0

Happstackフレームワークを使用して作成されたWebアプリケーションに単純なパスワードベースの認証を実装しようとしています。私のユーザーはIDとパスワードを提示します。これは、bcryptを使用してハッシュし、データベースでチェックします。ハッシュされたパスワードがそのIDのデータベースにある場合、ユーザーはそれによって認証されます。

素敵なユーザーを認証したら、そのユーザーがセッション中にログインしていることを示すセッションCookieを発行したいと思います。(私は「永続的」で「覚えている」種類のCookieを実装しようとはしていません。ユーザーがセッションにログインしているかどうかを調べようとしているだけです。)

ユーザーを認証するには、セッションCookieの存在だけで十分ですか?そうでない場合、他にどのような情報が必要ですか?Cookieの(ハッシュ化された)値をデータベースに保存することはできますが、現時点では、永続的なログインCookieとどのように異なるかはわかりません。

要するに、認証されたユーザーを識別するためにセッションCookieを使用することは可能ですか?もしそうなら、それはどのように行われるべきですか?

(セッションCookieを「安全」および「HTTPのみ」としてマークする方法と理由を知ることができましたが、どうしたらよいかわかりません

4

1 に答える 1

1

パスワード ログインの既存のソリューションにhappstack-authenticateを使用できます。それでも自分で作成したい場合は、ユーザーが読み書きできないセッション Cookie 用のhappstack-clientsessionパッケージが必要になります。「セキュア」とマークされた通常の Cookie は、HTTPS でのみ機能することを意味するだけですが、ユーザーは引き続き Cookie の読み取りと書き込みの両方を行うことができます。clientsession を使用すると、Cookie はサーバー側のキーで暗号化されます。「remember me」とセッション ログインの両方に clientsession を使用できます。それは単にあなたが何に設定したかに依存しますsessionCookieLife。使用する場合のデフォルトmkSessionConfは、Session必要なものです。

于 2012-08-21T23:55:08.240 に答える