![]() |
VOOZH | about |
dotnet add package Dosaic.Plugins.Authorization.Abstractions --version 1.2.35
NuGet\Install-Package Dosaic.Plugins.Authorization.Abstractions -Version 1.2.35
<PackageReference Include="Dosaic.Plugins.Authorization.Abstractions" Version="1.2.35" />
<PackageVersion Include="Dosaic.Plugins.Authorization.Abstractions" Version="1.2.35" />Directory.Packages.props
<PackageReference Include="Dosaic.Plugins.Authorization.Abstractions" />Project file
paket add Dosaic.Plugins.Authorization.Abstractions --version 1.2.35
#r "nuget: Dosaic.Plugins.Authorization.Abstractions, 1.2.35"
#:package Dosaic.Plugins.Authorization.Abstractions@1.2.35
#addin nuget:?package=Dosaic.Plugins.Authorization.Abstractions&version=1.2.35Install as a Cake Addin
#tool nuget:?package=Dosaic.Plugins.Authorization.Abstractions&version=1.2.35Install as a Cake Tool
Dosaic.Plugins.Authorization.Abstractions provides shared authorization primitives for the Dosaic plugin ecosystem. It defines a model for role-based authorization policies (AuthPolicy) and a set of extension helpers (PolicyExtensions) that make it straightforward to register pre-built or custom policies with ASP.NET Core's authorization middleware.
Concrete authentication plugins (e.g. Dosaic.Plugins.Authorization.Keycloak) depend on this package to declare and wire up their policies in a uniform way.
dotnet add package Dosaic.Plugins.Authorization.Abstractions
Or add as a package reference to your .csproj:
<PackageReference Include="Dosaic.Plugins.Authorization.Abstractions" Version="" />
AuthPolicyRepresents a named ASP.NET Core authorization policy that requires the authenticated user to hold one or more roles.
| Property | Type | Description |
|---|---|---|
Name |
string |
The policy name used when calling [Authorize(Policy = "...")]. |
Roles |
IList<string> |
The roles the user must possess for the policy to succeed. |
PolicyExtensionsA static helper class that exposes two pre-built policies and two extension methods for AuthorizationOptions.
| Field | Type | Description |
|---|---|---|
AuthenticatedPolicy |
AuthorizationPolicy |
Requires the user to be authenticated (RequireAuthenticatedUser()). |
AllowAllPolicy |
AuthorizationPolicy |
Allows every request regardless of authentication state (RequireAssertion(_ => true)). |
| Method | Description |
|---|---|
AddDefaultPolicy(AuthorizationOptions, AuthorizationPolicy) |
Sets the supplied policy as both the default policy and registers it under the name "DEFAULT". |
AddAuthPolicies(AuthorizationOptions, IEnumerable<AuthPolicy>) |
Iterates a collection of AuthPolicy objects and registers each one as a named role-based policy. |
using Dosaic.Plugins.Authorization.Abstractions;
using Microsoft.AspNetCore.Authorization;
using Microsoft.Extensions.DependencyInjection;
services.AddAuthorization(options =>
{
// Every endpoint that does not specify an explicit policy
// will require an authenticated user.
options.AddDefaultPolicy(PolicyExtensions.AuthenticatedPolicy);
});
services.AddAuthorization(options =>
{
options.AddDefaultPolicy(PolicyExtensions.AllowAllPolicy);
});
var policies = new List<AuthPolicy>
{
new AuthPolicy { Name = "AdminOnly", Roles = ["admin"] },
new AuthPolicy { Name = "ReadWrite", Roles = ["editor", "admin"] },
};
services.AddAuthorization(options =>
{
options.AddDefaultPolicy(PolicyExtensions.AuthenticatedPolicy);
options.AddAuthPolicies(policies);
});
Apply the named policy on a controller or endpoint:
[Authorize(Policy = "AdminOnly")]
[ApiController]
[Route("admin")]
public class AdminController : ControllerBase
{
// Only users with the "admin" role can reach these endpoints.
}
appsettingsWhen using the Keycloak plugin, AuthPolicy instances are typically loaded from configuration:
keycloak:
enabled: true
host: keycloak.example.com
clientId: my-service
policies:
- name: AdminOnly
roles:
- admin
- name: ReadWrite
roles:
- editor
- admin
The Keycloak plugin reads the policies list as IList<AuthPolicy> and passes it to options.AddAuthPolicies(...) during ConfigureServices.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
Showing the top 1 NuGet packages that depend on Dosaic.Plugins.Authorization.Abstractions:
| Package | Downloads |
|---|---|
|
Dosaic.Plugins.Authorization.Keycloak
A plugin-first dotnet framework for rapidly building anything hosted in the web. |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.2.35 | 0 | 6/19/2026 |
| 1.2.34 | 102 | 6/10/2026 |
| 1.2.33 | 113 | 6/2/2026 |
| 1.2.31 | 101 | 5/28/2026 |
| 1.2.30 | 110 | 5/7/2026 |
| 1.2.29 | 107 | 5/5/2026 |
| 1.2.28 | 114 | 4/30/2026 |
| 1.2.27 | 115 | 4/29/2026 |
| 1.2.26 | 107 | 4/29/2026 |
| 1.2.25 | 112 | 4/27/2026 |
| 1.2.24 | 106 | 4/21/2026 |
| 1.2.23 | 128 | 4/14/2026 |
| 1.2.22 | 115 | 4/10/2026 |
| 1.2.21 | 115 | 4/10/2026 |
| 1.2.20 | 118 | 4/10/2026 |
| 1.2.19 | 107 | 4/9/2026 |
| 1.2.18 | 121 | 4/2/2026 |
| 1.2.17 | 113 | 4/1/2026 |
| 1.2.16 | 110 | 4/1/2026 |
| 1.2.15 | 113 | 3/31/2026 |