- Notifications
You must be signed in to change notification settings - Fork164
This library provides extra authorization and multi-tenant features to an ASP.NET Core application.
License
JonPSmith/AuthPermissions.AspNetCore
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
The AuthPermissions.AspNetCore library (shortened to AuthP) provides extra authorization features to a ASP.NET Core application. Here are AuthP's three main features:
- An improved Role authorization system where the features a Role can access can be changed by an admin user (i.e. no need to edit and redeploy your application when a Role changes).
- Provides features to create a multi-tenant database system, either using one-level tenant or multi-level tenant (hierarchical).
- Implements a JWT refresh token feature to improve the security of using JWT Token in your application.
The AuthP is an open-source library under the MIT licence (and remain as a open-source library for ever) and the NuGet package can befound here.The documentation can be found in theGitHub wiki and the AuthProadmap defines the different versions of this library.
- Version 10.?.? NET 10 only (simpler to update to next NET release)
- Version 9.?.? supports NET 9 only (simpler to update to next NET release)
- Version 8.?.? supports NET 8 only (simpler to update to next NET release)
If you have already built your application using an older version, then you need to look at the following "how up update" documents
- For AuthPermissions.AspNetCore versions below 9 seeUpdateToVersion9.md
The AuthP library also:
- Works with any ASP.NET Core authentication provider. Currently has built-in individual accounts and Azure Active Directory versions, but you can create your own.
- Works with either Cookie authentication or JWT Token authentication.
- Contains an admin services to sync the authentication provider users with AuthP's users.
- Has a comprehensive set of admin services to manage AuthP's Roles, Tenants and Users.
The AuthPermissions.AspNetCore library contains more than one project. For this reason you can't (currently) create a NuGet package using NuGet values in a .csproj file. For this reason I created aJonPSmith.MultiProjPack dotnet tool to create the NuGet package using the following command in a command line on the AuthPermissions.AspNetCore directory.
SeeJonPSmith.MultiProjPack GitHub for why I created theJonPSmith.MultiProjPack and more about its features.
On your computer you need to install the global tool using the command below (seethis documentation to learn about global tools).
dotnet tool install JonPSmith.MultiProjPack --global
NOTE: To update the MultiProjPack .NET tool you need to go toUpdating the MultiProjPack dotnet tool for all the information.
You must select "Release" compile mode and then use the "Build > Rebuild Solution" to ensure a new release version of the AuthPermissions.AspNetCore is available.
You run theMultiProjPack tool from a command line in theAuthPermissions.AspNetCore directory. I use Visual Studio's "Open in Terminal" using the command below ("R" is short for "Release")
MultiProjPack RNOTE: If you want to create a new version of the NuGet package you must update the NuGetversion and most likely thereleaseNotes in theMultiProjPack.xml before you call theMultiProjPack tool.
The created .nupkg file will be found in theAuthPermissions.AspNetCore.nupkg directory AND in the user's{USERPROFILE}\LocalNuGet directory.
About
This library provides extra authorization and multi-tenant features to an ASP.NET Core application.
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Uh oh!
There was an error while loading.Please reload this page.
Contributors5
Uh oh!
There was an error while loading.Please reload this page.