Class BowireTenancyOptions

Namespace
Kuestenlogik.Bowire.Auth
Assembly
Kuestenlogik.Bowire.dll

What an install has said about serving several identities from one Bowire (#97). Bound from Bowire:MultiTenant.

public sealed class BowireTenancyOptions
Inheritance
BowireTenancyOptions
Inherited Members

Remarks

Off unless the operator turns it on. Turning it on moves where every store reads and writes, so it is not something to infer from an auth provider being present: plenty of single-user installs put a login in front of a workbench that still has exactly one person behind it, and quietly moving their data because they added OIDC would be the opposite of a migration path.

Constructors

BowireTenancyOptions()

public BowireTenancyOptions()

Properties

Enabled

Whether each authenticated identity gets its own slot. Default false — the flat single-user layout.

public bool Enabled { get; set; }

Property Value

bool

Migration

What to do about the state a single-user install left behind.

public BowireUserMigrationMode Migration { get; set; }

Property Value

BowireUserMigrationMode

SubjectClaim

The claim that identifies a person, when the default order does not suit the provider.

public string? SubjectClaim { get; set; }

Property Value

string

Remarks

Left unset, SubjectOf(ClaimsPrincipal?) tries sub, then NameIdentifier — ASP.NET's JWT handler maps the first onto the second unless the host disabled inbound claim mapping, so both have to be tried — then oid for Entra ID, which is the only one of the three that is stable when someone's e-mail address changes.

Methods

SubjectOf(ClaimsPrincipal?)

The subject of user, or null when there is no authenticated identity to serve.

public string? SubjectOf(ClaimsPrincipal? user)

Parameters

user ClaimsPrincipal

Returns

string