Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitbb70749

Browse files
committed
fix org, user and all scope rules
1 parent19af04e commitbb70749

File tree

1 file changed

+15
-19
lines changed

1 file changed

+15
-19
lines changed

‎coderd/rbac/policy.rego

Lines changed: 15 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,15 @@ site := num if {
9191

9292
defaultscope_site:=0
9393

94-
scope_site:=site_allow([input.subject.scope], [input.object.type,"*", prebuild_workspace_type])
94+
scope_site:= num if{
95+
is_prebuild_workspace
96+
num:=site_allow([input.subject.scope], default_object_set)
97+
}
98+
99+
scope_site:= num if{
100+
notis_prebuild_workspace
101+
num:=site_allow([input.subject.scope], [input.object.type,"*", prebuild_workspace_type])
102+
}
95103

96104
site_allow(roles, object_set):= num if{
97105
# allow is a set of boolean values without duplicates.
@@ -123,25 +131,19 @@ org := num if {
123131

124132
org:= num if{
125133
is_prebuild_workspace
126-
num:=number([
127-
org_allow(input.subject.roles, default_object_set),
128-
org_allow(input.subject.roles, [prebuild_workspace_type])
129-
])
134+
num:=org_allow(input.subject.roles, [input.object.type,"*", prebuild_workspace_type])
130135
}
131136

132137
defaultscope_org:=0
133138

134139
scope_org:= num if{
135140
notis_prebuild_workspace
136-
num:=org_allow(input.subject.scope, default_object_set)
141+
num:=org_allow([input.subject.scope], default_object_set)
137142
}
138143

139144
scope_org:= num if{
140145
is_prebuild_workspace
141-
num:=number([
142-
org_allow(input.subject.scope, default_object_set),
143-
org_allow(input.subject.scope, [prebuild_workspace_type])
144-
])
146+
num:=org_allow([input.subject.scope], [input.object.type,"*", prebuild_workspace_type])
145147
}
146148

147149
# org_allow_set is a helper function that iterates over all orgs that the actor
@@ -245,25 +247,19 @@ user := num if {
245247

246248
user:= num if{
247249
is_prebuild_workspace
248-
num:=number([
249-
user_allow(input.subject.roles, default_object_set),
250-
user_allow(input.subject.roles, [prebuild_workspace_type])
251-
])
250+
num:=user_allow(input.subject.roles, [input.object.type,"*", prebuild_workspace_type])
252251
}
253252

254253
defaultuser_scope:=0
255254

256255
scope_user:= num if{
257256
notis_prebuild_workspace
258-
num:=user_allow(input.subject.scope, default_object_set)
257+
num:=user_allow([input.subject.scope], default_object_set)
259258
}
260259

261260
scope_user:= num if{
262261
is_prebuild_workspace
263-
num:=number([
264-
user_allow(input.subject.scope, default_object_set),
265-
user_allow(input.subject.scope, [prebuild_workspace_type])
266-
])
262+
num:=user_allow([input.subject.scope], [input.object.type,"*", prebuild_workspace_type])
267263
}
268264

269265
user_allow(roles, object_set):= num if{

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp