問題タブ [remember-me]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
security - HTTP覚えておいてください認証
ユーザー向けの簡単なHTTP覚えている認証システムを作成しようとしています。
私のユーザーはそのように表現される可能性があります
したがって、私の考えでは、有効期限が無期限(非常に長い)のCookieを作成する必要があります。このCookieには、データベースからユーザーをフェッチしてユーザーをログインさせるための何らかの情報が保持されます。
私の最初のアイデアは、単にemail:password
文字列をCookieとして保存することでした。ユーザー自身以外にその種の情報を実際に生成できる人はいないので、これは良いことだと思いました。データベースの内容username
とを比較するだけで、ユーザーを非常に簡単に取得できました。password
しかし、それでは、これはあまり良くないと思いました。これにより、パスワードダイジェストが事実上2番目のパスワードに変換され、クリアに保存され、すべてのリクエストでネットワークを介して渡されます。
signature
そのため、ユーザーがログインするたびに生成できるのではないかと思いました。これは基本的に、データベースのユーザーオブジェクトに直接格納されるランダムハッシュです。
ユーザーがログインすると、保存されるこの署名が生成され、Cookieがこの署名を保持します。Webサイトにアクセスするたびに、サイトはどのユーザーがその特定の署名を持っているかを確認し、ユーザーをログインさせます。ログアウトするとCookieが効果的に消去され、新しいログインで新しいランダムな署名が生成されます。
このアプローチは他の脆弱性を考慮に入れていますか?
私はおそらくこれのためにすでに作成されたライブラリを使用する必要があることを知っていますが、これは単にWebセキュリティの演習にすぎません。
java - jsf 2.0 での「remember me」機能
「remember me」/「autologin」機能を実装しようとしています。クライアントに Cookie を保存しましたが、いつ読み取る必要がありますか? たとえば、フィルターでこれを実行しようとすると、データベースへのアクセスに使用するアプリケーション スコープの Bean にアクセスできなくなります。
それを行うためのベストプラクティスは何ですか?
asp.net-mvc - カスタム セッション オブジェクトの機能を記憶する
セッションオブジェクトにユーザー資格情報を保持するasp.net mvcアプリケーションを開発しています。これは、グローバル asax セッション開始メソッドで開始されます。また、取得または設定する statik クラスがあります。記憶機能を追加するにはどうすればよいですか。asp.netのフォーム認証をベースにしていますか?
java - セッションの作成とCookieの作成の違いは?
Playで最初のウェブサイトに取り組んでいます!フレームワークであり、ある時点で、ユーザーがログインしたときにこのメソッドを呼び出しています。
ユーザーIDをセッションに保存するだけで、リクエストごとに設定されているかどうかを確認でき、正常に機能します。問題は、ブラウザを閉じるとCookieが失われ、ユーザーが再度ログインする必要があることです。「rememberme」オプションを作成したいのですが、それを行う唯一の方法は、Cookieを作成し、次のように応答とともに送信することです。
だから私は、それがまったく同じことをするとき、セッションを作成することのポイントは何ですか?(ただし、Cookieの時間を制御することはできません)。そして、私がまだ見つけていないもう1つのことは、リクエストからCookieを読み取る方法です。
(そして、setCookieで作成されたCookieが暗号化されていないことを認識しているので、呼び出す必要がありますCrypto.sign()
)
ruby - Rails -- 「リメンバーミー」機能
Michael Hartl による Ruby on Rails チュートリアルの「Remember Me」の実装を理解するのに苦労しています。彼は、以下を含むサインイン用のメソッドを含む SessionsHelper モジュールを作成します。
注: authenticate_with_salt
User モデルのメソッドは、最初のパラメーター (id) によってユーザーを検索します。ユーザーが定義されていて、そのソルトが 2 番目のパラメーター (salt) と同等である場合、ユーザーが返されます。それ以外の場合は nil が返されます。
ユーザーが既にサインインしているかどうかをテストするために、なぜそんなに長い時間を費やすのか理解できません。
ユーザーがサインインしている場合@current_user
、メソッドによって既に定義されているsign_in
ため、メソッド内の ||=current_user
は無意味です。
ユーザーがサインインしていない場合、メソッドの ||= 演算子はcurrent_user
メソッドによって返された値を返しますuser_from_remember_token
が、cookies.signed[:remember_token] は nil でUser.authenticate_with_salt
あるため、[nil,nil] 引数が渡されます。そして nil を返すため、current_user
メソッドは nil を返します。
つまり、current_user
メソッドが定義されている場合は @current_user を返し、それ以外の場合は nil を返す場合、従来のアクセサー メソッドを使用する方がはるかに簡単ではないでしょうか。
Michael Hartl の本によると、これを行うと、ユーザーのサインイン ステータスが忘れられてしまうため、意味がありません。どうしてそうなるのか???なぜこれを行わず、代わりに上記のより複雑なバージョンを使用するのかを誰か説明してもらえますか?
symfony - ブラウザを閉じたときにセッションが期限切れになった場合に「remember me」を機能させるにはどうすればよいですか?
ブラウザがメインで閉じたときにセッションが期限切れになるように設定しましたconfig.yml
:
次に、ドキュメントに記載されているようにログインページに「remember me」を設定し、「remember me」をチェックしても(ブラウザを再起動すると)ログアウトされます。
ユーザーがブラウザを閉じたときに Cookie を期限切れにするように Symfony2 アプリケーションを設定する方法は?
Symfony2 -beta5 RC1 RC3 を使用しています。
android - 新しいパスワードを記憶するように Android Web ビューを設定するにはどうすればよいですか?
Web ビューで Web ページ (mail.yahoo.com など) を読み込んでいます。ユーザー名とパスワードを入力すると、アラートダイアログが表示され、パスワードを覚えておきたいかどうか尋ねられます。
問題は、ログアウトした後、別のユーザーがログインしたい場合、彼が自分のユーザー名とパスワードを入力した後、パスワードを記憶するかどうかを尋ねる AlertDialog が表示されなくなり、古いユーザー名とパスワードが記憶されることです。
私が欲しいのは、入力された最新のユーザー名とパスワードを記憶するように webview を設定する方法です。原因 (たとえば) ユーザーが初めて (アプリのインストール後) 間違ったユーザー名またはパスワードを入力し、それらが記憶されていることを確認した場合、間違って入力されたものを変更して正しいものを保存することはできません。
java - SpringSecurityの同じリソースのAuthenticatedビューとUnAuthenticatedビュー
認証されたユーザーと認証されていないユーザーの両方がアクセスできるリソースを作成しようとしています。また、remember-me認証も実施しています。リソース(ページ)にアクセスするユーザーの場合、remember-me認証でそのユーザーにサインインしてみてください。サインインが成功しなかった場合でも、ページは表示されますが、動作が異なります。セキュリティインターセプトURLを作成するときは、「none」または「Role_User」のいずれかを選択できます。ROLE_USERを試行する方法でSpringを機能させることはできますか?成功しない場合は、正常に「None」に低下しますか?これが私の春の設定がどのように見えるかです。
動的ページでremember-meauthを使用して「Role_User」を試行し、失敗を待ってから「none」にフォールバックしたいと思います。これを行うための推奨される方法はありますか?
isRememberMe()や連鎖式のような式については学びませんでしたが、この問題をどのように解決できるかはまだわかりません。私が欲しいのはこんな感じです。
getAuthoritiesクエリでは何も返されないため、これを行う他の方法を見つける必要があります。
security - ログアウト後にメールアドレスを保存する必要がありますか?
ログインフォームに「Remember Me」チェックボックスを挿入する Web アプリケーション用のアドオンを作成しました。私のユーザーの 1 人は、ログアウトした後に覚えていないことに驚きを表明しました。明らかに、ログアウトした人はログアウトしたままにしておく必要があります。特定の要求にもかかわらず、パスワードを平文で保存することを意味するため、パスワード フィールドには入力しません。
私の質問は、ユーザーが以前に「Remember Me」ボックスにマークを付けた場合、ログインフォーム用に電子メールアドレス/ユーザー名を事前に入力する必要がありますか?
公共のコンピューターで実行すると、そのコンピューターを使用する次の見知らぬ人に個人情報を効果的にブロードキャストすることになりますが、ユーザーは公共のコンピューターで「Remember Me」オプションを使用しないでください。
これを行う際のセキュリティ上の考慮事項は何ですか? ユーザーは、ログアウト後に自分の詳細の一部が記憶されていることを期待していますか?
編集:ブラウザにはすべて、フォームの値とログインの詳細を記憶する機能があり、おそらくこれが不要になっていると思います。