{
  "id": 2318892,
  "title": "Directus Basics Part 3 — User Roles & Permissions",
  "url": "https://urgent.news/2026/08/21/directus-basics-part-3-user-roles-permissions",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-08-21T06:08:46.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/wadethomastt/directus-basics-part-3-user-roles-permissions-328c"
  },
  "original_language": "en",
  "account": "This is part three of our Directus Basics series. We're discussing access control, which determines who can see and manipulate data in your Directus instance. There are three key terms: Permission, Policy, and Role. Permissions apply to a single collection and action (create, read, update, delete, or share), and can be full access, no access, or custom rules. Policies group permissions together and can be assigned to users or roles. Roles define a user's position within a project and can have multiple policies, apply to multiple users, and have child roles.\n\nIf an administrator creates a user without assigning a role, the user cannot access the Data Studio. The missing piece is that the role must have an access policy attached. Access control in Directus flows in this order: Access Policy → Role → User. This means you first define what level of access a user needs, build an access policy to match, create a role and attach that policy to it, and finally register the user and assign them to the role.\n\nEvery fresh Directus instance comes with two default policies: Administrator, which has unrestricted access, and Public, which has Read access only for visible data. When giving a collection Public Access, set permissions to Read and choose All Access. Create a custom access policy for a data-entry team member, for example, by naming it DataEntry, checking App Access, and adding the 'products' collection with Read access. Then, create the user role with this policy and create the user under the User Directory. Assign the 'DataEntry' role to the user.\n\nLog in as the new user, and you'll see the products collection, but attempting to edit any field will not work, as only Read access was granted. The product image is also missing. To fix this, add the 'directus_files' collection with Read access to the 'DataEntry' policy. This allows the user to view the product image. You can also extend access to related collections by adding them to the DataEntry policy with Read access.\n\nCustom field-level permissions allow you to restrict access down to individual fields. For example, you can allow the data-entry user to update only the 'name' field on products. Custom permission rules give you fine-grained control over user access.",
  "summary": "This is part three of our Directus Basics series. In part one we set up our instance, and in part two we covered relationships between collections. Today we're covering access control — what determines who can see and touch your data. The Core Concepts Access control in Directus comes down to three terms: Permission — applies to one collection and one action (create, read, update, delete, or…",
  "key_points": [
    "Directus access control determines user data access with Permissions, Policies, and Roles",
    "Administrator role grants full access, Public role has Read access to visible data",
    "Assign DataEntry role with custom policy to restrict data-entry user access"
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}