2011-05-16 13 views
1

私は何千ものドキュメントを読みましたが、何も私のためには機能しません。私が欲しいものサブドメイン上の共有セッション状態

1):私のサーバー側で私は、次の変数を使用:

(string)Session["myData"] 

2)私は

www.myDomain.com/myPage.aspx 
OR 
myDomain.com/myPage.aspx 
OR 
myUser.myDomain.com/myPage.aspx 
私の問題をサブドメインを変更する場合:私は失いますそれらのドメインの1つから別のドメインに移動したときのセッションデータ。

3)私はクッキーとインプロセスモードでセッション状態を維持したい:私はweb.configファイルに追加

<sessionState mode="InProc" cookieless="UseCookies" cookieName="myDomain.com" timeout="10000">  </sessionState> 
    <authentication mode="Windows"/> 

<httpCookies domain="myDomain.com" /> 

または

<httpCookies domain=".myDomain.com" /> 

または

<httpCookies domain=".myDomain.com" httpOnlyCookies="true" /> 

何も処理されませんでした。

アドバイスありがとうございます。

答えて

1

短い答えでは、すべての条件を満たすことはできません。

考えられる解決策:

  • 共通 "www.myDomain.com" に "xxx.myDomain.com" の入ってくるドメインを持つすべての要求をリダイレクトします。これには、「myUser.myDomain.com」を「www.myDomain.com/default.aspx?& user = myUser」に変更する必要があります。それはリダイレクトであるため、バーの変更によってアドレスが表示されるため、ウェブサイトの背後にあるソーセージの作成に関する知識(攻撃者にとって有益です)が得られます。
  • 自分のサイトから明示的にドメインを参照することは絶対に避けてください。すべてのURIは、Web構造のルートに関連している必要があります。これにより、ドメインの変更やセッション状態の損失を避けることができます。
  • SQLServerを使用してセッション状態を管理します。http://support.microsoft.com/kb/2527105これには、セッション処理をInProcからCookieでSQLServerに変更するほか、いくつかの設定変更が必要になります。
+0

お返事ありがとうございます...私が敬意を表していたものです。誰も厄介な解決策を持っていないなら、私は投票をします。 – Zitun

関連する問題