TrustIdentity.Admin
1.0.2
dotnet add package TrustIdentity.Admin --version 1.0.2
NuGet\Install-Package TrustIdentity.Admin -Version 1.0.2
<PackageReference Include="TrustIdentity.Admin" Version="1.0.2" />
<PackageVersion Include="TrustIdentity.Admin" Version="1.0.2" />
<PackageReference Include="TrustIdentity.Admin" />
paket add TrustIdentity.Admin --version 1.0.2
#r "nuget: TrustIdentity.Admin, 1.0.2"
#:package TrustIdentity.Admin@1.0.2
#addin nuget:?package=TrustIdentity.Admin&version=1.0.2
#tool nuget:?package=TrustIdentity.Admin&version=1.0.2
TrustIdentity.Admin
Administration UI for TrustIdentity
📦 Overview
TrustIdentity.Admin provides a comprehensive web-based administration interface for managing TrustIdentity servers.
✨ Features
- ✅ Client Management - Create, edit, delete OAuth/OIDC clients
- ✅ User Management - Manage users and their claims
- ✅ Resource Management - Configure identity resources and API scopes
- ✅ Tenant Management - Multi-tenant administration
- ✅ Session Monitoring - View active sessions
- ✅ Audit Logs - Security and access logs
- ✅ Dashboard - Overview and statistics
🚀 Installation
dotnet add package TrustIdentity.Admin
dotnet add package TrustIdentity.AdminApi # REST API backend
🔧 Usage
Basic Setup
using TrustIdentity.Admin.Extensions;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddTrustIdentity(options => { ... });
builder.Services.AddTrustIdentityAdmin(); // Add Admin UI
builder.Services.AddRazorPages();
var app = builder.Build();
app.UseStaticFiles();
app.UseRouting();
app.UseTrustIdentity();
app.MapRazorPages();
app.Run();
With Admin API
builder.Services.AddTrustIdentity(options => { ... });
builder.Services.AddTrustIdentityAdmin();
builder.Services.AddTrustIdentityAdminApi(); // Add REST API
builder.Services.AddControllers();
var app = builder.Build();
app.UseStaticFiles();
app.UseRouting();
app.UseTrustIdentity();
app.MapControllers();
app.MapRazorPages();
app.Run();
🎨 Admin UI Pages
Dashboard
- Overview statistics
- Recent activity
- System health
Clients
- List all clients
- Create new client
- Edit client configuration
- Delete client
- View client secrets
Users
- List all users
- Create new user
- Edit user details
- Manage user claims
- Reset password
Resources
- Identity resources (openid, profile, email)
- API scopes
- API resources
Tenants (Multi-Tenancy)
- List all tenants
- Create new tenant
- Edit tenant configuration
- Manage tenant subscriptions
Sessions
- Active sessions
- Session details
- Revoke sessions
Audit Logs
- Security events
- Access logs
- Filter and search
🔒 Security
Securing Admin UI
builder.Services.AddTrustIdentityAdmin(options =>
{
options.RequireAuthentication = true;
options.RequireRole = "Administrator";
options.AllowedUsers = new[] { "admin@example.com" };
});
With OAuth/OIDC Protection
builder.Services.AddAuthentication(options =>
{
options.DefaultScheme = "Cookies";
options.DefaultChallengeScheme = "oidc";
})
.AddCookie("Cookies")
.AddOpenIdConnect("oidc", options =>
{
options.Authority = "https://identity.example.com";
options.ClientId = "admin-ui";
options.ClientSecret = "secret";
options.ResponseType = "code";
options.SaveTokens = true;
options.Scope.Add("admin");
});
builder.Services.AddAuthorization(options =>
{
options.AddPolicy("AdminOnly", policy =>
policy.RequireRole("Administrator"));
});
🌐 Admin API Endpoints
Clients
GET /api/clients # List all clients
GET /api/clients/{id} # Get client by ID
POST /api/clients # Create new client
PUT /api/clients/{id} # Update client
DELETE /api/clients/{id} # Delete client
Users
GET /api/users # List all users
GET /api/users/{id} # Get user by ID
POST /api/users # Create new user
PUT /api/users/{id} # Update user
DELETE /api/users/{id} # Delete user
Resources
GET /api/identity-resources # List identity resources
GET /api/api-scopes # List API scopes
GET /api/api-resources # List API resources
POST /api/identity-resources # Create identity resource
POST /api/api-scopes # Create API scope
POST /api/api-resources # Create API resource
Tenants
GET /api/tenants # List all tenants
GET /api/tenants/{id} # Get tenant by ID
POST /api/tenants # Create new tenant
PUT /api/tenants/{id} # Update tenant
DELETE /api/tenants/{id} # Delete tenant
🎨 Customization
Custom Branding
builder.Services.AddTrustIdentityAdmin(options =>
{
options.ApplicationName = "My Identity Server";
options.LogoUrl = "/images/logo.png";
options.Theme = "dark";
});
Custom Pages
Override default Razor Pages by creating pages in your project:
Pages/
├── Admin/
│ ├── Clients/
│ │ ├── Index.cshtml
│ │ ├── Create.cshtml
│ │ └── Edit.cshtml
│ └── Users/
│ ├── Index.cshtml
│ └── Create.cshtml
🏗️ Architecture
TrustIdentity.Admin/
├── Pages/ # Razor Pages
│ ├── Clients/
│ ├── Users/
│ ├── Resources/
│ ├── Tenants/
│ ├── Sessions/
│ └── Audit/
├── wwwroot/ # Static files (CSS, JS)
└── Extensions/ # Configuration extensions
📚 Documentation
- Setup Guide - General setup
- Main Documentation - Overview
📄 License
Apache 2.0 - See LICENSE
| Product | Versions 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. |
-
net10.0
- Microsoft.EntityFrameworkCore.Sqlite (>= 10.0.2)
- TrustIdentity.Abstractions (>= 1.0.2)
- TrustIdentity.Core (>= 1.0.2)
- TrustIdentity.Storage (>= 1.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
- Full implementation of OAuth 2.0 and OpenID Connect 1.0.
- Integrated SAML 2.0 and WS-Federation support.
- Advanced AI/ML-driven fraud detection and behavioral analysis.
- FAPI 1.0 & 2.0 (Security Profile) compliance.
- Support for PKCE, DPoP, Mutual TLS, PAR, and JAR.
- Entity Framework Core support for SQL Server, PostgreSQL, MySQL, and SQLite.
- Multi-tenant isolation and Backend-for-Frontend (BFF) patterns.
- Complete Admin UI and REST API for identity management.