私はDeviseを使用しています。他のデバイスからユーザがログインしたかどうかを検出したいと思います。 (私はセカンドセッションを制限したくないので、安全な拡張機能を工夫することはできません)。複数の掲示板からログインしている場合、レールが検出される
だから、質問は - どのように複数のデバイスから同時にログインするユーザーを検出するかです。
私はDeviseを使用しています。他のデバイスからユーザがログインしたかどうかを検出したいと思います。 (私はセカンドセッションを制限したくないので、安全な拡張機能を工夫することはできません)。複数の掲示板からログインしている場合、レールが検出される
だから、質問は - どのように複数のデバイスから同時にログインするユーザーを検出するかです。
fingerprintjs2でデバイスを検出できました。ユーザーがログを記録すると、セッションに指紋を保存し、ユーザーが新しいデバイスにいるかどうかをセッションストアに問い合わせます。
私たちはセッションをサーバー側に保存します。同じアカウントから2回以上ログインした場合、1つのアカウントから2つのログインを同時に検出して電子メールを送信することを目的としています。 –
現在のセッションストアとは何ですか? DBストアまたはredisのようなキャッシュストア? –
また、ユーザーがログアウトせずにクッキーを消去したり、ブラウザを閉じたりすると、何が起こるのが好ましいでしょうか?彼らはまだ同じメールを受け取るべきですか? –
セッションコントローラーを変更して別のテーブルにログインし、IPアドレスやMACアドレスなどで識別し、ユーザーIDも保存する必要があります。テーブルを照会することで "ログイン"を得ることができます。 – max
htmlリクエストにはMacアドレスがありません(user_agentから取得できません) –
カフェ、仕事場、自宅(または携帯電話)からログインしている場合は、ipを変更できます。だから、このメソッドはより多くのバグを返すでしょう、それは –