Skip to content

Commit 6ee307d

Browse files
committed
access control clean up
Signed-off-by: Michal Wasilewski <[email protected]>
1 parent 93fc066 commit 6ee307d

File tree

1 file changed

+16
-31
lines changed

1 file changed

+16
-31
lines changed

docs/concepts/spaces/access-control.md

Lines changed: 16 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ tailored permissions:
2828
- **Principle of Least Privilege**: Grant exactly the permissions needed, nothing more
2929

3030
!!! example "Custom Role Example"
31-
Instead of giving someone full **Space Admin** access, create a custom "Infrastructure Developer" role with just:
31+
Instead of giving someone full **Space Admin** access, create a custom "Infrastructure Developer" role with just:
3232

3333
- `space:read` - View space contents
3434
- `stack:read` - Understand configurations
@@ -62,15 +62,14 @@ account-wide settings.
6262

6363
## Authorization Methods
6464

65-
### User Management (GUI-Based)
65+
### User Management
6666

67-
The [User Management](../user-management/) interface provides a graphical way to assign roles to users, groups, and API
67+
The [User Management](../user-management/) interface provides a way to assign roles to users, groups, and API
6868
keys:
6969

70-
1. Navigate to **Organization Settings****User Management**
71-
2. Select user, group, or API key
72-
3. Click **Manage Roles**
73-
4. Assign predefined or custom roles to specific spaces
70+
1. Navigate to **Organization Settings****Identity Management**
71+
2. Select **Users**, **IdP group mapping**, or **API keys**
72+
3. Assign predefined or custom roles to specific spaces
7473

7574
See [assigning roles to users](../authorization/assigning-roles-users.md) for detailed instructions.
7675

@@ -86,7 +85,7 @@ The legacy space rules are deprecated in favor of RBAC roles:
8685
- **space_write** → Use RBAC roles with appropriate write actions
8786
- **space_admin** → Use RBAC roles with management actions
8887

89-
#### Modern RBAC Role Assignment
88+
#### RBAC Role Assignment
9089

9190
Use the `roles` rule to assign RBAC roles in login policies:
9291

@@ -112,31 +111,23 @@ roles["root"]["space-admin-role-id"] {
112111
```
113112

114113
!!! note "Getting Role IDs"
115-
To use custom roles in login policies, copy the role ID from **Organization Settings****Access Control Center** → *
116-
*Roles** → select role → copy ID.
114+
To use custom roles in login policies, copy the role ID from **Organization Settings****Access Control Center****Roles** → select role → copy ID.
117115

118116
!!! warning
119-
120117
- Please note that Login policies are only allowed to be created in the `root` space, therefore only `root` space admins
121118
and administrative stacks, as well as `legacy` space administrative stacks can create or modify them.
122119
- A logged-in user's access levels only get updated when they log out and in again, so newly added spaces might not be
123120
visible to some users. An exception is that the space's creator immediately gets access to it.
124121

125122
## Inheritance
126123

127-
Inheritance is a toggle that defines whether a space inherits resources from its parent space or not. When set to true,
128-
any stack in the child space can use resources such as worker pools or contexts from the parent space. If a space
129-
inherits from a parent and its parent inherits from the grandparent, then the space inherits from the grandparent as
130-
well.
124+
Inheritance is a toggle that defines whether a space inherits resources from its parent space or not. When set to true, any stack in the child space can use resources such as worker pools or contexts from the parent space. If a space inherits from a parent and its parent inherits from the grandparent, then the space inherits from the grandparent as well.
131125

132126
Inheritance also modifies how roles propagate between spaces.
133127

134-
In a scenario when inheritance between spaces is turned off, the roles are propagated only down the space tree. On the
135-
other hand, when inheritance is enabled, then a user with any role in the child space also gets **Read** role in their
136-
parent.
128+
In a scenario when inheritance between spaces is turned off, the roles are propagated only down the space tree. On the other hand, when inheritance is enabled, then a user with any role in the child space also gets **Read** role in their parent.
137129

138-
Below is a diagram that demonstrates how this all works in practice. This is a view for a user that was given the
139-
following roles by Login policies:
130+
Below is a diagram that demonstrates how this all works in practice. This is a view for a user that was given the following roles by Login policies:
140131

141132
- **Read** in `read access space`
142133
- **Write** in `write access space`
@@ -148,17 +139,11 @@ Dashed lines indicate a lack of inheritance, while when it's enabled the lines a
148139

149140
Let's analyze the tree starting from the left.
150141

151-
As mentioned, the user was granted **Space Writer** access to the `write access space` space.
152-
Because inheritance is enabled, they also received **Space Reader** access to the `access propagates up` space and the
153-
`root` space. The reason for that is to allow users to see resources that their space can now use.
154-
155-
Next, the user was given **Space Admin** access to the `admin access space` space. Regardless of the inheritance being
156-
off, they also received **Space Admin** access to the `access propagates down` space.
157-
This makes sense, as we want to allow admins to still manage their spaces subtree even if they want to disable resource
158-
sharing between some spaces.
159-
160-
Finally, the user was given **Space Reader** access to the `read access space` space. Because inheritance is off, they
161-
did not receive **Space Reader** access to the `legacy` space.
142+
As mentioned, the user was granted **Write** access to the `write access space` space.
143+
Because inheritance is enabled, they also received **Read** access to the `access propagates up` space and the `root` space. The reason for that is to allow users to see resources that their space can now use.
144+
Next, the user was given **Admin** access to the `admin access space` space. Regardless of the inheritance being off, they also received **Admin** access to the `access propagates down` space.
145+
This makes sense, as we want to allow admins to still manage their spaces subtree even if they want to disable resource sharing between some spaces.
146+
Finally, the user was given **Read** access to the `read access space` space. Because inheritance is off, they did not receive **Read** access to the `legacy` space.
162147

163148
## Related Topics
164149

0 commit comments

Comments
 (0)