Learn to govern an n8n instance for teams: user access models and role-based permissions, sharing workflows, credentials, and folders, up to maintaining change control and audit trails so collaboration stays secure and traceable.

In episode 13 you monitored the instance with execution data, Prometheus metrics, and alerts. Now imagine the same instance used by thirteen people from three different teams. Without rules of the game, one person could change a workflow used by others, or read credentials that aren't theirs. Observability doesn't answer that problem — what's needed is governance.
Episode 14 covers Governance & Multi-user Collaboration: managing user access and role-based permissions, sharing workflows, credentials, and folders, as well as maintaining change control and audit trails.
n8n distinguishes access rights on two levels. First, the instance level, with three main roles:
Second, the project level. Since version 1.x, n8n introduced projects as a sharing container: each project has its own set of workflows and credentials, and its membership determines who can work inside it. On top of this layer, RBAC gives finer control — for example edit rights are distinguished from view-only rights.
This model follows the least privilege principle: everyone gets the lowest rights sufficient for their task. Owners don't need to edit every daily workflow, and members don't need to touch instance settings. This firm boundary between roles is what prevents "one person deleted everything" incidents.
Adding members is done via Settings → Users, then sending an invitation by email. The chosen role determines their working boundaries. To ensure only the right people get in, complete it with:
Example of promoting the first user to owner during setup, then listing users via the Public API:
n8n user-management:promote --email=owner@example.comcurl -s https://n8n.example.com/api/v1/users \
-H "X-N8N-API-KEY: n8n_api_xxxxxxxxxxxx"The Public API can also be used for administration automation — for example scripts that schedule access rotation, or syncing the user list from an HR system. Make sure the API key used for this task is dedicated and given limited rights, following the security patterns we built in episode 12.
The minimal principle: give the lowest role possible, raise it only when needed, and audit role changes periodically. When someone switches teams or leaves the company, refresh their access as soon as possible — forgotten old accounts are a commonly exploited backdoor.
Sharing in n8n is done per resource, not per instance. Each workflow can be shared:
Folders complete the organization: workflows can be grouped into folders within a project, so hundreds of workflows don't pile up in a single list. A recommended structure for teams:
Project: Core-Ops
├── Folder: Triggers
├── Folder: Sync (database)
└── Folder: Reports
Project: Marketing
└── Folder: CampaignsInfo
Start with one project per team, not per person. Projects that are too small create many duplicate resources; projects that are too large are hard to audit. Clear boundaries help members understand where they work and what they're allowed to touch.
Credentials are the most sensitive asset, so their sharing rules are stricter. When creating a credential, you choose which project is allowed to use it. Members outside the project can't see, let alone use, that credential — even if they open a workflow that references it.
This is important to understand when sharing workflows: a shared workflow keeps running normally using its owner's credentials, but the recipient doesn't automatically get access to the credential values. If needed, the owner shares the credential to another project explicitly. The credential values themselves are never visible to anyone — only their reference.
When should a credential be shared? The rule of thumb: share only when a workflow genuinely uses it, and limit it to the smallest project that needs it. Avoid one giant credential used by all projects — when the service changes, rotating that credential disrupts the entire instance at once.
Shared workflows change quickly; what's dangerous is change without a trace. Two mechanisms guard against this:
git checkout -b fix/webhook-timeout
n8n workflow:update 42 --name "Laporan Harian v2"
git add workflows/laporan-harian.json
git commit -m "fix: naikkan timeout webhook laporan harian"
git push origin fix/webhook-timeoutSource control sync only pushes workflow definitions — not credentials. A workflow promoted from staging to production expects an identically named credential to already exist in production with its own values. This is by design so secrets don't travel between environments. The change control principle is simple: the production environment must not be changed directly by anyone, except through a documented flow. CI/CD details for workflows will be discussed in episode 18.
The last piece completing governance is the audit log. On enterprise licenses, n8n records important events permanently: user logins, workflow changes, credential creation and updates, user or role changes, as well as source control activity.
The audit trail answers the questions asked during incident investigation: who logged in last, who changed this workflow, when was this credential rotated. Because the records are append-only, this trail can serve as compliance evidence. To align with organizational policy, audit events can also be streamed to a SIEM or integrated with the observability built in episode 13.
Episode 14 turned a personal instance into a team platform. You understand the owner, admin, and member role model with the project and RBAC layers on top, how to manage users with MFA and SSO, sharing workflows, credentials, and folders with separate controls, as well as maintaining change control through version history and source control complemented by audit trails.
Key takeaways:
In the next episode we take n8n out of the laptop toward production: Self-hosting & Deployment Patterns — deploying with Docker Compose, Kubernetes, and cloud VMs, choosing storage backends and databases, up to high availability and scaling worker nodes. See you there!