Protected ReadonlydbProtected ReadonlyownerLower-cased bootstrap allowlist — emails granted the owner role on
first sight. Pulumi-managed via ADMIN_DASHBOARD_OWNER_EMAILS. Empty
by default; check happens on INSERT only — existing users are never
re-granted via this mechanism.
OptionalcfAccessSubs?: string[]Cloudflare Access JWT sub claim values; the identity key for the user row.
Optionalids?: string[]External ids (adusr_…) of users to filter by.
Optionalpage?: numberOptionalpageSize?: numberOptionalquery?: stringOptionalroleIds?: string[]External ids of roles to filter by; matches users whose roleId is in this set.
Optionalstatuses?: ("ACTIVE" | "DISABLED")[]Insert-on-first-sight / refresh-on-every-request from the verified
Cloudflare Access JWT claims. Returns DISABLED if the row exists but
has been deactivated; the dashboard auth wrapper redirects to
/forbidden on that error.
Idempotent: status is never flipped DISABLED → ACTIVE by this method.
Identity + status management for the admin dashboard's user population.
Sourced from the Cloudflare Access JWT — every request upserts into
admin.dashboard_userkeyed oncf_access_sub. Roles are looked up server-side at request time (see AdminDashboardRoleService).