123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182 |
- /*
- Copyright The Kubernetes Authors.
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- */
- // This file was autogenerated by go-to-protobuf. Do not edit it manually!
- syntax = 'proto2';
- package k8s.io.api.authentication.v1;
- import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto";
- import "k8s.io/apimachinery/pkg/runtime/generated.proto";
- import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto";
- // Package-wide variables from generator "generated".
- option go_package = "v1";
- // BoundObjectReference is a reference to an object that a token is bound to.
- message BoundObjectReference {
- // Kind of the referent. Valid kinds are 'Pod' and 'Secret'.
- // +optional
- optional string kind = 1;
- // API version of the referent.
- // +optional
- optional string aPIVersion = 2;
- // Name of the referent.
- // +optional
- optional string name = 3;
- // UID of the referent.
- // +optional
- optional string uID = 4;
- }
- // ExtraValue masks the value so protobuf can generate
- // +protobuf.nullable=true
- // +protobuf.options.(gogoproto.goproto_stringer)=false
- message ExtraValue {
- // items, if empty, will result in an empty slice
- repeated string items = 1;
- }
- // TokenRequest requests a token for a given service account.
- message TokenRequest {
- // +optional
- optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
- optional TokenRequestSpec spec = 2;
- // +optional
- optional TokenRequestStatus status = 3;
- }
- // TokenRequestSpec contains client provided parameters of a token request.
- message TokenRequestSpec {
- // Audiences are the intendend audiences of the token. A recipient of a
- // token must identitfy themself with an identifier in the list of
- // audiences of the token, and otherwise should reject the token. A
- // token issued for multiple audiences may be used to authenticate
- // against any of the audiences listed but implies a high degree of
- // trust between the target audiences.
- repeated string audiences = 1;
- // ExpirationSeconds is the requested duration of validity of the request. The
- // token issuer may return a token with a different validity duration so a
- // client needs to check the 'expiration' field in a response.
- // +optional
- optional int64 expirationSeconds = 4;
- // BoundObjectRef is a reference to an object that the token will be bound to.
- // The token will only be valid for as long as the bound object exists.
- // NOTE: The API server's TokenReview endpoint will validate the
- // BoundObjectRef, but other audiences may not. Keep ExpirationSeconds
- // small if you want prompt revocation.
- // +optional
- optional BoundObjectReference boundObjectRef = 3;
- }
- // TokenRequestStatus is the result of a token request.
- message TokenRequestStatus {
- // Token is the opaque bearer token.
- optional string token = 1;
- // ExpirationTimestamp is the time of expiration of the returned token.
- optional k8s.io.apimachinery.pkg.apis.meta.v1.Time expirationTimestamp = 2;
- }
- // TokenReview attempts to authenticate a token to a known user.
- // Note: TokenReview requests may be cached by the webhook token authenticator
- // plugin in the kube-apiserver.
- message TokenReview {
- // +optional
- optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
- // Spec holds information about the request being evaluated
- optional TokenReviewSpec spec = 2;
- // Status is filled in by the server and indicates whether the request can be authenticated.
- // +optional
- optional TokenReviewStatus status = 3;
- }
- // TokenReviewSpec is a description of the token authentication request.
- message TokenReviewSpec {
- // Token is the opaque bearer token.
- // +optional
- optional string token = 1;
- // Audiences is a list of the identifiers that the resource server presented
- // with the token identifies as. Audience-aware token authenticators will
- // verify that the token was intended for at least one of the audiences in
- // this list. If no audiences are provided, the audience will default to the
- // audience of the Kubernetes apiserver.
- // +optional
- repeated string audiences = 2;
- }
- // TokenReviewStatus is the result of the token authentication request.
- message TokenReviewStatus {
- // Authenticated indicates that the token was associated with a known user.
- // +optional
- optional bool authenticated = 1;
- // User is the UserInfo associated with the provided token.
- // +optional
- optional UserInfo user = 2;
- // Audiences are audience identifiers chosen by the authenticator that are
- // compatible with both the TokenReview and token. An identifier is any
- // identifier in the intersection of the TokenReviewSpec audiences and the
- // token's audiences. A client of the TokenReview API that sets the
- // spec.audiences field should validate that a compatible audience identifier
- // is returned in the status.audiences field to ensure that the TokenReview
- // server is audience aware. If a TokenReview returns an empty
- // status.audience field where status.authenticated is "true", the token is
- // valid against the audience of the Kubernetes API server.
- // +optional
- repeated string audiences = 4;
- // Error indicates that the token couldn't be checked
- // +optional
- optional string error = 3;
- }
- // UserInfo holds the information about the user needed to implement the
- // user.Info interface.
- message UserInfo {
- // The name that uniquely identifies this user among all active users.
- // +optional
- optional string username = 1;
- // A unique value that identifies this user across time. If this user is
- // deleted and another user by the same name is added, they will have
- // different UIDs.
- // +optional
- optional string uid = 2;
- // The names of groups this user is a part of.
- // +optional
- repeated string groups = 3;
- // Any additional information provided by the authenticator.
- // +optional
- map<string, ExtraValue> extra = 4;
- }
|