我有2周不同的網址登錄到應用程序如下與cookie的工作在MVC
對於學員: - http://localhost:56739/trainee/Login/myclientname
對於管理員: - http://localhost:56739/admin/Login/myclientname
我登錄到應用程序中使用低於默認登錄實施
var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure: true);
我觀察到的方法PasswordSignInAsync
正在創建cookie的登錄用戶。
但是,我的問題是,如果我使用trainee
url登錄並嘗試訪問admin
url,則用戶直接登錄到管理應用程序而不要求登錄,因爲該cookie。意味着學員和管理員之間訪問/共享Cookie。
我對admin/trainee
的看法不同,但它們與下面的文件夾結構在同一個項目中。 http://i.stack.imgur.com/HyOhW.png
學員和管理員之間切換時,在佈局頁,當我檢查下面的代碼行,這IsAuthenticated
雖然admin
仍未登錄到應用程序,反之亦然即將實現。
@if (User.Identity.IsAuthenticated)
我正在使用身份框架進行用戶身份驗證。
如何在admin/trainee
之間切換時保持單獨的cookie?
感謝您的幫助!
您應該爲用戶使用角色:Admin,培訓生。然後把'[Authenticate(Roles =「Admin」)]'給管理員區域控制器,''Authenticate(Roles =「Trainee」)]''學員控制器 – trailmax
@trailmax否則不是這種情況。我不同的UI爲管理員和學員..即使有佈局,viewstart是不同的 – Rohit
你仍然可以實現與角色 – trailmax