問題タブ [asp.net-session]
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.
asp.net - IE11 を使用したサブドメイン間の ASP.Net_SessionId Cookie
new.somecompany.com と legacy.somecompany.com という 2 つの ASP.NET Web サイトがあります。
「新規」は、Windows 認証を使用するイントラネット アプリケーションです。「レガシー」はインターネットとイントラネットの両方です。フォーム認証を使用します。
私の上司は、「新しい」Web サイト内から、リンクをクリックして、「レガシー」サイトの既にログインしている Web ページへのブラウザ ウィンドウを開くことができるようにしたいと考えています。(彼は、レガシー サイトを変更せずにこれを行うことを望んでいます。)
Chrome (バージョン 39.0.2171.95 m) と Firefox (バージョン 33.1.1) の両方で動作するソリューションがありますが、Internet Explorer (バージョン 11.0.9600.17501) では動作しません。大まかな解決策は次のとおりです。
- 「新規」のコントローラーは、HttpWebRequest を使用して、保存された資格情報を使用して「レガシー」にログインします。
- コントローラーは、「レガシー」応答から「ASP.Net_SessionId」Cookie を取得し、それを使用してブラウザーでドメイン「.somecompany.com」の「ASP.Net_SessionId」Cookie を設定します。
- ブラウザから、 に移動し
https://legacy.somecompany.com/somepage.aspx
ます。
Chrome および Firefox では、https://legacy.somecompany.com/somepage.aspx
ログインに使用された保存済み資格情報に応じて が表示されます。IE11ではログインページが表示されます。
Microsoft の Message Analyzer ツールを使用して、何がやり取りされているかを確認しました。Chrome では、ASP.Net_SessionId Cookie が somepage.aspx の HTTP 要求で送信されていることがわかります。IE 11 では、Cookie が送信されず、ログイン ページへのリダイレクトが応答として返されます。
これを IE 11 で動作させるためにできることはありますか?
c# - ユーザーをログアウトする方法 (セッションあり)
ASP.NET を使用して C# のセッションからユーザーをログアウトする方法を知りたいです。ログイン時のユーザー名を取得するために SQL Server を使用しています (下のコードの 2 番目のブロック)。
ログインすると、別のページにリダイレクトされます。これがそのページのコードビハインドです
iis - ASP.NET_SessionId の名前を変更した後 - まだ要求ヘッダーに表示されます - 解決方法は?
ヘッダー内の ASP.Net への参照を削除しようとしています。
私たちの .Net MVC プロジェクトでは、Web 構成に次のものが含まれています。
Web サーバー (IIS) を介して表示すると、ホスト ヘッダーに次のように表示されます。
ただし、ローカルでテストすると、ASP.NET_SessionId 参照が表示されません。
また、フォーム認証 Cookie の名前を別の名前に変更しました。
私は何が欠けていますか?
c# - ビューでセッション変数を削除する
以下に追加すると、このコードから出力が得られないのはなぜですか@{ Session.Remove("errors"); }
コードは最初に評価されてから出力されますが、それでも意味がありません。私はそれで出力を取得しなければ@{ Session.Remove("errors"); }
、それは非常に面倒です。
現在のリクエストのみ持続する FLASH メッセージを実行しようとしています。
更新しました:
意見:
c# - ASP.NET セッション ラッパー Session.Abandon() 方法
ここの回答で説明されているように、セッションラッパーを使用しています: How to access session variables from any class in ASP.NET?
しかし、この原則を使用して Session.Clear() と Session.Abandon() を実行する方法がわかりません。
私のコード:
asp.net-mvc - ASP.NET_SessionId リクエスト Cookie は安全ではありませんか?
サーバーの応答では、次の行を .xml 内に配置して、すべての Cookie に「安全な」フラグを追加していますweb.config
。
ASP.NET_SessionId Cookie が応答で「安全な」フラグを示すため、これは機能しているようです。
ただし、ページでアクションを実行し、開発ツールを再度確認すると、まったく同じ Cookie がクライアント要求で「安全な」フラグを持っていないことに気付きました。
Internet Explorer 11 開発者ツールを使用してネットワークを表示しています。
セッション Cookie には、クライアントの要求に「セキュア」フラグを含める必要がありますか? そうでない場合、「安全でない」リクエスト Cookie を持つことによるセキュリティへの影響はありますか?
しばらく調べてみたところ、Cookie または Cookie の「安全な」フラグを変更しているコードがアプリケーションに見つかりませんでした。この問題に関する情報をいただければ幸いです。
asp.net-mvc - セッション期限切れ後のビュー ページでのセッション変数の管理
コントローラーでセッションが期限切れになった後、ビューページでセッション変数を管理する必要があります
ビューで
セッションが期限切れになるまで問題なく動作します。ただし、セッションの有効期限が切れるとエラーが表示されます
タイプ 'System.NullReferenceException' の例外が Inex.dll で発生しましたが、ユーザー コードで処理されませんでした
追加情報: オブジェクト参照がオブジェクトのインスタンスに設定されていません。
セッションの有効期限が切れたときにユーザーをログアウトする方法。