컨텍스트를 기반으로 쿼리를 수정하기 위해 IDbCommandTreeInterceptor
의 구현을 작성했습니다.컨텍스트에 액세스하는 EF DB 인터셉터 (현재 사용자 등)
내 특정 상황에서 사용자가 쿼리 한 테이블로 수행 할 수있는 작업을 결정하기 위해 인터셉터에서 사용자 개체에 액세스해야합니다.
행 수준의 보안을 구현하는 비전입니다. 내 DbInterceptor에서 사용자 개체를 가져 와서 역할을 확인하고 사용자가 액세스 할 수없는 행을 필터링합니다.
내 질문이 있습니다.
일부 기사를 읽었으며 DbInterceptors
이 다른 스레드에서 실행될 수 있음을 알고 있습니다 (동일하지 않은 경우 HttpContext.Current
이 있음).
이런 종류의 것을 구현하거나 구성하는 방법은 무엇입니까? 컨텍스트 (사용자가 요청하는 항목 등)에 대한 액세스 권한을 갖고 싶습니다.
나는 OData WebAPI
을 사용하고 있습니다.
데이터 액세스 코드에서 HttpContext.Current에 액세스하는 것은 좋지 않습니다. 아마도이 정보를 주입 할 수 있습니다. –