Fudie.Security.Http
1.0.12
dotnet add package Fudie.Security.Http --version 1.0.12
NuGet\Install-Package Fudie.Security.Http -Version 1.0.12
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="Fudie.Security.Http" Version="1.0.12" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Fudie.Security.Http" Version="1.0.12" />
<PackageReference Include="Fudie.Security.Http" />
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 Fudie.Security.Http --version 1.0.12
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Fudie.Security.Http, 1.0.12"
#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 Fudie.Security.Http@1.0.12
#: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=Fudie.Security.Http&version=1.0.12
#tool nuget:?package=Fudie.Security.Http&version=1.0.12
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Fudie.Security.Http
Authorization middleware, endpoint catalog, and security requirements for HTTP APIs.
Usage
app.MapFudieFeatures(builder =>
{
builder.UseFudieAuthorization();
});
UseFudieAuthorization() performs:
- Discovers
IAggregateDescriptionimplementations across loaded assemblies - Registers all feature endpoints in the
ICatalogRegistry - Adds
FudieAuthorizationMiddlewareto the pipeline - Maps the
GET /catalogdiscovery endpoint
Endpoint Security
app.MapGet("/orders", GetOrders)
.RequireAuthenticated()
.RequireGroup("admin")
.WithDescriptionCatalog("List all orders");
app.MapPost("/internal/sync", SyncData)
.RequireInternal();
app.MapGet("/health", HealthCheck)
.RequirePlatform();
Authorization Requirements
| Requirement | Description |
|---|---|
RequireAuthenticated() |
Valid JWT token required |
RequirePlatform() |
Platform-level access only |
RequireInternal() |
Internal service-to-service calls only |
RequireGroup(name) |
User must belong to the specified group |
WithDescriptionCatalog(desc) |
Adds endpoint description to the catalog |
Catalog Discovery
GET /catalog returns all registered endpoints with their metadata:
{
"service": "orders-api",
"endpoints": [
{
"verb": "GET",
"route": "/orders",
"description": "List all orders",
"aggregate": "orders",
"scope": "orders:read"
}
]
}
Public Types
| Type | Description |
|---|---|
FudieContext |
Scoped service extracting user info from HTTP context claims |
FudieAuthorizationMiddleware |
Middleware enforcing authorization rules |
FudieAuthorizationExtensions |
UseFudieAuthorization() extension method |
CatalogRegistry |
Singleton storing registered endpoint entries |
CatalogEndpointExtensions |
Maps the GET /catalog endpoint |
EndpointAuthExtensions |
RequireAuthenticated(), RequireGroup(), etc. |
AuthenticatedRequirement |
Metadata marker for authentication |
PlatformRequirement |
Metadata marker for platform access |
InternalRequirement |
Metadata marker for internal access |
GroupRequirement |
Metadata marker for group-based access |
Dependencies
Microsoft.AspNetCore.App(framework reference)Fudie.HttpFudie.SecurityFudie.DependencyInjection
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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.
-
net8.0
- Fudie.DependencyInjection (>= 1.0.12)
- Fudie.Http (>= 1.0.12)
- Fudie.Security (>= 1.0.12)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Fudie.Security.Http:
| Package | Downloads |
|---|---|
|
Fudie
Fudie framework — all packages in one reference. Install this to get the full framework. |
GitHub repositories
This package is not used by any popular GitHub repositories.