Skip to content

Conversation

@liggitt
Copy link
Member

@liggitt liggitt commented Feb 7, 2017

Peer to #40709

We have multiple features that depend on this API:

The API has been in use since 1.3 in beta status (v1beta1) with negligible changes:

  • Added a status field for reporting errors evaluating the token

This PR promotes the existing v1beta1 API to v1 with no changes

Because the API does not persist data (it is a query/response-style API), there are no data migration concerns.

This positions us to promote the features that depend on this API to stable in 1.7

cc @kubernetes/sig-auth-api-reviews @kubernetes/sig-auth-misc

The authentication.k8s.io API group was promoted to v1

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Feb 7, 2017
@k8s-reviewable
Copy link

This change is Reviewable

@liggitt liggitt changed the title Promote TokenAccessReview to v1 Promote TokenReview to v1 Feb 7, 2017
@liggitt liggitt added the release-note Denotes a PR that will be considered when it comes time to generate release notes. label Feb 7, 2017
@k8s-github-robot k8s-github-robot added kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API kind/new-api size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Feb 7, 2017
@k8s-github-robot
Copy link

[APPROVALNOTIFIER] This PR is NOT APPROVED

The following people have approved this PR: liggitt

Needs approval from an approver in each of these OWNERS Files:

We suggest the following people:
cc @smarterclayton
You can indicate your approval by writing /approve in a comment
You can cancel your approval by writing /approve cancel in a comment

@liggitt
Copy link
Member Author

liggitt commented Feb 7, 2017

cc @kubernetes/sig-auth-api-reviews @kubernetes/sig-auth-misc @cjcullen @deads2k

@deads2k
Copy link
Contributor

deads2k commented Feb 7, 2017

lgtm

@liggitt liggitt assigned cjcullen and deads2k and unassigned sttts Feb 7, 2017
@liggitt
Copy link
Member Author

liggitt commented Feb 7, 2017

@kubernetes/api-approvers for approval

@liggitt liggitt added area/security sig/auth Categorizes an issue or PR as relevant to SIG Auth. labels Feb 7, 2017
@cjcullen
Copy link
Member

cjcullen commented Feb 7, 2017

Not sure if this needs to be hashed out in this PR, but we were looking at passing through additional headers through the TokenReviewSpec in GKE. It feels wrong and gross, but I'm not convinced there's a nicer way. I talked it through w/ @liggitt earlier today and he told me to bring it up here.

We have a temporary role-grant "token"-ish type thing that we'd like to get passed through to our webhook authorizer, which gets passed in as a "x-goog-iam-authorization-token" header in the request.

Our initial thought was we could extend TokenReview to take an Extra as an input, and then plumb it into the User object (either transparently or with some processing done in the token webhook). Then the authorizer would see the Extra in the SubjectAccessReview, and could use it to make the correct authz decision. This could be done with some kind of --authentication-webhook-extra-headers flag (i.e. we would pass --authentication-webhook-extra-headers="x-goog-iam-authorization-token" to the apiserver).

Another option is to cut out the authn middleman and pass some headers as "extra" Extra to the SubjectAccessReview (w/ a similar --authorization-webhook-extra-headers). I figured the authentication option might be more generic, but I'd love to hear if anybody else would be interested in these.

+@alexblyzn who was looking into this.

@cjcullen
Copy link
Member

cjcullen commented Feb 7, 2017

But I don't think my concerns block this from going to v1. We should be able to do what I want (if we decide it's the right thing to do) without breaking compatibility.

@deads2k
Copy link
Contributor

deads2k commented Feb 7, 2017

I can sort of understand wanting addition information the TokenReview.Spec field (I don't know that I'm fully sold, but as you noted, it could be a follow-on). But the TokenReview can return an Extra for the specified user that is already provided to the authorization webhook.

@smarterclayton
Copy link
Contributor

API looks ok. If there are no further comments from SIG members or others on this thread this is approved and can merge as an API change.

@liggitt
Copy link
Member Author

liggitt commented Feb 9, 2017

hearing none, tagging

@liggitt liggitt added approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm "Looks good to me", indicates that a PR is ready to be merged. labels Feb 9, 2017
@k8s-github-robot
Copy link

Automatic merge from submit-queue (batch tested with PRs 41112, 41201, 41058, 40650, 40926)

@k8s-github-robot k8s-github-robot merged commit f9215e8 into kubernetes:master Feb 10, 2017
@liggitt liggitt deleted the v1-tokenreview branch February 10, 2017 15:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. area/security cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. sig/auth Categorizes an issue or PR as relevant to SIG Auth. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants