Permissions Overview
Overview
Survanta uses one ASP.NET Identity user store with separate System, Tenant, and Website permission categories plus distinct Website and dashboard cookies. One identity can gain Website and Tenant capabilities; permission categories remain separately validated and must not be mixed into a permission group.
Understanding which group you belong to helps clarify what you can access and what is protected from you by design.
The Three User Groups
Platform Admins
Platform Admins are members of the Survanta operations team who manage the platform itself. They hold System-level permissions that allow them to:
- Manage tenant accounts (create, suspend, reactivate, and soft-delete) when authorized
- Review and process plan requests from website users
- Access tenant data in a limited, audited capacity for support and billing purposes
- Configure platform-wide settings
- View platform health and usage reports
Platform management requires platform-persona invariants plus explicit System.* permissions. A boolean flag or role alone is not the fine-grained permission authority.
Tenant Admins and Tenant Users
Every organization that subscribes to Survanta is called a tenant. Each tenant has its own set of admins and users who access the Survanta dashboard. They hold Tenant-level permissions scoped to that organization only.
Within a tenant, permissions are further divided by role:
| Role | Typical Access |
|---|---|
| Tenant Admin | Requires both IsTenantAdmin=true and an active same-tenant TENANT_ADMIN group; individual features still use permissions and plan gates |
| Tenant User | Access is determined by active same-tenant membership, access channel, roles/groups, direct Tenant permissions, resource rules, and subscription limits |
A tenant admin cannot access another tenant's data. A tenant user cannot access features not included in their assigned role.
Website Users
Website Users are individuals who visit the Survanta public website to explore plans and submit plan requests. They hold Website-level permissions that allow them to:
- Register a website account and sign in
- Use the Custom Plan Builder
- Submit plan requests
- View their own requests and conversation threads
- Post replies to their own request threads
- Manage their account profile
- Access website notifications
Website self-registration creates a Website account, but the Website cookie can authenticate any valid active confirmed Identity account. Website permissions authorize features, not login. A Website identity can later be linked to Tenant membership without creating a second identity; dashboard access still requires its separate tenant authorization.
Separation of Permission Scopes
| Permission Scope | Who Holds It | What It Covers |
|---|---|---|
| System permissions | Platform Admins only | Platform management, all tenants |
| Tenant permissions | Tenant Admins and Users | One specific tenant only |
| Website permissions | Website Users | Public website features only |
These permission categories are enforced independently even when one identity has memberships in more than one category. Assignment writes use server-side authority, scope, tenant, group-safety, and subset/no-self checks. Integration scopes and public-token values are never assignable as user permissions.
Frequently Asked Questions
Can a Tenant Admin also be a Website User?
Yes. The intended conversion/linking flow reuses the same ApplicationUser, password, security stamp, email confirmation, and profile while adding Tenant membership and permissions. The Website and dashboard authentication cookies remain separate.
Can a Platform Admin see all tenant data at any time? Platform Admin access to tenant data is limited to specific support and billing tools and is subject to audit logging. It is not unrestricted access to raw data.