-
Notifications
You must be signed in to change notification settings - Fork 40k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document API convention for PII #21560
Comments
I think I have one reservation and one question:
|
Maybe we need an additional qualification like "non-privileged, non-namespaced"? |
Events without a namespace get stuck into "default". It is ... Sort of
|
I think that would do for me. I can also see trying to avoid exposure unless the reverse lookup capability is absolutely required (like the event case). |
I've been lobbying for field-level ACLs for a while now (there was a relevant issue but I can't find it ATM), which I think might be another way to approach this. I had originally envisioned it as just a write ACL (for example, admin can configure cluster so that only schedulers can write nodeName, or only controllers can write controllerRef) but I guess in theory you could have a read ACL also. In this specific case, you could put image name in the NodeStatus but only make it readable by principals with the needed authorization, such as the scheduler (unauthorized principals would get some sentinel that means insufficient permission). There are definitely some details to work out, like would you have to auth to kubelet or would we just say you have to go through the API server, but I think that if the mechanism existed it might be able to address the problem discussed there. |
Sorry, that comment was supposed to go in #21182, but anyway... |
I have started to appreciate the idea of subresources as the gateway to E.g. user can set Pod.spec.nodeName at creation, but thereafter it has to On Sat, Feb 20, 2016 at 4:33 PM, David Oppenheimer <notifications@github.com
|
Not to rathole on the nodeName thing, but there's really no reason a user should need to set it in normal managed clusters. They should use node affinity (like Borg hostname constraint), which expresses the same intent but gives the scheduler a say. I don't think subresource solves the problem in general. For example, with controllerRef I think we don't want the user to be able to set it at all. What is the downside of per-field ACLs (specified on a per API group/kind basis)? Having to put every write-ACLd field behind a subresource seems tedious, and also doesn't let you forbid writing the field at creation time. |
Not being able to set it at creation time can be controlled independently On Sat, Feb 20, 2016 at 5:17 PM, David Oppenheimer <notifications@github.com
|
IIUC admission control is also invoked on update, so shouldn't we be able to use admission controllers to enforce arbitrary ACL rules on both creation and update? |
My point was to avoid any sort of per-field-per-user ACLing. On Sat, Feb 20, 2016 at 6:08 PM, David Oppenheimer <notifications@github.com
|
This originally was about reads rather than writes. |
/sig api-machinery |
Issues go stale after 90d of inactivity. Prevent issues from auto-closing with an If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or |
/remove-lifecycle stale |
@bgrant0607 any chance of followup? This seems useful to have codified. |
I'd like to come up with a simple rule about PII in the API, such as:
This has come up twice recently.
cc @erictune @smarterclayton @liggitt @deads2k @davidopp
The text was updated successfully, but these errors were encountered: