問題タブ [session-management]
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.
ruby-on-rails - Rails: ユーザー ID の追跡
私の Rails アプリには、ログイン ページがあります。その人がログインした後、アプリがログインした人を追跡し続けるための最良の方法は何ですか。たとえば、ユーザーが別のページに移動した場合、コントローラー/アクションは、ユーザーがその後アクセスする各ページ間の変数。これを行うより良い方法はありますか?sessions
変数を使用する必要がありますか?
groovy - グルーヴィーなセッション。ユーザー名の調べ方
scafoldig を使用して Groovy でアプリケーションを開発しています。セキュリティのために Acegi プラグインを使用しています。次のように定義された ChangeManagement というクラスがあります (簡易版)。
create メソッドに対処すると、「Last Modified By」というラベルが付いたプルダウン メニューが表示され、Users テーブルのすべてのユーザーが表示されます。これが標準的な動作です。
これの代わりに、すでにログインしていてプルダウンメニューがないユーザーを直接表示したいと思います。すでに作成テンプレートを生成しており、それを変更できます。セッションからユーザー名を取得する必要があると想定しています。私の仮定が正しい場合、このユーザー名を取得するにはどうすればよいですか? 私が間違っている場合、現在のユーザーのユーザー名はどこから取得できますか?
前もって感謝します。
nhibernate - エンティティに遅延プロパティが存在する場合、NHibernate の criteria.List() がハングする
NHibernate クエリがハングし始めるという非常に奇妙な動作が発生しています。この動作を再現可能な方法で示すデモ プロジェクトを作成しました。
プロジェクトはこちらからダウンロードできます
問題のあるコードは次のとおりです。
重要な行は、作成者フィールドの .SetFetchMode です。私のデモ プロジェクトの最初のロードでは、正常にロードされます。更新を押すとハングし、crit.List() 呼び出しを通過しません。熱心な読み込みでは、いつでも機能します。
Castle.Facilities.NHibernateIntegration.Components.SessionWebModule を使用して、リクエストごとに 1 つのセッションを確保しています。
私が見つけたもう1つの奇妙なことは、これがSQL Serverでのみ発生することです。SQLite を使用すると、すべて正常に動作します。私のデモ プロジェクトでは、db を簡単に切り替えることができる単純なビルド フラグがあります。/build ディレクトリの local.properties.xml を見てください。
この特定のケースでは、熱心な読み込みによって問題が解決されることは理解していますが、私のアプリケーションでは、すべてを熱心に読み込む必要はありません。
ソリューションをダウンロードして、自分で試してみてください。他のマシンで試してみましたが、同じことをします。
SQL プロファイラーのキャプチャを次に示します。Posts のクエリがサーバーに送信されたことがわかりますが、そこで停止します。
最初のリクエスト (期待どおりに動作):
いいリクエスト http://muc-central.com/misc/good_request.jpg
2 番目の要求 (ハング):
session-management - 状態管理の問題
異なるドメイン名で示されている3つのWebサイトがあります。
問題は次のとおりです。
ユーザーが1つのドメインにログインした場合、他の2つのドメインには反映されません。同様に、ログアウトの場合も同様です。
2つの異なるドメインのセッション状態を維持するにはどうすればよいですか?
asp.net - ASP.NET で独自のセッション管理を実装する
ASP.NET で独自のセッション管理を実装するには、どのようなオプションがありますか?
組み込みのセッション管理の「ハイジャック」に関する古い解決策を 1 つ見つけました。
すべてのセッション タスクを実行するコンポーネントを実装する良い方法はありますか? 1 つのリクエスト プロセス中に HTTP リクエストとレスポンスを受け取るクラスを含めるにはどうすればよいですか?
ご協力いただきありがとうございます
よろしくマイケル
asp.net - ASP.NET セッション管理に Oracle 10g データベースを使用する
私はウェブアプリケーションを開発しています。何らかの理由で、セッション状態を保存するために外部ストレージを使用する必要があります。Oracle 10g をバックエンド データベースとして使用していますが、同じ Oracle 10g データベースをセッション状態の保存にも使用できますか?
前もって感謝します..
php - PHP で独自のセッション管理を実装する
PHP で独自のセッション管理を実装するには、どのようなオプションがありますか?
すべてのセッション タスクを実行するコンポーネントを実装する良い方法はありますか? 1 つのリクエスト プロセス中に HTTP リクエストとレスポンスを受け取るクラスを構築するにはどうすればよいですか? ストレージハンドラーを定義しているように見えるオプション「session_save_handler」しか見つかりませんでした。必要なのは、セッション管理全体を置き換えることです。PHP 構成を使用する別の方法はありますか?それとも、すべてのリクエストを受信してセッション管理を呼び出す独自のコントローラーを実装する必要がありますか?
ご協力いただきありがとうございます
よろしくマイケル
perl - TemplateToolkit とうまく連携する Perl セッション管理ライブラリはどれですか?
と を検討CGI::Application
しましCGI::Session
た。2つのうち、CGI::Session
より有望に思えます。ただし、モデルはTemplate ToolkitCGI::Application
ではうまく機能しないようです。(そう思うのは間違っていますか?)
1 つにコミットする前に、より多くのセッション管理ライブラリを評価したいと思います。推奨事項はありますか?Web サーバーに依存せず、複数のサーバーで動作するライブラリを探しています。Catalystは、既存のコードをCatalystのやり方に改造するのに時間がかかるため、現時点ではオプションではありません。
iphone - iPhoneでのHTTPダイジェスト認証の使用
HTTPダイジェスト認証を使用するサーバーと通信するアプリがあります。
iPhone内の「セッション」管理は、私たちの開発者にとってはかなり「ブラックボックス」のように思えます。フレームワークがhttpセッションをどのように処理/永続化するかがわからないというのは本当ですか?
私がここで薄暗いだけの場合、誰かがiPhoneでHTTPダイジェスト認証を処理する方法を説明してくれるでしょうか?
私の基本的な実行は次のとおりです。
- 安全なURLにリクエストを送信します
- サーバーは401を送信します
- クライアントはクレデンシャルを作成して保持し、それをサーバーに返します
- サーバーは資格情報を検証し、検証された場合は要求を完了し、検証されなかった場合は別の401を送信します。
- URLを保護するために後続のリクエストを行います
- サーバーが再度認証を要求します.......。
これは単一のリクエストで機能しますが、追加の後続のリクエストを行うと、サーバーは再度承認をリクエストします。サーバーは特定のユーザーのセッションを永続化していますが、iPhoneは何らかの理由で同じセッション内で要求を行っていません...したがって、サーバーは認証オブジェクトを破棄し、クライアントごとに新しい認証オブジェクトを作成する必要があります保護されたURLにリクエストを送信します。
これは正しい動作ではないと確信しています。
この状況でブラウザがどのように動作するかを見ると、次のようになります。
- ブラウザが安全なURLからデータを要求する
- サーバーは401を送信します
- ブラウザはユーザーに資格情報の入力を求め、それを保持し、サーバーに渡します
- サーバーは資格情報を検証し、検証された場合はデータを返し、そうでない場合は別の401を送信します。
- ブラウザがセッションを管理しているため、URLを保護するために行われた後続の要求では、資格情報の入力は求められません。
NSURLCredentialを作成し、NSURLCrendtialStorage内に永続化しています。次に、アプリが「didReceiveAuthenticationChallenge」を受信すると、ストレージからクレデンシャルを取得して返し、クレデンシャルが存在しない場合は作成します(最初のリクエストで)。
どんな助けでも大歓迎です。ありがとう。
java - サーブレットでのセッションID管理
Jmeterでパフォーマンステストを行っているときに、Webアプリケーションで問題が発生しました。私の質問は、代わりにJmeterに関するものではなく、単純なサーブレットセッション管理動作に関するものです。
そのため、ログインページをリクエストすると、応答ヘッダーで「セッションID」が返され、ブラウザによる後続のリクエストに使用されるWebアプリケーションがあります。セッションIDはユーザー名とパスワードとともに渡され、認証された場合、新しいセッションIDが返され、セッションはそのセッションIDで維持されます。これはCookieを使用しています。
現在、Jmeterには、負荷テストのためのスレッドベースのアプローチがあります。スレッドを並行して実行すると、基本的に各スレッドがログインページを要求し、Cookieに新しいセッションIDが含まれる後続のログインページが古いまたはを無効にするので、ログインページを要求する最後のスレッドのみが認証されます。他のセッションID。
これは、各スレッドが異なるセッションであり、独自のCookieマネージャーを持っているという事実にもかかわらずです。それはかなり奇妙です。
しかし、私の質問は次のとおりです。
ログインページにセッションIDを付けるのは理にかなっていますか。アプリケーションにアクセスするとすぐにセッションが作成される可能性がありますが、それは、セッションIDで新しいCookieを設定するものですか?このアプリケーションはすでに書かれているので、私はただ疑問に思っています。
各スレッドのセッションIDがjmeterでオーバーライドされている場合、それは、個別のCookieマネージャーを適切に割り当てることができないことを意味しますか?また、スレッドが異なるセッションであっても、古いセッションIDまたはCookieが破棄される可能性はありますか?
サーバーは、後続のリクエストのためにセッションID / Cookieを無効にすることをどのように知るのでしょうか?ブラウザが異なれば、複数のセッションを並行して開くことができるので、リクエスターのIPアドレスに基づくものではないと確信しています。
この問題に関するアイデア、説明、および光をいただければ幸いです。