Skip to content

[Feature Request] Allow assigning any child node to a user without granting access to the entire parent tree #129

Description

@maghrebastro-cyber

Current behavior
Currently, in Nodify Headless CMS, access rights based on nodes only work at the root node level (nodes without a parent).
When a user is assigned a root node, they automatically get access to all sub-nodes and content within that entire tree.

Problem encountered
It is currently impossible to assign a user a single child node (at any depth level) without also giving them access to the parent node and all its other siblings/subtrees.

Use case / Example
I have the following node structure:

text
📁 Blog (root)
├── 📁 Drafts
│ ├── 📄 Article 1
│ └── 📄 Article 2
├── 📁 Published
│ ├── 📄 Article 3
│ └── 📄 Article 4
└── 📁 Restricted
└── 📄 Article 5
I want to give User A access only to Article 2 (inside Drafts) and User B access only to Published.
With the current system, I have to give them access to the entire Blog root node, which exposes all drafts, published, and restricted content.

Expected behavior
It should be possible to assign any node (regardless of its depth or parentage) directly to a user.
The user should then:

Have access only to that specific node and its contents (if it's a container)

Be able to optionally access its children (configurable)

NOT have access to parent nodes, sibling nodes, or unrelated branches

Suggested solution
Modify the permission system to allow node assignment at any level of the tree

When a user is assigned a child node, restrict their navigation/view to only that subtree

Optionally, add a setting to decide whether a user can "climb up" to parent nodes (default: false for child-only assignments)

Benefits
More granular access control

Better support for multi-user workflows (editors, reviewers, contributors)

Allows building collaborative spaces without exposing entire content trees

Additional context
This feature would bring Nodify closer to enterprise-grade permission systems found in other headless CMS solutions (like Strapi, Directus, or Sanio).

Thank you for considering this improvement!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions