很多文章在網上的訪問講asp.net MVC基於角色的訪問控制來
[Authorize(Roles = "Admin, Manager")]
public class SomeController : Controller
{
}
這一切是好的,但現在如果我需要實現我自己的基於角色的自定義訪問,其中我在[RoleMaster]表中具有角色,並且在另一個名爲[UserRoles]的表中的[User]表中分配給用戶的角色。在我的代碼將在會話中的用戶對象現在將在它
public class RegisteredUsers
{
//... other user properties
public List<UserRole> Roles { get; set; }
}
public class UserRole
{
public string RoleID { get; set; }
public string RoleName { get; set; }
//... other properties
}
現在我該如何檢查在RegisteredUsers角色列表中UserRole.RoleName屬性角色列表對象作爲反對任何匹配我已使用以下屬性分配給Authorize屬性的值:[Authorize(Roles =「Admin,Manager」)]]。在某些情況下,如果角色具有管理員或管理員,他們應該可以訪問。在某些情況下,我希望他們既具有管理員角色也具有管理角色以獲得訪問權限。
而且,在未來如果有新的角色會添加到系統中,我將需要重建,並與所有授權屬性重做重新部署應用程序?
我一直沒能找到任何明顯的例子,實現相同的,或者是我不正常搜索。請儘可能以任何方式幫助我。感謝您的時間...