2017-08-18 6 views
0

ユーザーが複数のタブを使用し、各タブがその特定のユーザーに対して1つのセッションを共有するため、各タブに一意のセッションを持たせたい場合、「InProc "cookieless =" UseUri "、つまりsessionState mode =" InProc "cookieless =" UseUri "を追加しました。 これを追加すると、ユニークなセッションを持つ各タブに役立ちましたが、IEプライベートモードでのみ動作しましたが、IEノーマルモードでは動作しませんでした。クロム& firefox、ログインページに固執します、ログインメソッドはAzure Active Directory ieページが読み込み中で、アプリケーションのホームページに移動していない場合、何が起こっているのかわからないので、助けてください。C#MVCマルチレットタブセッションの問題

FYI、セッションでクラスプロパティを保存していますので、sessionState mode = "InProc" cookieless = "UseUri"は良いか悪いですか?ここで

我々はこれが不可能であるAAD認証用

public void ConfigureAuth(IAppBuilder app) 
{ 
    app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType); // Authentication type is cookies 

    app.UseCookieAuthentication(new CookieAuthenticationOptions()); 

    app.UseOpenIdConnectAuthentication(
     new OpenIdConnectAuthenticationOptions 
     { 
      ClientId = clientId, 
      Authority = authority, 
      PostLogoutRedirectUri = postLogoutRedirectUri, 
      Notifications = new OpenIdConnectAuthenticationNotifications 
       { 
        AuthorizationCodeReceived = (context) => 
        { 
         X509Certificate2 cert = null; 
          X509Store store = new X509Store(StoreLocation.CurrentUser); 

         // Here the code all about certification & access token 

         return Task.FromResult(0); 
        } 
       } 
     }); 
} 

答えて

0

を使用しているコードです。セッションが作成されると、セッションIDを使用してクッキーがクライアントに送信され、Webブラウザーのようなものは、1つのタブまたは100にあるかどうかに関わらず、盲目的にこの要求を同じドメインに戻します。セッションCookieがサーバーによって受信されると、そのセッションが復元されます。

「プライベート」モードで動作しますが、プライベートモードでは各タブがCookieを含む完全に一意のコンテキストを取得するため、変更が加えられたわけではありません。ただし、通常のブラウジングモードでは、すべてのタブにCookieへのアクセス権があり、そのことについて何もできません。

+0

これは、sessionState mode = "InProc" cookieless = "UseUri"とはどういう意味ですか? MVCの2番目のタブを開いたときにユーザーを制限する手助けをしてもらえますか? – PaTHP

+0

ヘルプを延長できる人は誰ですか? – PaTHP

+0

持っている助けはありません。あなたがしたいことはできません。期間。 InProcは、セッションストレージが実行中のプロセス(AppPool)に関連付けられてメモリに格納されることを意味します。これは実際には開発においてのみ有用であり、より安定した信頼性の高いセッションストレージに変更する必要があります。 Cookielessは、セッションIDがCookieとして設定されるのではなく、URLに追加されることを意味します。あなたがセッションを漏らしているので、それは非常に悪い考えです。また、廃止予定です。あなたが達成しようとしていること、またはその点で助けていることとは何の関係もありません。 –