|
1 | 1 | apiVersion: apis.kcp.io/v1alpha1 |
2 | 2 | kind: APIResourceSchema |
3 | 3 | metadata: |
4 | | - name: v251204-7c13b4e0a.workspacetypes.tenancy.kcp.io |
| 4 | + name: v260428-f702a24c5.workspacetypes.tenancy.kcp.io |
5 | 5 | spec: |
6 | 6 | group: tenancy.kcp.io |
7 | 7 | names: |
@@ -167,6 +167,65 @@ spec: |
167 | 167 | WorkspaceType `example` is created in the `root:org` workspace, the implicit |
168 | 168 | initializer name is `root:org:example`. |
169 | 169 | type: boolean |
| 170 | + initializerPermissions: |
| 171 | + description: |- |
| 172 | + initializerPermissions are the RBAC rules granted to initializer controllers when they |
| 173 | + access workspace content through the initializing virtual workspace's content proxy. |
| 174 | + Rules are evaluated in-process by the VW proxy on each request; no ClusterRole or |
| 175 | + ClusterRoleBinding objects are created inside the workspace. |
| 176 | +
|
| 177 | + When empty (the default), the VW content proxy falls back to impersonating the |
| 178 | + workspace owner (full cluster-admin), preserving the historical behavior. |
| 179 | +
|
| 180 | + Changes take effect immediately for all workspaces of this type. |
| 181 | + items: |
| 182 | + description: |- |
| 183 | + PolicyRule holds information that describes a policy rule, but does not contain information |
| 184 | + about who the rule applies to or which namespace the rule applies to. |
| 185 | + properties: |
| 186 | + apiGroups: |
| 187 | + description: |- |
| 188 | + APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of |
| 189 | + the enumerated resources in any API group will be allowed. "" represents the core API group and "*" represents all API groups. |
| 190 | + items: |
| 191 | + type: string |
| 192 | + type: array |
| 193 | + x-kubernetes-list-type: atomic |
| 194 | + nonResourceURLs: |
| 195 | + description: |- |
| 196 | + NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full, final step in the path |
| 197 | + Since non-resource URLs are not namespaced, this field is only applicable for ClusterRoles referenced from a ClusterRoleBinding. |
| 198 | + Rules can either apply to API resources (such as "pods" or "secrets") or non-resource URL paths (such as "/api"), but not both. |
| 199 | + items: |
| 200 | + type: string |
| 201 | + type: array |
| 202 | + x-kubernetes-list-type: atomic |
| 203 | + resourceNames: |
| 204 | + description: ResourceNames is an optional white list of names |
| 205 | + that the rule applies to. An empty set means that everything |
| 206 | + is allowed. |
| 207 | + items: |
| 208 | + type: string |
| 209 | + type: array |
| 210 | + x-kubernetes-list-type: atomic |
| 211 | + resources: |
| 212 | + description: Resources is a list of resources this rule applies |
| 213 | + to. '*' represents all resources. |
| 214 | + items: |
| 215 | + type: string |
| 216 | + type: array |
| 217 | + x-kubernetes-list-type: atomic |
| 218 | + verbs: |
| 219 | + description: Verbs is a list of Verbs that apply to ALL the ResourceKinds |
| 220 | + contained in this rule. '*' represents all verbs. |
| 221 | + items: |
| 222 | + type: string |
| 223 | + type: array |
| 224 | + x-kubernetes-list-type: atomic |
| 225 | + required: |
| 226 | + - verbs |
| 227 | + type: object |
| 228 | + type: array |
170 | 229 | limitAllowedChildren: |
171 | 230 | description: |- |
172 | 231 | limitAllowedChildren specifies constraints for sub-workspaces created in workspaces |
@@ -258,6 +317,65 @@ spec: |
258 | 317 | WorkspaceType `example` is created in the `root:org` workspace, the implicit |
259 | 318 | terminator name is `root:org:example`. |
260 | 319 | type: boolean |
| 320 | + terminatorPermissions: |
| 321 | + description: |- |
| 322 | + terminatorPermissions are the RBAC rules granted to terminator controllers when they |
| 323 | + access workspace content through the terminating virtual workspace's content proxy. |
| 324 | + Rules are evaluated in-process by the VW proxy on each request; no ClusterRole or |
| 325 | + ClusterRoleBinding objects are created inside the workspace. |
| 326 | +
|
| 327 | + When empty (the default), the VW content proxy falls back to impersonating the |
| 328 | + workspace owner (full cluster-admin), preserving the historical behavior. |
| 329 | +
|
| 330 | + Changes take effect immediately for all workspaces of this type. |
| 331 | + items: |
| 332 | + description: |- |
| 333 | + PolicyRule holds information that describes a policy rule, but does not contain information |
| 334 | + about who the rule applies to or which namespace the rule applies to. |
| 335 | + properties: |
| 336 | + apiGroups: |
| 337 | + description: |- |
| 338 | + APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of |
| 339 | + the enumerated resources in any API group will be allowed. "" represents the core API group and "*" represents all API groups. |
| 340 | + items: |
| 341 | + type: string |
| 342 | + type: array |
| 343 | + x-kubernetes-list-type: atomic |
| 344 | + nonResourceURLs: |
| 345 | + description: |- |
| 346 | + NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full, final step in the path |
| 347 | + Since non-resource URLs are not namespaced, this field is only applicable for ClusterRoles referenced from a ClusterRoleBinding. |
| 348 | + Rules can either apply to API resources (such as "pods" or "secrets") or non-resource URL paths (such as "/api"), but not both. |
| 349 | + items: |
| 350 | + type: string |
| 351 | + type: array |
| 352 | + x-kubernetes-list-type: atomic |
| 353 | + resourceNames: |
| 354 | + description: ResourceNames is an optional white list of names |
| 355 | + that the rule applies to. An empty set means that everything |
| 356 | + is allowed. |
| 357 | + items: |
| 358 | + type: string |
| 359 | + type: array |
| 360 | + x-kubernetes-list-type: atomic |
| 361 | + resources: |
| 362 | + description: Resources is a list of resources this rule applies |
| 363 | + to. '*' represents all resources. |
| 364 | + items: |
| 365 | + type: string |
| 366 | + type: array |
| 367 | + x-kubernetes-list-type: atomic |
| 368 | + verbs: |
| 369 | + description: Verbs is a list of Verbs that apply to ALL the ResourceKinds |
| 370 | + contained in this rule. '*' represents all verbs. |
| 371 | + items: |
| 372 | + type: string |
| 373 | + type: array |
| 374 | + x-kubernetes-list-type: atomic |
| 375 | + required: |
| 376 | + - verbs |
| 377 | + type: object |
| 378 | + type: array |
261 | 379 | type: object |
262 | 380 | status: |
263 | 381 | description: WorkspaceTypeStatus defines the observed state of WorkspaceType. |
|
0 commit comments