Ledon.Security.Authorization 0.0.1

dotnet add package Ledon.Security.Authorization --version 0.0.1
                    
NuGet\Install-Package Ledon.Security.Authorization -Version 0.0.1
                    
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="Ledon.Security.Authorization" Version="0.0.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Ledon.Security.Authorization" Version="0.0.1" />
                    
Directory.Packages.props
<PackageReference Include="Ledon.Security.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 Ledon.Security.Authorization --version 0.0.1
                    
#r "nuget: Ledon.Security.Authorization, 0.0.1"
                    
#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 Ledon.Security.Authorization@0.0.1
                    
#: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=Ledon.Security.Authorization&version=0.0.1
                    
Install as a Cake Addin
#tool nuget:?package=Ledon.Security.Authorization&version=0.0.1
                    
Install as a Cake Tool

Ledon.Security.Authorization

RBAC 授权:角色、权限授予、用户角色分配、通配符权限与带缓存的权限求值;接入现有 PermissionRequirement 策略。

builder.Services.AddLedonSecurity(...);
builder.Services.AddLedonAuthorization(o =>
{
    o.BootstrapAdminUserIds.Add("admin");   // 首个管理员用户 ID
    o.MapEndpoints = true;                  // 默认开启
    o.ManagementPolicy = "authorization.manage";
});

控制器/端点直接使用权限名:

[Authorize(Policy = "orders.read")]
[HttpGet("orders")]
public IActionResult Get() => Ok();

内置行为:

  • 启动时创建 admin 角色(权限 *);
  • BootstrapAdminUserIds 中的用户自动分配到 admin;
  • /auth/authorization/* 管理端点默认映射,并要求 authorization.manage;
  • GET /auth/authorization/me 返回当前用户角色、权限与是否管理员;
  • 角色权限支持通配符,角色分配可按租户隔离;
  • 角色/分配变更自动清空权限缓存。

管理:

var roles = scope.ServiceProvider.GetRequiredService<RoleAuthorizationService>();
await roles.CreateRoleAsync("support", ["orders.*", "users.read"]);
await roles.AssignRoleAsync(userId, "support");

直接可用仍需配置认证(AddLedonSecurity)并设置管理员引导用户;默认内存 IRoleStore 适合开发/单实例,生产请替换为数据库实现。

完整文档:https://github.com/wosledon/ledon-framework

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.0.1 48 10/28/2026