People, roles and access
Add people, grant roles, look through somebody else's eyes.
On this page
- Before you start
- Add a person and invite them
- Roles and what they allow
- What reading needs
- Whole-repository roles and per-asset roles
- Teams
- Who can see usernames and email addresses
- Switch somebody off, or remove them
- View the repository as somebody else
- Workflow controls
- Maintenance page
- Good to know
- Related
This page shows you how to add people, let them sign in, and decide what each of them may do. It also covers looking at the repository through somebody else's eyes, which is how you check that access is set up the way you meant.
Before you start
- Everything here is on Administration → People and Persona.
- To change anything on that screen you need Manage users and roles (ACCESS_MANAGE). In the starter model only Sysadmin has it. Without it, the screen is read-only and says so.
The screen has a tab for each part of the access model, from People to History. Most values can be clicked and changed in place, and each save is recorded on the History tab.
Add a person and invite them
A person you add cannot sign in until they have set a password. You never set or see it: KRISID gives you a one-time link and they choose their own.
- Open the People tab and press Add a person.
- Fill in Username, Name and Email. The username is what they sign in with. It can't be changed later, so use something like
r.iyerrather than a full name. - Press Add them.
- In the person's row, under Signing in, press Invite, then Make it.
- Send the link. Copy puts it on your clipboard. If a mail server is set up, Send it emails it from KRISID. If not, Email it opens your own mail program with the message already written.
The link works once and lasts 72 hours. It is shown only this once, so send it before you leave the screen. When they have used it, the row says has a password.
A new person starts with Viewer, so they can read the repository as soon as they sign in. Give them more on the Assignments tab (see below).
If somebody forgets their password, press Send a new link in their row. Their old password stops working and they are signed out everywhere.
The Time zone column shows the zone that person's browser last reported — Asia/Kolkata, Europe/London. It is read-only: nobody types it, and it changes by itself when they next sign in from somewhere else. KRISID uses it to write deadlines in an email the way the person reading it would read them on screen. See Change requests.
Tip: People can also create their own accounts if you allow it. See Sign-up and the mail server.
Roles and what they allow
A role is a named set of permissions. The Permissions tab is a grid with one row per permission and one column per role, in five groups — Assets, Model, Access, Workflow, Views. Click a tick to grant or take away that permission.
How far a tick reaches depends on the permission, and each one says which it is — in small italics beside its name on the grid, with the whole sentence on hover:
| It says | What that means | Example |
|---|---|---|
| over an asset | A role held on a data domain carries it to everything the domain owns. Held over the repository, it reaches everything. | Edit attributes, Manage relations, Assign responsibilities |
| over the repository | Only an assignment over the whole repository grants it. Ticking it for a role that is only ever held over an asset — Data Owner, Data Steward, Technical Custodian, Subject Matter Expert, Consumer — looks the same and does nothing. | Manage sources, Change the metamodel, Manage users and roles |
| anywhere | Held over anything at all — one data domain is enough — it counts everywhere. | View assets, View history, View the metamodel, View workflows, View users and roles |
The role's dropdown entry on Assignments says which kind of role it is, and the three reaches above are a property of the permission, not of the role.
What reading needs
Somebody with no role at all now sees nothing. Until v91 four of these permissions were on the grid and nothing asked for them: an account with no roles could read every asset, its history, the metamodel and the workflows. They are asked for now — View assets, View history, View the metamodel and View workflows — and a person holding none of them is refused, by name, with the roles that carry it.
Reading is all or nothing. KRISID does not hide one asset from one person: a catalogue exists to be searched, and a list that quietly left rows out would be a worse answer than a refusal. So those four count anywhere — a Consumer held over a single data domain reads the whole catalogue — and withholding one is how somebody is made write-only, deliberately, in the access workbook.
Nothing changed under anybody when you upgraded. Every active role that held any permission at all was given the four, so everybody reading the estate the day before read it the day after. What changed is that you can now take them away.
What stays open to anybody signed in: who exists, what the roles are and who holds them (which is how somebody finds who to ask — usernames and email addresses still need See usernames and email addresses), the list of sources, and where this repository can call out to. The access workbook is not a screen: downloading it needs View users and roles as well as See usernames and email addresses.
| Permission | On the grid | Reaches | What it lets somebody do |
|---|---|---|---|
| ASSET_VIEW | View assets | anywhere | Read assets, their attributes and links |
| ASSET_CREATE, ASSET_EDIT, ASSET_DELETE | Create assets, Edit attributes, Delete assets | repository / asset / asset | Add, change and remove assets |
| HARVESTED_DELETE | Delete harvested assets | asset | Remove an asset a harvest brought in, as well as holding Delete assets. Only Sysadmin has it in the starter model |
| RELATION_MANAGE | Manage relations | asset | Add and remove links between assets |
| ASSET_BULK_LOAD | Bulk load assets | repository | Load assets from a workbook |
| HISTORY_VIEW | View history | anywhere | See who changed what, and when |
| METAMODEL_VIEW, METAMODEL_MANAGE | View the metamodel, Change the metamodel | anywhere / repository | Read, or change, what types, attributes and relations exist |
| SOURCE_VIEW | Open source connections | repository | Open an established source, and test, preview or sync it. The list of sources and the New source form are open to everybody. Sysadmin and Metadata Manager in the starter model |
| HARVEST_RUN | Run a harvest | repository | Test, preview and sync a source you can open |
| CONNECTION_MANAGE | Manage sources | repository | Add a source, hold its credentials and decide what it brings |
| CONNECTOR_ALLOW | Decide which connectors may be used | repository | Say which systems may be connected at all |
| TAG_PUSH | Push tags to a source | repository | Write values from KRISID back onto Snowflake objects |
| SEMANTIC_EDIT | Edit the semantic layer | repository | Change what metrics, dimensions and segments mean |
| ACCESS_VIEW, ACCESS_MANAGE | View users and roles, Manage users and roles | anywhere / repository | Read, or change, people, teams, roles and permissions |
| PERSON_IDENTIFY | See usernames and email addresses | repository | See other people's username and email address on this screen, and download the access workbook. Everybody sees their own. Only Sysadmin has it in the starter model |
| RESPONSIBILITY_ASSIGN | Assign responsibilities | asset | Put a person or team in a role over an asset |
| VIEW_AS | View as somebody else | repository | Look at the repository as another person, read-only |
| LOG_VIEW | Read the logs | repository | Open the Logs screen, and ask a slow screen where its seconds went (the answer is the shape of the build, never your data) |
| USAGE_VIEW, USAGE_MANAGE | See usage analytics, Switch usage analytics | repository | Read the Usage screen and export it, and see the named networks; switch recording (and recording where people sign in from) on or off, name the networks, set how long it is kept, delete it. Only Sysadmin has them in the starter model |
| WORKFLOW_DESIGN, WORKFLOW_RAISE, WORKFLOW_VIEW | Design workflows, Propose changes, View workflows | repository / asset / anywhere | Build approval workflows, raise requests, see them |
| WORKFLOW_BYPASS_LOAD | Load past workflows | repository | A workbook they load is written directly, even where loads are set to be held or rejected. Only Sysadmin has it in the starter model |
| VIEW_CREATE, VIEW_SHARE | Save a view, Share a view | asset | Save a search or diagram for yourself, or share it |
| LENS_MANAGE | Manage lenses | repository | Create lenses — views that span asset types — decide who may see each one, and edit or delete any of them. Only Sysadmin has it in the starter model. Editing one particular lens needs no permission: be named on it |
The starter roles are Sysadmin, Metadata Manager, Viewer and Workflow Developer, which apply to the whole repository, and Data Owner, Data Steward, Technical Custodian, Subject Matter Expert and Consumer, which apply to single assets. Your repository may have renamed or changed them.
Whole-repository roles and per-asset roles
Each role has a Held over setting:
- the whole repository: the role applies everywhere. Sysadmin and Viewer work like this.
- one asset: the role applies to one asset and to everything under it. Data Owner and Data Steward work like this. For example, a steward of a data domain looks after everything the domain owns.
For a per-asset role, May be assigned at can limit which kinds of asset it may be held over. The Inheritance tab controls how far a per-asset role passes down.
To give somebody a role:
- Open the Assignments tab and press Assign a role.
- Choose the role, whether it is held by a person or a team, and who.
- For a per-asset role, choose the kind of asset and then the asset.
- Press Assign it.
You can also make somebody responsible from an asset's own page. See Owners, stewards and responsibilities.
To add a role of your own, press Add a role on the Roles tab, then tick its permissions on the grid.
Teams
A team lets you assign a role once, to a group, instead of to each person. On the Teams tab, press Add a team, give it a name, then open it and use Add somebody to add members. A team with nobody in it can still hold responsibilities, so the responsibility isn't lost when people move on.
Who can see usernames and email addresses
Most of this screen is open to anybody who can sign in: who exists, what the teams and roles are, and who holds what. That is deliberate — it is how somebody finds out who to ask about a table.
Two things on it are not. See usernames and email addresses (PERSON_IDENTIFY) is what shows you other people's Username and Email, and it is also what lets you download the access workbook. In the starter model only Sysadmin has it, and it is one tick on the Permissions tab like any other.
Without it:
- the Username and Email columns are not on the People tab at all, and a line under the tabs says so. The rest of each row — name, teams, what they are accountable for, time zone, active — is there as before.
- a person's own page shows hidden where their email address would be.
- Download the current access model is replaced by the reason. The workbook is keyed on usernames, so there is no sensible copy of it with them taken out: uploading one would read as "create everybody again, and drop every assignment held by a person". You can still apply a workbook somebody else downloaded, if you hold ACCESS_MANAGE.
- Invite is not offered, because an invite is made by username. Whoever holds ACCESS_MANAGE normally holds this too — when KRISID upgraded your repository it gave PERSON_IDENTIFY to every role that already had ACCESS_MANAGE, so nobody who was administering people stopped being able to.
Your own username and email address are always yours to see, on your profile and on your own person page, whether you hold the permission or not. You sign in with your username.
Two things this does not do, said plainly so you can decide whether you need more:
- Usernames still appear elsewhere. They are in the person picker, in Viewing as, beside an approval, and in the activity log — a log that said "somebody changed this" would not be a log. If a username is itself sensitive in your organisation, this permission is not enough on its own; tell us and we will say what closing that would cost.
- Email addresses are closed everywhere else already, but not on the Logs screen, where the mail log lists what was sent and to whom. That needs Read the logs (LOG_VIEW), which is Sysadmin's by default.
Note: a role carrying PERSON_IDENTIFY cannot be the role sign-up hands out. An open form that gave strangers the right to read every address would be a mailing list with extra steps. See Sign-up and the mail server.
Switch somebody off, or remove them
When somebody leaves, click Active in their row and choose No. They are signed out at once and can no longer sign in. Their name stays on everything they did.
The × at the end of a row removes a person completely. KRISID refuses to remove somebody who still holds an assignment. Hand their responsibilities to someone else first, or switch them off instead. Roles work the same way: a role somebody holds can't be removed, but you can set it to inactive, and an inactive role grants nothing. You can't switch off or remove your own account.
View the repository as somebody else
When somebody says "I can't see it", you can look at the repository exactly as they see it.
- In the top-right corner, press your name.
- Choose View as somebody else.
- Type part of the person's name, and press their name in the list.
A banner across the top says who you really are and whose view you are seeing. Press Back to myself in the banner, or in the same menu, to go back to your own.
The rules:
- You need View as somebody else (VIEW_AS). In the starter model only Sysadmin has it.
- It is read-only. Nothing can be changed while you are viewing as somebody else, and History always records you as yourself.
- You can only view as active people.
- On the People and Persona screen, Viewing as has a button that switches this off for the whole repository. While it is off, only people who also hold ACCESS_MANAGE can use it, so the person who can switch it back on is never locked out.
Workflow controls
On the screen, an edit to an asset a workflow governs is always proposed. The Workflow controls tab decides what happens when the same change arrives another way. Changing them needs Manage users and roles, and each change is written to the System log.
- A direct write through the API: is written, as before (the default); becomes a change request (the API answers 202 with the request's id); or is refused (409, saying how to propose it instead).
- A workbook load: writes, as before (the default); holds governed changes as change requests; or leaves governed rows out, and says which. Anybody holding Load past workflows loads directly whatever this says.
Maintenance page
Maintenance is a tab on this screen, for whoever holds Manage users and roles (ACCESS_MANAGE) — Sysadmin in the starter model.
Tick Show the maintenance page and, from that moment:
- Everybody who cannot switch it is signed out where they stand, so nobody is halfway through an edit while the work happens.
- They see one page instead of the repository, wherever they go: signing in, signing up, or opening an address they had bookmarked. Nothing of the repository is drawn behind it, and every request is refused rather than half-answered.
- You keep working as normal, and switch it off when you are done.
What the page shows:
| Setting | What it does |
|---|---|
| What it says | Your own words, such as KRISID is closed this evening while the warehouse connection is moved. Left empty, the page says it is being worked on. |
| Expected back | A date and time, shown on the page as Expected back by…. Leave it empty to promise nothing. |
| Window | A start and an end. Inside the window the page shows itself, and at the end it stops — nobody has to be at their desk. A window that ends before it starts is refused. |
| Anything urgent | An address to write to while it is down. Empty means the support address in the corner panel. |
The page wears your own logo or word mark, and has nothing on it but Try again.
Switching it on or off is written to the System tab of the activity log, with who did it and how many sessions were ended.
Good to know
- To load or change many people at once, use the workbook on the same screen: Download the current access model, edit it, then upload it. You see what would change before anything is written. Usernames, team codes and role codes are the keys, so changing one creates a new row. It doesn't rename the old one. Downloading it needs See usernames and email addresses (PERSON_IDENTIFY), because those keys are the usernames.
- Changing somebody's roles doesn't sign them out. Switching them off does.