JonPSmith / AuthPermissions.AspNetCore

This library provides extra authorization and multi-tenant features to an ASP.NET Core application.
https://www.thereformedprogrammer.net/finally-a-library-that-improves-role-authorization-in-asp-net-core/
MIT License
764 stars 155 forks source link

Could the common code in AuthPermissions.BaseCode.CommonCode be moved to its own nuget? #42

Closed emorell96 closed 2 years ago

emorell96 commented 2 years ago

Hi,

I am starting to design my own SaaS application using your library and I was wondering if it's possible to publish the common code like the interfaces or POCOs as its own nuget. This would get rid of dependencies when you just need the interfaces.

Thanks, really liking the library otherwise, great job on it :)

JonPSmith commented 2 years ago

Hi @emorell96,

I'm really not keen on another NuGet linked to the AuthP NuGet - I have done that in an library and its a pain to work with and update. Also, there are only two the DataKey interfaces which are used a lot and they don't have any dependencies.

JonPSmith commented 2 years ago

Hi @emorell96,

I just had a question on using clean code architecture and wondered if that your question was because of clean code. I don't know if you are using clean code but here is an answer if that is your issue.

You don't have to use the IDataKeyFilterReadWrite etc. but you can define your own interface, which means you don't need to have the AuthP NuGet in your Domain project. The down side is you couldn't use the build-in query filter methods, but you could simply cut/paste that code and replace the references to the interface to your interface.

emorell96 commented 2 years ago

Hi Jon, yes exactly that's why I asked this. That would make it so much easier to use when using clean architecture and keeping the domain class library as lean as possible on dependencies. I'll take a look.

I might as well just create my own core nuget from my own fork.

Btw, I am adding CancellationToken support to the library, I'll open a pr soon.

JonPSmith commented 2 years ago

Great, glad that helps.

On the CancellationToken support can you create an issue to describe what you want to do. I'm currently working on a new version which has a lots of changes so its important what you want to do don't cause with the upcoming version which is in the dev branch at the moment.

emorell96 commented 2 years ago

Done. #44 thanks! Let me know if I can contribute in any way. I'd be happy to help. This library is very useful rn on my new project :)