更新:嘗試與角色,同樣的問題。我在Manage/Index /打印我的角色:它顯示我是超級用戶和授權用戶,但我看不到隱藏在@if (User.IsInRole("SuperUser")){ <html> }
中的剃刀頁的部分,也不能訪問受保護的控制器操作與[Authorize(Roles = "AuthorizedUser")]
Asp.Net MVC - 授權不會接受我的用戶
試圖保護使用內置的框架我Asp.Net MVC的部分。我現在正在使用標準.NET Framework多用戶身份驗證模板。
我希望用戶能夠運行SettingsController中除管理員以外的大部分內容。
[Authorize(Users = @"[email protected]")]
註冊了一個賬號與電子郵件,複製什麼@ User.Identity.Name在導航欄返回並粘貼入授權屬性,如上圖所示。
但是,當我登錄並嘗試訪問控制器時,我被重定向到登錄字段,就像我根本沒有登錄過一樣。我在字符串前面使用和不使用@來嘗試它,我只用電子郵件的「管理員」部分來嘗試它...我需要將它放入該字符串中才能使用它。在線示例通常只包含如下簡單名稱:
[Authorize(Users="Alice,Bob")]
public class RestrictedContentController : Controller
{
. . .
}
但標準模板沒有用戶名。 User.Identity.Name返回電子郵件地址...我該怎麼辦?
這一個可能對你有用[授權](https://stackoverflow.com/questions/25548545/custom-user-authorization-based-with-roles-in-asp-net-mvc) –
對我而言似乎你確實沒有登錄。我確定問題不在於[Authorize]屬性。你能顯示你用來登錄用戶的代碼嗎?還有你如何配置身份驗證(cookie)。 –