Commit Graph

23 Commits

Author SHA1 Message Date
Tom Lebreux 49160dee86
Add support for k8s 1.28 (#341) 2024-03-27 16:56:34 -04:00
Jonathan Crowther b18c38740a
Add webhook checks for NamespacedRules (#309)
* Add role and rolebinding webhook validation. Add NamespacedRules escalation checks for GlobalRoles

* Update rancher/pkg/apis

* Fix linting issue

* Log error and add test for it
2024-01-15 17:17:15 -05:00
Kevin Joiner b5a9aaf8a0 Update docs gen to use cmp 2023-12-19 10:05:22 -05:00
Michael Bolot 707f7876c7 Adding validation for cluster/projectName for prtb
Adds validation on clusterName and projectName for prtbs to make sure
they refer to existing projects/clusters and that the project refers to
the cluster in the spec
2023-09-25 13:56:30 -05:00
Tom Lebreux 5f186eec2e Upgrade to k8s 1.27 2023-09-08 10:55:11 -04:00
Michael Bolot 7766409968 Adding validation for grb owner label immutability
Adds validation on the grb owner label, allowing crtbs with this label
to use locked roleTemplates, and prventing users from changing this
value or setting it to an invalid grb
2023-09-01 09:24:07 -05:00
Colleen Murphy 16d548f8b9 Add validation and mutation for Projects
New validations:
- prohibit deleting the system project
- check that quota fields are consistent with one another and sufficient
  for existing quota usage

New mutations:
- adds creator-role-bindings annotation
2023-08-16 12:13:21 -07:00
Max Sokolovsky 92c069c2d3 Add validator and mutator tests 2023-07-10 16:17:56 -04:00
Jacob Lindgren 0a8256b1d0 Add Validation on NodeDriver update/delete to prevent machine deletion 2023-06-30 12:12:00 -05:00
Michael Bolot a6c9cc2978 Adding docs for some resources 2023-06-07 12:36:53 -05:00
Michael Bolot 9c124a4e10 Adding docs generation and example docs files
Adds logic to auto-generate a documentation directory and provides two
docs files
2023-06-06 13:48:54 -05:00
Jiaqi Luo 8b5a1f2262 [code gen] add PodSecurityAdmissionConfigurationTemplate 2023-01-03 15:49:47 -07:00
Harrison Affel f4612a1cac add validation for PodSecurityAdmissionConfigurationTemplates 2022-12-21 14:18:08 -05:00
Chad Roberts 5495fda809
Add webhook handler for namespaces to govern PSA label editing 2022-12-19 15:39:51 -05:00
Kevin Joiner 5f4f390a87 Restructered webhook registration.
Webhook request routing is now handled by K8s.
2022-12-15 12:05:58 -05:00
Kevin Joiner dcd0990569 Simplify object decoding from request.
Object decoding was perfroming excessive casting and
had unnecessary dependencies on wrangler.
2022-11-30 08:24:17 -05:00
Michael Bolot 2619688858 Basic boilerplate for some role resolvers 2022-09-19 14:09:20 -04:00
Donnie Adams ac258dcf15 Add mutation/validation webhooks for rke-machine-configs
In order to provide RBAC access to rke-machine-configs created by a user, a
creatorID annotation is added as a mutation webhook on create. In addition, a
validation webhook is added, similar to the provisioning cluster objects, so
that the creatorID annotation can only be updated in certain situations.
2022-01-05 13:37:57 -07:00
Ricardo Weir 8de04965f8 Add feature type 2021-08-25 09:22:41 -07:00
Donnie Adams 42c30d033c Add generation for getting objects from requests
In order to validate objects, the new and old objects, if they exist,
should be pull from the webhook request. This process is identical for
all objects except that the return types would be different. This is a
candidate for code generation, and this generation is added.
2021-07-27 11:06:52 -07:00
Darren Shepherd 0e8491720f Restructure code 2020-11-09 22:03:39 -07:00
Dan Ramich 44bf156c63 Refactor to match current auth 2020-09-29 20:50:00 -06:00
Dan Ramich 3d719a033a Add validation for rancher rbac objects
Problem:
Adding the role restricted-admin in rancher requires validation of
objects through diferent means to validate the user doing the action

Solution:
Add webhook validation to GRBs PRTBs and CRTBs.
GRBs: Validation is done to ensure the GRB being created by the user will
not cause escalated privileges so the user creating the GRB must have at
minimum the permissions they are attempting to grant through the GRB

PRTBs and CRTBs: The same check is done for both. First validation is
only done on the local cluster. Then a subject access review is done for
the requester checking that they have '**' access in the local cluster.
2020-09-25 11:31:29 -06:00