Base solution for your next web application
Open Closed

Data Filter Suggestion #1077


User avatar
0
maharatha created

Hi Hilkan -

I am implementing some kind of access restriction into my application.

Let's say I have multiple entities Entity A, B,C which I want to provide restrictive access to certain users.

For that I am planning to use data filters, IMayHaveUserRestriction.

I created the interface as well , but I can't implement this in my Entity A else it would create a column UserId in Entity A ,B,C which I definitely don't want.

My restriction rules or data are placed in a another Entity called Entity R.

The whole idea is to create a data filter which I can use it in any entity and it would filter based on some rules.

Could you guide me how to do this using Abp ?

Thanks, Partha

Markdown is supported
Copy & paste or drag & drop images (max 30 MB per image)

3 Answer(s)
  • User Avatar
    0
    maharatha created

    When I say access to Entities that would mean certain rows in the Entities. The details of the entities and rows are being stored in Entity R

    Markdown is supported
    Copy & paste or drag & drop images (max 30 MB per image)
  • User Avatar
    0
    hikalkan created
    Support Team

    Hi,

    As you probably know, we are using EntityFramework.DynamicFilters (<a class="postlink" href="https://github.com/jcachat/EntityFramework.DynamicFilters">https://github.com/jcachat/EntityFramew ... micFilters</a>). EntityFramework has not such a built-in feature and EntityFramework.DynamicFilters fills the gap well. But it also has some possibilities. I suppose it does not support such a filter that requires join with another table. You can see it's own document to understand it better.

    Why don't you use organization units? See the sample code: <a class="postlink" href="http://www.aspnetboilerplate.com/Pages/Documents/Zero/Organization-Units#filter-entities-for-a-user">http://www.aspnetboilerplate.com/Pages/ ... for-a-user</a> I think it's similar to your needs.

    Markdown is supported
    Copy & paste or drag & drop images (max 30 MB per image)
  • User Avatar
    0
    maharatha created

    I am using Organization as My Company. Also I want to implement something like RLS (Row Level Security) for each entity. So using Organization is not an option. I am looking into EFF Dynamic Filter and Predicate builder to achieve this. Will update this ticket with my findings. In case you have some idea please let me know.

    Markdown is supported
    Copy & paste or drag & drop images (max 30 MB per image)