-
Notifications
You must be signed in to change notification settings - Fork 39.7k
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
Upstream Openshift Authz #23396
Comments
I would expect there to be little further development on ABAC, with Openshift Authz addressing many more use cases than ABAC. I expect many users would move to Openshift Authz. But, I envision that we would be to keep supporting ABAC indefinitely, and that even clusters with Openshift Authz in them may still ABAC enabled, and that the ABAC file might be used for "bootstrapping" the authz for basic cluster services. |
I'm expecting that the Openshift auth upstreaming would not block on apiserver federation, but would use it when federation is complete. @lavalamp |
My summary of Openshift Authz for people not familiar with it: Key types to be added are:
The |
What api group? |
|
I could also see authorization.policy.openshift.org. Alternatively, if we think anyone other than openshift will use this, a On Thu, Mar 24, 2016 at 5:12 AM, David Eads notifications@github.com
|
I would expect it to get used... it's a nice role-based system... |
That SGTM. |
We should also decide whether k8s groups get suffixed with |
k8s.io please, with unambiguous prefixes matched on the cmd line. |
So what do we do with the fact that the most official ones we have (extensions, autoscaling, batch) all lack that? |
@bgrant0607 how do you feel about making this go straight to Beta when it upstreams since it is based on a well-tested API? |
So, we have:
|
To move everything to The latter seems easier. So, how about if we make it a "graduation to v1 requirement" for In terms of a rule for when to use suffix, we could say:
We don't have any in the latter category AFIACS. |
Would it make sense for this to be called "authorization.openshift.org"? I guess that would not make sense unless all the code was vendored from openshift.org, or if it was in a federated apiserver, which we don't have the ability to do today, right? |
@etune I added priority and milestone based on my understanding. Please feel free to edit as necessary. |
@erictune noticed in the #sig-auth channel that this is a maybe for 1.3. Is there active work for this issue and is the milestone correct? Would love to help out if it's just developer time blocking this. |
yes, you can help @ericchiang. @Dead2K said he will help consult on how best to upstream. |
I will update that issue. |
@erictune sounds good! Maybe you should put that URL in the description for people new to the issue? #23396 (comment) |
At some stage, we will need to create "bootstrap policy" on the cluster. That is, create canned roles, and bindings for the initial administrator account and for controllers. The question is whether to store them as go objects like openshift does or as json or yaml files? Go has the advantage that it is easier to use go code to generate multiple objects programatically. But YAML is more readable to the general populace, and more directly editable by users, and still supports comments. So, I am thinking we'd want to store the bootstrap policy as yaml files in git, and have them added by the add-on manager. That probably means:
Nearly identical discussion here: #24600 (comment) |
We also store the yaml versions of the roles and bindings (though it's the programmatically generated ones, not annotated ones, which would be handy):
we have unit tests that makes sure they stay in sync, which also adds an audit step to any changes to the defaults |
Yeah that sounds good. I figured we'd have a set of reasonable defaults for documentation purposes at the very least. I prefer yaml since it seems less magical, but either way is fine. Do we plan to turn on RBAC by default? (I remember discussion of making ABAC the default #22813.) |
Automatic merge from submit-queue pkg/apis/rbac: Add Openshift authorization API types This PR updates #23396 by adding the Openshift RBAC types to a new API group. Changes from Openshift: * Omission of [ResourceGroups](https://github.com/openshift/origin/blob/458998788337e983fa3e5f9a837664ec00a89204/pkg/authorization/api/types.go#L32-L104) as most of these were Openshift specific. Would like to add the concept back in for a later release of the API. * Omission of IsPersonalSubjectAccessReview as its implementation relied on Openshift capability. * Omission of SubjectAccessReview and ResourceAccessReview types. These are defined in `authorization.k8s.io` ~~API group is named `rbac.authorization.openshift.com` as we omitted the AccessReview stuff and that seemed to be the lest controversial based on conversations in #23396. Would be happy to change it if there's a dislike for the name.~~ Edit: API groups is named `rbac`, sorry misread the original thread. As discussed in #18762, creating a new API group is kind difficult right now and the documentation is very out of date. Got a little help from @soltysh but I'm sure I'm missing some things. Also still need to add validation and a RESTStorage registry interface. Hence "WIP". Any initial comments welcome. cc @erictune @deads2k @sym3tri @philips
Yes. I will update this issue tomorrow with TODO for before the release. |
@erictune I've added a comment[0] to kubernetes/enhancements#2. Do you want me to reproduce that here? I'm a little unfamiliar with that repo and it's role. Which issue is the best place to track progress? |
@erictune I see you've self-assigned this 2 days ago. What exactly is missing here? From #23396 (comment) I guess it's just tests. Is that the case? |
Yes. Waiting for #26753 |
Would you provide an update on the status for the documentation for this feature as well as add any PRs as they are created? Not Started / In Progress / In Review / Done Thanks |
Waiting just for docs: kubernetes/website#643 Adding docs label. |
This is an issue marked v1.3 and kind/documentation. Can you get it fixed up this week? |
We have Docs. We still need default roles, and moving to beta/GA. That will be tracked in kubernetes/enhancements#2. Closing. |
in its own api group(s).
The text was updated successfully, but these errors were encountered: