2014-04-23 2 views
0

MVC에서 개체 수준 사용 권한을 얻으려고합니다. 나는이 모든 것을 살펴 보았지만 3 세 이상인 예를 찾을 수는 있습니다. 작동하지 않는 것 같습니다.MVC에서 개체 수준 사용 권한 만들기

public class Supplier 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 
    public virtual ICollection<ApplicationUser> LinkedUsers { get; set; } 
} 

public class ApplicationUser : IdentityUser 
{ 
    public string Id { get; set; } 
    public virtual ICollection<Supplier> LinkedSuppliers { get; set; } 
} 

나는 또한 내 권한이 있습니다

내가 2 개 모델을 말한다.
public enum SupplierUserPermissions 
{ 
    Edit = 1, 
    View = 2, 
} 

ApplicationUser

많은 Suppliers에 링크 될 수 있으며, 각 Supplier은 FK의 사용자 ID에와 공급자 ID와 테이블을 만들었습니다 많은 ApplicationUsers

엔티티 프레임 워크에 연결할 수 있습니다.

각 사용자에 대해 개체 수준 사용 권한을 만들려면 어떻게해야합니까? 예를 들어, 사용자는 특정 공급자를 볼 수 있어야하지만, 아마도 그들은 다른 사람을 편집 할 수 있습니다.

내 모델을 어떻게 작성해야합니까? 아니면이 모델을 구현하는 가장 좋은 방법은 무엇입니까? 나는 표준적인 역할 기반의 보안이 적어도 이것을 깔끔하게 정리하지 않을 것이라고 확신한다.

편집 : 인증을 위해 ASP ID 2를 사용하고 있습니다.

+0

엔티티 프레임 워크에 대한 글로벌 필터링을 구현하는 방법에 대한 좋은 출발점을 제공해야합니까? 양식, Windows? 사용자 개체가 해당 시스템과 연결되어 있습니까 (예 : 귀하의 userId가 인증 쿠키에 포함되어 있습니까? –

+0

@PaulTaylor ASP Identity 2를 사용하고 있습니다. 예, 내 사용자 개체가 링크되어 있지만 필요에 따라 확장 할 수 있습니다. 지금 질문에 추가했습니다. – Alex

답변