VOOZH about

URL: https://www.nuget.org/packages/Keycloak.AuthServices.Authorization/

⇱ NuGet Gallery | Keycloak.AuthServices.Authorization 3.0.0




👁 Image
Keycloak.AuthServices.Authorization 3.0.0

Prefix Reserved
dotnet add package Keycloak.AuthServices.Authorization --version 3.0.0
 
 
NuGet\Install-Package Keycloak.AuthServices.Authorization -Version 3.0.0
 
 
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Keycloak.AuthServices.Authorization" Version="3.0.0" />
 
 
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Keycloak.AuthServices.Authorization" Version="3.0.0" />
 
Directory.Packages.props
<PackageReference Include="Keycloak.AuthServices.Authorization" />
 
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Keycloak.AuthServices.Authorization --version 3.0.0
 
 
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Keycloak.AuthServices.Authorization, 3.0.0"
 
 
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Keycloak.AuthServices.Authorization@3.0.0
 
 
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Keycloak.AuthServices.Authorization&version=3.0.0
 
Install as a Cake Addin
#tool nuget:?package=Keycloak.AuthServices.Authorization&version=3.0.0
 
Install as a Cake Tool
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Keycloak.AuthServices

👁 Discord
👁 Build
👁 NuGet
👁 contributionswelcome
👁 Conventional Commits
👁 License

🔐 Easy Authentication and Authorization with Keycloak in .NET.

Package Version Description
Keycloak.AuthServices.Authentication 👁 Nuget
Keycloak Authentication JWT + OIDC
Keycloak.AuthServices.Authorization 👁 Nuget
Authorization Services. Use Keycloak as authorization server
Keycloak.AuthServices.Authorization.TokenIntrospection 👁 Nuget
Token introspection for lightweight access tokens (KC 24+)
Keycloak.AuthServices.Authorization.Uma 👁 Nuget
UMA 2.0 support — permission ticket challenges, RPT exchange
Keycloak.AuthServices.Sdk 👁 Nuget
HTTP API integration with Keycloak
Keycloak.AuthServices.Sdk.Kiota 👁 Nuget
HTTP API integration with Keycloak based on OpenAPI
Keycloak.AuthServices.OpenTelemetry 👁 Nuget
OpenTelemetry support
Keycloak.AuthServices.Templates 👁 Nuget
dotnet new templates

Documentation

For Developer Documentation see: https://nikiforovall.github.io/keycloak-authorization-services-dotnet

API Reference

See: https://nikiforovall.github.io/keycloak-authorization-services-dotnet-docs

Getting Started

Install packages:

dotnet add package Keycloak.AuthServices.Authentication
// Program.cs
using Keycloak.AuthServices.Authentication;

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddKeycloakWebApiAuthentication(builder.Configuration);
builder.Services.AddAuthorization();

var app = builder.Build();

app.UseAuthentication();
app.UseAuthorization();

app.MapGet("/", () => "Hello World!").RequireAuthorization();

app.Run();

In this example, configuration is based on appsettings.json.

//appsettings.json
{
 "Keycloak": {
 "realm": "Test",
 "auth-server-url": "http://localhost:8080/",
 "ssl-required": "none",
 "resource": "test-client",
 "verify-token-audience": false,
 "credentials": {
 "secret": ""
 },
 "confidential-port": 0
 }
}

Example - Add Authorization

With Keycloak.AuthServices.Authorization, you can implement role-based authorization in your application. This package allows you to define policies based on roles. Also, you can use Keycloak as Authorization Server. It is a powerful way to organize and apply authorization polices centrally.

var builder = WebApplication.CreateBuilder(args);

var host = builder.Host;
var configuration = builder.Configuration;
var services = builder.Services;

services.AddKeycloakWebApiAuthentication(configuration);

services.AddAuthorization(options =>
 {
 options.AddPolicy("AdminAndUser", builder =>
 {
 builder
 .RequireRealmRoles("User") // Realm role is fetched from token
 .RequireResourceRoles("Admin"); // Resource/Client role is fetched from token
 });
 })
 .AddKeycloakAuthorization(configuration);

var app = builder.Build();

app.UseAuthentication();
app.UseAuthorization();

app.MapGet("/hello", () => "[]")
 .RequireAuthorization("AdminAndUser");

app.Run();

Example - Invoke Admin API

var services = new ServiceCollection();
services.AddKeycloakAdminHttpClient(new KeycloakAdminClientOptions
{
 AuthServerUrl = "http://localhost:8080/",
 Realm = "master",
 Resource = "admin-api",
});

var sp = services.BuildServiceProvider();
var client = sp.GetRequiredService<IKeycloakRealmClient>();

var realm = await client.GetRealmAsync("Test");

Build and Development

dotnet cake --target build

dotnet cake --target test

dotnet pack -o ./Artefacts

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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages (19)

Showing the top 5 NuGet packages that depend on Keycloak.AuthServices.Authorization:

Package Downloads
Gathrr.Framework.Infrastructure

Package Description

Feijuca.Auth

Feijuca.Auth simplifies Keycloak integration for user management and multi-tenancy. It features TokenManager for centralized API calls to manage users and auth services for handling multiple tenants using Keycloak realms. Check the documentation for more details!

Iskra.Core.Auth

Настройка авторизации в Keycloak.

Iskra.Core.ApiDocumentation

Формирование Swagger документации с настройкой авторизации.

Inspire.Framework.Infrastructure

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.0.0 23,299 5/2/2026
3.0.0-rc.1 501 4/14/2026
2.10.0-rc.1 109 4/13/2026
2.9.0 33,213 3/27/2026
2.8.1 9,158 3/22/2026
2.8.0 81,701 12/25/2025
2.7.0 189,326 9/4/2025
2.6.1 243,111 3/13/2025
2.6.0 222,403 11/30/2024
2.5.5 24,680 11/27/2024
2.5.3 337,550 8/19/2024
2.5.2 151,401 6/15/2024
2.5.1 7,594 6/11/2024
2.5.0 15,864 6/2/2024
2.4.1 24,428 5/16/2024
2.4.0 1,820 5/12/2024
2.3.0 1,557 5/10/2024
2.3.0-pre-1 183 5/9/2024
2.2.1 1,480 5/9/2024
2.2.0 483 5/8/2024
Loading failed