Sylin.Koan.Tenancy.Web 1.0.86

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

Sylin.Koan.Tenancy.Web

A reference-mounted operator UI and API for the supported Tenancy control plane: tenant registry, membership seats, and administration audit.

Install

dotnet add package Sylin.Koan.Tenancy.Web

Keep the existing bootstrap:

builder.Services.AddKoan();

The reference adds controllers and the embedded UI automatically. Start the application and open /tenancy; the operator API is mounted at /api/tenancy/admin.

Meaningful use

An admitted operator can:

  • list, inspect, create, and rename tenant registry rows;
  • grant or replace a known subject's tenant roles through one deterministic membership seat;
  • revoke a membership; and
  • inspect the newest administration audit entries.

Equivalent grants converge to Membership.KeyFor(tenantId, identityId). Reserved host operator roles are rejected before the seat is saved. The administration service records every completed supported mutation.

Exposure and authority

Exposure answers where the surface exists; authority answers who can operate it. They are deliberately separate:

{
  "Koan": {
    "Tenancy": {
      "Console": {
        "Exposure": {
          "Hosts": [ "ops.example.com" ],
          "RequireHeader": "X-Koan-Console"
        },
        "Grant": {
          "Operators": [ "operator-subject-id" ],
          "Role": "koan:tenancy-operator"
        }
      }
    }
  }
}

A failed exposure condition returns 404 before routing. It is never authority. Closed posture requires the configured operator identity or host role and returns 403 otherwise. Development is open by default; set RequireLoopbackForOpenPosture when a development host can receive remote traffic.

Startup reporting shows the routes, resolved posture, exposure conditions, configured operator count, and audit page size. AuditPageSize defaults to 100 and MaxAuditPageSize to 500.

Boundaries

  • IdentityId is a subject key. This package does not reference or validate an Identity provider; the optional Identity Tenancy bridge enforces active durable Identity when a membership is used for request scope.
  • Invitation/delivery/acceptance, tenant suspension, product-data erase, operations jobs, and server-side act-as are intentionally absent until they can provide complete guarantees.
  • Registry and audit writes are ordered Entity operations, not a cross-provider transaction or immutable ledger.
  • Direct writes to the underlying control-plane Entities bypass the administration service's validation and audit.

See TECHNICAL.md and the public tenancy guide.

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
1.0.86 90 9/13/2026
1.0.81 89 9/13/2026
1.0.78 84 9/13/2026
1.0.75 83 9/12/2026
1.0.70 85 9/12/2026
1.0.66 108 9/10/2026
1.0.60 93 9/10/2026
1.0.54 97 9/9/2026
1.0.48 95 9/9/2026
1.0.43 87 9/9/2026
1.0.40 84 9/9/2026
1.0.33 96 9/9/2026
1.0.29 106 9/9/2026
1.0.22 103 9/5/2026
1.0.21 110 8/30/2026
1.0.20 101 8/30/2026
1.0.19 101 8/28/2026
1.0.18 94 8/28/2026
1.0.17 93 8/28/2026
1.0.16 93 8/28/2026
Loading failed