問題タブ [logout]
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.
c# - ユーザーセッションを終了し、ユーザーがログアウトしていることを確認するにはどうすればよいですか?
私は.aspxを初めて使用しますが、Web対応のプロジェクトを実行しているため、ユーザーからこのログインを取得しています。ログインテンプレートをドラッグドロップしてから、
Session["Authentication"] = username.Tostring();
現在ログに記録されているユーザーの情報などを保存します。今では、右上隅にあるハイパーリンク「ログアウト」を使用して、ログインページに転送しました。(これが間違った転送方法である場合は、私に知らせてください、私はすべてインターネットで学習しています)。
これで、Webを実行している場合は簡単にログインできますが、ハイパーリンク「logout」を使用してログアウトすると、再度ログインページに移動しますが、ブラウザの戻るボタンを押すと、制御がデータに再び転送されます。ページと私は再びデータ操作を実行することができます。
これを使った
Session["Authenticate"] = null
ログインページのページ読み込み時に、ログインボタンをクリックした場合にのみユーザーが次の方法で再度入力できるようにします。
Session["Authenticate"] = username.Tostring();
次に、データページの各ページ読み込み時にチェックを使用しました
これは私の問題を解決しませんでした、誰かが私のログアウトの方法を改善するためのヒントまたはリンクまたはヒントを与えることができますか?私は.netやaspxの知識がなくてもこのプロジェクトに着手しましたが、まだすべてを学んでいます。事前に感謝の意を表します。
facebook - FacebookOAuth2ログアウトはfb_cookieを削除しません
これは以前は機能していたので、何が悪かったのかわかりません。ユーザーはFacebookに問題なくログインできます。ログアウトが問題です。
Facebookのログアウトphpスクリプトにリダイレクトして、ユーザーをログアウトします。$facebook->getLogoutUrl();
ユーザーがそのリンクをクリックすると、Facebookページからログアウトされます。しかし、彼らが私のサイトに戻されたとき、私はfb_cookieがまだそこにあることに気づきました。PHP SDKは、引き続きユーザーのfbセッションの詳細を返します。奇妙なことに、www.facebook.comにアクセスすると、私はすでにFacebookからログアウトしていることがわかります。
ここで何がうまくいかない可能性がありますか?ありがとう、私は困惑しています:(。
asp.net-mvc - 複数のタブを開いた状態での自動ログアウト
この他のSO投稿で説明されているものと同様のシステムを実装しました。基本的に、ユーザーが 14 分間何も操作しない場合、ログアウトするように促します。「ログイン状態を維持する」をクリックすると、セッションを維持するために ajax リクエストが実行されます。それ以外の場合は、1 分後にログアウト ページにリダイレクトされます。
これは非常にうまく機能し、mint.com や bankofamerica.com などのサイトで採用されている同様のシステムと一致しています。唯一の問題は、アプリケーションのユーザーが複数のタブを開いて、さまざまなデータを前後に参照する傾向があることです。したがって、問題は、1 つのタブでアクティブに作業している可能性がありますが、他のタブがタイムアウトしてログアウトすることです。これにより、ユーザーが予期していなかった突然のセッション タイムアウトが発生します。ところで、mint.com にも同じ問題があります。
それで、誰かがこれと戦うためのアイデアを持っているかどうか疑問に思っていましたか?
私には 1 つの考えがあります。各リクエストで「最終アクティブ時間」Cookie を設定できます。自動ログアウト時に、サーバーはこの最後のアクティブな時間を確認し、比較的最近の場合はログアウトを回避できます。手動ログアウトはもちろんこの Cookie を無視するため、ユーザーがログアウトしたい場合はいつでもログアウトできます。ただし、現時点では確認できない何らかのセキュリティ リスクが発生している可能性があるのではないかと心配しています。考え?
facebook - Facebook JS SDK for Open Graph: ログアウトが機能しない!
何らかの理由で を呼び出すFB.logout();
と、ユーザーは実際には Facebook からログアウトされません。
これはなぜでしょうか?js エラーはスローされず、SDK を実行するときにコードをステップ実行できますが、正常にログアウトされません。
php - ログアウト後に前のページを表示しないようにする
私はPHPアプリケーションで作業していますが、実際にユーザーがログアウトしてブラウザの戻るボタンを押すと、セッションが破棄されていないかのように前のページを見ることができます:((こことウェブで見つけたものをすべて試しましたが、うまくいきません:'(
戻るボタンを無効にすることはできますか?
php - ログアウトハッシュ、それらはどのように処理されますか?
ログアウトハッシュがphpで通常処理される方法は何ですか?
多くのサイトでは、通常、ログアウトしているユーザーが正しいユーザーであることを確認するためのログアウト ハッシュがありますが、これは通常どのように処理されますか?
例
nil4ytwojytjwoytjwy5tw5がハッシュ
他の人がこれがどのように機能するかを確認できるように、私の研究を更新しただけです。
このタイプの攻撃は、主にゼロバイト画像や iframe などで使用されることがわかりました。
サイト A にログインし、サイト B も閲覧している場合、サイト B は次のようなイメージ タグを配置できます。
要求は実際にログインしている正当なユーザーからのものであるため、要求は処理されます。
転送アカウント、ログアウトなどの重要なフォームに検証値を追加すると、ハッカーはこの値を取得できないため、リクエストは実行されません!
ご協力いただきありがとうございます
java - Java EE コンテナー管理セキュリティーからログアウトするにはどうすればよいですか?
私は websphere 7.0 で作業しています。アプリケーション サーバーのセキュリティを使用します。ユーザーとの関連付けを削除したいので、ユーザーは安全なリソースにアクセスする前にログイン ページにリダイレクトされます (request.getUserPrincipal() は null を返します)。
私は試します:
request.getSession().invalidate();
ただし、ユーザー プリンシパルは関連付けられたままです。
どうすればその関連付けを削除できますか?
delphi - Delphi: アプリケーションからログアウトするときにフォームを解放できない場合の対処方法
私は Delphi (7-2010) を使用しており、アプリケーションのフォームを解放しながら例外を処理する良い方法を見つけようとしています。アプリケーションには、Application オブジェクトが所有するいくつかのフォームがあります。ユーザーがログアウトしたら、既存のフォームをすべて解放して、ユーザーの状態が維持されないようにし、次にログインするユーザーのログイン ダイアログを表示する必要があります。
フォームの 1 つを解放しようとしているときに、例外が発生することがあります。これにより、フォームはメモリに残りますが、不明/使用不可の状態になるため、次のユーザーにフォームを再利用できず、メモリからフォームを削除することもできません。フォームはアプリケーションによって所有されているため、VCL から「MyForm という名前のコンポーネントは既に存在します」というエラーが発生するため、次のユーザー用にフォームの新しいバージョンを直接作成することはできません。とにかく古いフォームインスタンスをメモリに持つことに。
この場合、他の人がどうするか見てみたいです。ここにいくつかのアイデアがあります:
- これらの例外が発生した場合はアプリケーションを終了してください。とにかくユーザーはログアウトしているので、アプリを使い終わっている可能性があります。必要に応じて、必要に応じてアプリを再起動します。
- アプリケーションがフォームを所有しないようにして、フォームの複数のインスタンスを作成できるようにし、解放できない/壊れたフォームが少なくとも非表示になるようにします。
- 各フォームの名前を動的に生成するか、空白に設定すると、名前が重複したり、VCL から「既に存在します」というエラーが発生したりしなくなります。
- オブジェクトを解放するときに例外が発生しないように、アプリケーションを適切に作成します (非現実的です。予期しないエラーに対する緊急時対応計画が必要です)。
私の解決策は、上記の元のアイデアの 1 つでした。フォームを解放するループの周りに try/except ブロックを追加しました。例外が発生した場合は、エラー メッセージを表示せずにユーザーに表示し、ExitProcess(0) を呼び出してアプリケーションをすぐに強制終了します。
jsf - javax.faces.application.ViewExpiredException:ビューを復元できませんでした
コンテナ管理のセキュリティを備えた簡単なアプリケーションを作成しました。問題は、ログインしてログアウトした別のページを開いた後、最初のページに戻り、リンクなどをクリックするか、ページを更新すると、この例外が発生することです。ログアウトしてセッションが破壊されたため、正常であると思います(またはそうではないかもしれません:))。ユーザーをたとえばindex.xhtmlまたはlogin.xhtmlにリダイレクトし、そのエラーページ/メッセージが表示されないようにするにはどうすればよいですか?
つまり、ログアウト後に他のページをインデックス/ログインページに自動的にリダイレクトするにはどうすればよいですか?
ここにあります:
java - session.invalidate()の奇妙な問題
ログインとログアウトに奇妙な問題があります。コンテナベースのセキュリティを実装しました。すべてのページに(からtemplate.xhtml
)ログイン/ログアウトリンクがあり、バッキングBeanブールプロパティ(実際にはメソッド)に基づいてレンダリングされているかどうかはわかりませんisLoggedIn()
。また、バッキングBeanには、ログアウトリンクのアクションであるメソッドlogoutがあります(これはh:commandLink
)。String
暗黙のJSF2.0ナビゲーションを介してログインページにリダイレクトするLogoutメソッドが返されます。これで、アプリケーションをデプロイすると、自分のページを参照すると表示されますindex.xhtml
。そこからログインページに移動します。ユーザー名/パスワードを入力して[ログイン]をクリックすると、ログインします。しかし、[ログアウト]をクリックすると、前述のバッキングBeanのログアウトメソッドが呼び出されます。
[ログアウト]をクリックした後、ユーザー名/パスワードをもう一度入力して[ログイン]をクリックすると、ログインページにリダイレクトされます。しかし、それから奇妙なことが起こります。それは私を表示しますindex.xhtml
が、私はログインしていません。ログインページに再度移動し、最終的にログインするには資格情報をもう一度再入力する必要があります。これはsession.invalidate()
、バッキングBeanlogout()
メソッドで使用する場合にのみ発生します。私が使用するとき、request.logout()
すべてがうまくいきます。どうしたの?
編集:isLoggedInは次のように見えますが、ログインページを参照しようとしたときに(ログインしている場合のみ)index.xhtmlにリダイレクトするフィルターを作成したため、問題はないと思います。そして、それは起こりません。
編集済み:httpヘッダーを考慮したシナリオは次のとおりです:login.xhtmlをリクエストします:
応答:
ブラウザが別のリクエストを行うように一時的に移動しました:
応答:
ユーザー名/パスワードを入力して[ログイン]をクリックします。
応答:
index.xhtmlにリダイレクトされました:
応答:
https-httpに切り替えるフィルターがあり、その逆もあるため、リダイレクトします(httpsではlogin.xhtmlのみが必要でした)。
応答:
これでログインに成功しました。ログアウトリンクがレンダリングされるということは、バッキングBeanisLoggedInがtrueを返すことを意味します。次に、バッキングBeanのlogout()メソッドでsession.invalidate()を呼び出すLogoutをクリックします。
応答:
ログインページにリダイレクトすると、ログアウトは文字列 "/ ssl / login?faces-redirect = true"を返すので、そこに移動します。
応答:
別のリダイレクト、ログインページはhttpsにある必要があります(フィルターは機能しています:)):
応答:
つまり、これは通常のイベントの流れでした。今は異常です:)私はすでにログインページにいるので、ユーザー名/パスワードを再入力して[ログイン]をクリックします:
応答:
インデックスにリダイレクト:
応答:
ここでも、index.xhtmlのhttpへのリダイレクトをフィルター処理します。
応答:
この時点でログアウトリンクは表示されません。つまり、ログインしていませんか?それに応じてset-cookieがありますが、それはサーバーが私をログアウトさせたことを意味しますか?再度ログインページに移動すると、最初からやり直します。通常のログインや異常なログインのシナリオとは少し異なるサーバーログを挿入することもできます。また、それに応じてExpiresについても、なぜ1970年1月なのですか?私は本当に混乱しています。