Skip to main content

Tenants and isolation

A tenant (Nevis Client) separates one user population from another inside your Nevis ID instance. Each tenant has its own users, units, and policies. Separation has three levels. Every customer runs on a dedicated instance, each instance has environments, TEST and LIVE by default, and each environment holds one or more tenants. To structure one population, you use units. To keep two populations apart, you use tenants.

The industry also calls the separation tenant isolation or data segregation.

This page uses the fictional company Silvretta Insurance, which also sells insurance under the brand of Calder Bank.

What does the word tenant mean in Nevis ID?​

MeaningWhere you meet itName on this page
The dedicated deployment of one customerThe term "tenant isolation" on Deployment, Architecture, and Data ResidencyInstance
One user population inside an instanceThe data model and the APIs, which call it a clientTenant (Nevis Client)

This page explains the second meaning. A tenant does not contain other tenants, and an OpenID Connect (OIDC) client is a different object. For more information on OIDC clients, see Applications, roles, and enterprise roles.

Which levels keep user populations apart?​

LevelWhat it separatesHowExample
InstanceOne customer from all other customersIts own infrastructureSilvretta Insurance has its own instance
EnvironmentTest from production: each environment has its own configuration, users, and credentialsIts own deployment and data in the instanceTEST and LIVE, the environments of a new instance
TenantOne user population from another inside an environmentOne shared service, data kept apartThe customers of Silvretta Insurance, and the customers of Calder Bank

For more information on instances and environments, see Deployment, Architecture, and Data Residency.

Diagram of three nested levels. The instance of Silvretta Insurance contains two environments, TEST and LIVE. Each environment contains two tenants, Silvretta customers and Calder Bank customers, and each tenant has its own users.

What belongs to a tenant, and what is shared?​

ObjectBelongs to
Users, with their credentials and profilesOne tenant. The login ID of a user is unique within its tenant, so the same login ID can exist in two tenants, as two different users.
UnitsOne tenant
AuthorizationsOne tenant, through the profile
Enterprise rolesOne tenant
PoliciesOne tenant
TemplatesOne tenant
Applications and their rolesShared. An application is assigned to one or more tenants.

A login flow works with one tenant. The flow either has a fixed tenant, or asks the user for it.

Diagram of two tenants side by side, Silvretta customers and Calder Bank customers. Each tenant has its own users, units, and password policy. The login ID m.rossi exists in both tenants, for Marta Rossi in one and Marco Rossi in the other. One application, Policy Portal, is assigned to both tenants.

Which tenants does an instance have from the start?​

TenantHolds
DefaultThe end users who register and log in through your applications
APIThe technical users that call the Nevis ID APIs
AdminThe administrators and support staff who manage the instance

These three tenants separate kinds of users. For more information, see Data model.

When do you use a separate tenant, and when units?​

Ask one question: is a person who belongs to both populations one user, with one login?

Units in one tenantSeparate tenants
A person in both populationsOne user, with a profile in each unitTwo users
Login IDsUnique across all unitsThe same login ID can exist in both
Policies and templatesThose of the tenant, with some settings for a unitEach tenant has its own
Enterprise rolesAvailable in all unitsEach tenant has its own
AdministrationKept apart by unitKept apart by tenant

Silvretta Insurance makes this choice four times:

PopulationChoiceReason
Motor Claims and Property ClaimsUnitsThe same employees work in both teams
Garage Keller AG, a partner companyA unitIts people use the same applications, and Motor Claims manages them
Arlberg Life, an acquired companyA second unit tree in the same tenantEmployees move between the companies and keep one login
The customers of Calder BankA separate tenantThe customers of the bank are not Silvretta customers. They have their own login IDs, policies, and templates.

For more information on units, see Units and the organizational hierarchy.

Diagram in two panels. Units in one tenant: Lena is one user with one login and two profiles, in the units Motor Claims and Property Claims. Separate tenants: Erik is two users with two logins, one in the tenant Silvretta customers and one in the tenant Calder Bank customers, and Nevis ID does not link them.

What happens when you create or delete a tenant?​

A new tenant is ready to hold users. Nevis ID gives it a default unit, default templates, and a default profile policy, and assigns the default application to it.

Deleting a tenant deletes everything that belongs to it: its users, credentials, units, enterprise roles, and policies.

Tenant facts at a glance​

FactValue
Tenants per instance from the startThree: Default, API, Admin
Tenants inside a tenantNone. Structure inside a tenant is built with units.
Tenants per userExactly one
Tenants per unitExactly one
Tenants per enterprise roleExactly one
Tenants per applicationOne or more
Login IDsUnique within a tenant
Name of a tenant in the data model and the APIsClient, written Nevis Client on this page