go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/tokenserver/api/minter/v1/token_minter.pb.go (about)

     1  // Copyright 2016 The LUCI Authors. All rights reserved.
     2  // Use of this source code is governed under the Apache License, Version 2.0
     3  // that can be found in the LICENSE file.
     4  
     5  // Code generated by protoc-gen-go. DO NOT EDIT.
     6  // versions:
     7  // 	protoc-gen-go v1.31.0
     8  // 	protoc        v3.21.7
     9  // source: go.chromium.org/luci/tokenserver/api/minter/v1/token_minter.proto
    10  
    11  package minter
    12  
    13  import (
    14  	messages "go.chromium.org/luci/server/auth/delegation/messages"
    15  	api "go.chromium.org/luci/tokenserver/api"
    16  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    17  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    18  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    19  	reflect "reflect"
    20  	sync "sync"
    21  )
    22  
    23  const (
    24  	// Verify that this generated code is sufficiently up-to-date.
    25  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    26  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    27  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    28  )
    29  
    30  // Supported ways of singing the request.
    31  type SignatureAlgorithm int32
    32  
    33  const (
    34  	SignatureAlgorithm_UNKNOWN_ALGO    SignatureAlgorithm = 0 // used if the field is not initialized
    35  	SignatureAlgorithm_SHA256_RSA_ALGO SignatureAlgorithm = 1 // matches x509's sha256WithRSAEncryption
    36  )
    37  
    38  // Enum value maps for SignatureAlgorithm.
    39  var (
    40  	SignatureAlgorithm_name = map[int32]string{
    41  		0: "UNKNOWN_ALGO",
    42  		1: "SHA256_RSA_ALGO",
    43  	}
    44  	SignatureAlgorithm_value = map[string]int32{
    45  		"UNKNOWN_ALGO":    0,
    46  		"SHA256_RSA_ALGO": 1,
    47  	}
    48  )
    49  
    50  func (x SignatureAlgorithm) Enum() *SignatureAlgorithm {
    51  	p := new(SignatureAlgorithm)
    52  	*p = x
    53  	return p
    54  }
    55  
    56  func (x SignatureAlgorithm) String() string {
    57  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    58  }
    59  
    60  func (SignatureAlgorithm) Descriptor() protoreflect.EnumDescriptor {
    61  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_enumTypes[0].Descriptor()
    62  }
    63  
    64  func (SignatureAlgorithm) Type() protoreflect.EnumType {
    65  	return &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_enumTypes[0]
    66  }
    67  
    68  func (x SignatureAlgorithm) Number() protoreflect.EnumNumber {
    69  	return protoreflect.EnumNumber(x)
    70  }
    71  
    72  // Deprecated: Use SignatureAlgorithm.Descriptor instead.
    73  func (SignatureAlgorithm) EnumDescriptor() ([]byte, []int) {
    74  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{0}
    75  }
    76  
    77  // Possible kinds of fatal errors.
    78  //
    79  // Non fatal errors are returned as grpc.Internal errors instead.
    80  type ErrorCode int32
    81  
    82  const (
    83  	ErrorCode_SUCCESS                     ErrorCode = 0
    84  	ErrorCode_UNSUPPORTED_SIGNATURE       ErrorCode = 1 // used signature_algorithm is not supported
    85  	ErrorCode_UNSUPPORTED_TOKEN_TYPE      ErrorCode = 2 // requested token_type is not supported
    86  	ErrorCode_BAD_TIMESTAMP               ErrorCode = 3 // issued_at field is wrong
    87  	ErrorCode_BAD_CERTIFICATE_FORMAT      ErrorCode = 4 // malformed or unsupported certificate
    88  	ErrorCode_BAD_SIGNATURE               ErrorCode = 5 // signature doesn't match or can't be verified
    89  	ErrorCode_UNTRUSTED_CERTIFICATE       ErrorCode = 6 // invalid certificate or can't verify it yet
    90  	ErrorCode_BAD_TOKEN_ARGUMENTS         ErrorCode = 7 // FQDN or Scopes are invalid or not whitelisted
    91  	ErrorCode_MACHINE_TOKEN_MINTING_ERROR ErrorCode = 8 // unspecified fatal error when minting a machine token
    92  )
    93  
    94  // Enum value maps for ErrorCode.
    95  var (
    96  	ErrorCode_name = map[int32]string{
    97  		0: "SUCCESS",
    98  		1: "UNSUPPORTED_SIGNATURE",
    99  		2: "UNSUPPORTED_TOKEN_TYPE",
   100  		3: "BAD_TIMESTAMP",
   101  		4: "BAD_CERTIFICATE_FORMAT",
   102  		5: "BAD_SIGNATURE",
   103  		6: "UNTRUSTED_CERTIFICATE",
   104  		7: "BAD_TOKEN_ARGUMENTS",
   105  		8: "MACHINE_TOKEN_MINTING_ERROR",
   106  	}
   107  	ErrorCode_value = map[string]int32{
   108  		"SUCCESS":                     0,
   109  		"UNSUPPORTED_SIGNATURE":       1,
   110  		"UNSUPPORTED_TOKEN_TYPE":      2,
   111  		"BAD_TIMESTAMP":               3,
   112  		"BAD_CERTIFICATE_FORMAT":      4,
   113  		"BAD_SIGNATURE":               5,
   114  		"UNTRUSTED_CERTIFICATE":       6,
   115  		"BAD_TOKEN_ARGUMENTS":         7,
   116  		"MACHINE_TOKEN_MINTING_ERROR": 8,
   117  	}
   118  )
   119  
   120  func (x ErrorCode) Enum() *ErrorCode {
   121  	p := new(ErrorCode)
   122  	*p = x
   123  	return p
   124  }
   125  
   126  func (x ErrorCode) String() string {
   127  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   128  }
   129  
   130  func (ErrorCode) Descriptor() protoreflect.EnumDescriptor {
   131  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_enumTypes[1].Descriptor()
   132  }
   133  
   134  func (ErrorCode) Type() protoreflect.EnumType {
   135  	return &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_enumTypes[1]
   136  }
   137  
   138  func (x ErrorCode) Number() protoreflect.EnumNumber {
   139  	return protoreflect.EnumNumber(x)
   140  }
   141  
   142  // Deprecated: Use ErrorCode.Descriptor instead.
   143  func (ErrorCode) EnumDescriptor() ([]byte, []int) {
   144  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{1}
   145  }
   146  
   147  // Used by MintServiceAccountToken.
   148  type ServiceAccountTokenKind int32
   149  
   150  const (
   151  	ServiceAccountTokenKind_SERVICE_ACCOUNT_TOKEN_UNSPECIFIED  ServiceAccountTokenKind = 0
   152  	ServiceAccountTokenKind_SERVICE_ACCOUNT_TOKEN_ACCESS_TOKEN ServiceAccountTokenKind = 1 // ask for an OAuth2 access token
   153  	ServiceAccountTokenKind_SERVICE_ACCOUNT_TOKEN_ID_TOKEN     ServiceAccountTokenKind = 2 // ask for an OpenID ID token
   154  )
   155  
   156  // Enum value maps for ServiceAccountTokenKind.
   157  var (
   158  	ServiceAccountTokenKind_name = map[int32]string{
   159  		0: "SERVICE_ACCOUNT_TOKEN_UNSPECIFIED",
   160  		1: "SERVICE_ACCOUNT_TOKEN_ACCESS_TOKEN",
   161  		2: "SERVICE_ACCOUNT_TOKEN_ID_TOKEN",
   162  	}
   163  	ServiceAccountTokenKind_value = map[string]int32{
   164  		"SERVICE_ACCOUNT_TOKEN_UNSPECIFIED":  0,
   165  		"SERVICE_ACCOUNT_TOKEN_ACCESS_TOKEN": 1,
   166  		"SERVICE_ACCOUNT_TOKEN_ID_TOKEN":     2,
   167  	}
   168  )
   169  
   170  func (x ServiceAccountTokenKind) Enum() *ServiceAccountTokenKind {
   171  	p := new(ServiceAccountTokenKind)
   172  	*p = x
   173  	return p
   174  }
   175  
   176  func (x ServiceAccountTokenKind) String() string {
   177  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   178  }
   179  
   180  func (ServiceAccountTokenKind) Descriptor() protoreflect.EnumDescriptor {
   181  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_enumTypes[2].Descriptor()
   182  }
   183  
   184  func (ServiceAccountTokenKind) Type() protoreflect.EnumType {
   185  	return &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_enumTypes[2]
   186  }
   187  
   188  func (x ServiceAccountTokenKind) Number() protoreflect.EnumNumber {
   189  	return protoreflect.EnumNumber(x)
   190  }
   191  
   192  // Deprecated: Use ServiceAccountTokenKind.Descriptor instead.
   193  func (ServiceAccountTokenKind) EnumDescriptor() ([]byte, []int) {
   194  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{2}
   195  }
   196  
   197  // MintMachineTokenRequest wraps a serialized and signed MachineTokenRequest
   198  // message.
   199  type MintMachineTokenRequest struct {
   200  	state         protoimpl.MessageState
   201  	sizeCache     protoimpl.SizeCache
   202  	unknownFields protoimpl.UnknownFields
   203  
   204  	// The protobuf-serialized MachineTokenRequest message, signed by the private
   205  	// key that matches MachineTokenRequest.certificate.
   206  	//
   207  	// We have to send it as a byte blob to avoid dealing with possible protobuf
   208  	// serialization inconsistencies when checking the signature.
   209  	SerializedTokenRequest []byte `protobuf:"bytes,1,opt,name=serialized_token_request,json=serializedTokenRequest,proto3" json:"serialized_token_request,omitempty"`
   210  	// The signature of 'serialized_token_parameters' blob.
   211  	//
   212  	// See MachineTokenRequest.signature_algorithm for exact meaning.
   213  	Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
   214  }
   215  
   216  func (x *MintMachineTokenRequest) Reset() {
   217  	*x = MintMachineTokenRequest{}
   218  	if protoimpl.UnsafeEnabled {
   219  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[0]
   220  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   221  		ms.StoreMessageInfo(mi)
   222  	}
   223  }
   224  
   225  func (x *MintMachineTokenRequest) String() string {
   226  	return protoimpl.X.MessageStringOf(x)
   227  }
   228  
   229  func (*MintMachineTokenRequest) ProtoMessage() {}
   230  
   231  func (x *MintMachineTokenRequest) ProtoReflect() protoreflect.Message {
   232  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[0]
   233  	if protoimpl.UnsafeEnabled && x != nil {
   234  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   235  		if ms.LoadMessageInfo() == nil {
   236  			ms.StoreMessageInfo(mi)
   237  		}
   238  		return ms
   239  	}
   240  	return mi.MessageOf(x)
   241  }
   242  
   243  // Deprecated: Use MintMachineTokenRequest.ProtoReflect.Descriptor instead.
   244  func (*MintMachineTokenRequest) Descriptor() ([]byte, []int) {
   245  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{0}
   246  }
   247  
   248  func (x *MintMachineTokenRequest) GetSerializedTokenRequest() []byte {
   249  	if x != nil {
   250  		return x.SerializedTokenRequest
   251  	}
   252  	return nil
   253  }
   254  
   255  func (x *MintMachineTokenRequest) GetSignature() []byte {
   256  	if x != nil {
   257  		return x.Signature
   258  	}
   259  	return nil
   260  }
   261  
   262  // MachineTokenRequest contains the actual request parameters.
   263  type MachineTokenRequest struct {
   264  	state         protoimpl.MessageState
   265  	sizeCache     protoimpl.SizeCache
   266  	unknownFields protoimpl.UnknownFields
   267  
   268  	// The certificate that identifies a caller (as ASN1-serialized blob).
   269  	//
   270  	// It will be used to extract machine FQDN (it's CN of the cert) and CA name
   271  	// to use to check the cert.
   272  	Certificate []byte `protobuf:"bytes,1,opt,name=certificate,proto3" json:"certificate,omitempty"`
   273  	// The signature algorithm used to sign this request.
   274  	//
   275  	// Defines what's in MintMachineTokenRequest.signature field.
   276  	SignatureAlgorithm SignatureAlgorithm `protobuf:"varint,2,opt,name=signature_algorithm,json=signatureAlgorithm,proto3,enum=tokenserver.minter.SignatureAlgorithm" json:"signature_algorithm,omitempty"`
   277  	// Timestamp when this request was created, by the issuer clock.
   278  	IssuedAt *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=issued_at,json=issuedAt,proto3" json:"issued_at,omitempty"`
   279  	// The token type being requested.
   280  	//
   281  	// Defines what fields of the response are set.
   282  	TokenType api.MachineTokenType `protobuf:"varint,4,opt,name=token_type,json=tokenType,proto3,enum=tokenserver.MachineTokenType" json:"token_type,omitempty"`
   283  }
   284  
   285  func (x *MachineTokenRequest) Reset() {
   286  	*x = MachineTokenRequest{}
   287  	if protoimpl.UnsafeEnabled {
   288  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[1]
   289  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   290  		ms.StoreMessageInfo(mi)
   291  	}
   292  }
   293  
   294  func (x *MachineTokenRequest) String() string {
   295  	return protoimpl.X.MessageStringOf(x)
   296  }
   297  
   298  func (*MachineTokenRequest) ProtoMessage() {}
   299  
   300  func (x *MachineTokenRequest) ProtoReflect() protoreflect.Message {
   301  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[1]
   302  	if protoimpl.UnsafeEnabled && x != nil {
   303  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   304  		if ms.LoadMessageInfo() == nil {
   305  			ms.StoreMessageInfo(mi)
   306  		}
   307  		return ms
   308  	}
   309  	return mi.MessageOf(x)
   310  }
   311  
   312  // Deprecated: Use MachineTokenRequest.ProtoReflect.Descriptor instead.
   313  func (*MachineTokenRequest) Descriptor() ([]byte, []int) {
   314  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{1}
   315  }
   316  
   317  func (x *MachineTokenRequest) GetCertificate() []byte {
   318  	if x != nil {
   319  		return x.Certificate
   320  	}
   321  	return nil
   322  }
   323  
   324  func (x *MachineTokenRequest) GetSignatureAlgorithm() SignatureAlgorithm {
   325  	if x != nil {
   326  		return x.SignatureAlgorithm
   327  	}
   328  	return SignatureAlgorithm_UNKNOWN_ALGO
   329  }
   330  
   331  func (x *MachineTokenRequest) GetIssuedAt() *timestamppb.Timestamp {
   332  	if x != nil {
   333  		return x.IssuedAt
   334  	}
   335  	return nil
   336  }
   337  
   338  func (x *MachineTokenRequest) GetTokenType() api.MachineTokenType {
   339  	if x != nil {
   340  		return x.TokenType
   341  	}
   342  	return api.MachineTokenType(0)
   343  }
   344  
   345  // MintMachineTokenResponse is returned by MintMachineToken if the server
   346  // processed the request.
   347  //
   348  // It's returned even if server refuses to mint a token. It contains the error
   349  // details in that case.
   350  type MintMachineTokenResponse struct {
   351  	state         protoimpl.MessageState
   352  	sizeCache     protoimpl.SizeCache
   353  	unknownFields protoimpl.UnknownFields
   354  
   355  	// Possible kinds of fatal errors.
   356  	//
   357  	// Non fatal errors are returned as grpc.Internal errors instead.
   358  	ErrorCode ErrorCode `protobuf:"varint,1,opt,name=error_code,json=errorCode,proto3,enum=tokenserver.minter.ErrorCode" json:"error_code,omitempty"`
   359  	// Optional detailed error message.
   360  	ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
   361  	// On success (SUCCESS error code) contains the produced token.
   362  	TokenResponse *MachineTokenResponse `protobuf:"bytes,3,opt,name=token_response,json=tokenResponse,proto3" json:"token_response,omitempty"`
   363  	// Identifier of the service and its version that produced the response.
   364  	//
   365  	// Set for both successful responses and errors. On success, it is identical
   366  	// to token_response.service_version.
   367  	ServiceVersion string `protobuf:"bytes,4,opt,name=service_version,json=serviceVersion,proto3" json:"service_version,omitempty"`
   368  }
   369  
   370  func (x *MintMachineTokenResponse) Reset() {
   371  	*x = MintMachineTokenResponse{}
   372  	if protoimpl.UnsafeEnabled {
   373  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[2]
   374  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   375  		ms.StoreMessageInfo(mi)
   376  	}
   377  }
   378  
   379  func (x *MintMachineTokenResponse) String() string {
   380  	return protoimpl.X.MessageStringOf(x)
   381  }
   382  
   383  func (*MintMachineTokenResponse) ProtoMessage() {}
   384  
   385  func (x *MintMachineTokenResponse) ProtoReflect() protoreflect.Message {
   386  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[2]
   387  	if protoimpl.UnsafeEnabled && x != nil {
   388  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   389  		if ms.LoadMessageInfo() == nil {
   390  			ms.StoreMessageInfo(mi)
   391  		}
   392  		return ms
   393  	}
   394  	return mi.MessageOf(x)
   395  }
   396  
   397  // Deprecated: Use MintMachineTokenResponse.ProtoReflect.Descriptor instead.
   398  func (*MintMachineTokenResponse) Descriptor() ([]byte, []int) {
   399  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{2}
   400  }
   401  
   402  func (x *MintMachineTokenResponse) GetErrorCode() ErrorCode {
   403  	if x != nil {
   404  		return x.ErrorCode
   405  	}
   406  	return ErrorCode_SUCCESS
   407  }
   408  
   409  func (x *MintMachineTokenResponse) GetErrorMessage() string {
   410  	if x != nil {
   411  		return x.ErrorMessage
   412  	}
   413  	return ""
   414  }
   415  
   416  func (x *MintMachineTokenResponse) GetTokenResponse() *MachineTokenResponse {
   417  	if x != nil {
   418  		return x.TokenResponse
   419  	}
   420  	return nil
   421  }
   422  
   423  func (x *MintMachineTokenResponse) GetServiceVersion() string {
   424  	if x != nil {
   425  		return x.ServiceVersion
   426  	}
   427  	return ""
   428  }
   429  
   430  // MachineTokenResponse contains a token requested by MachineTokenRequest.
   431  type MachineTokenResponse struct {
   432  	state         protoimpl.MessageState
   433  	sizeCache     protoimpl.SizeCache
   434  	unknownFields protoimpl.UnknownFields
   435  
   436  	// Identifier of the service and its version that produced the token.
   437  	//
   438  	// Has the form "<app-id>/<module-version>". Reported to the monitoring by
   439  	// the client. This is _not_ a part of the token.
   440  	ServiceVersion string `protobuf:"bytes,2,opt,name=service_version,json=serviceVersion,proto3" json:"service_version,omitempty"`
   441  	// The generated token.
   442  	//
   443  	// The exact field set here depends on a requested type of the token, see
   444  	// MachineTokenRequest.token_type.
   445  	//
   446  	// Types that are assignable to TokenType:
   447  	//
   448  	//	*MachineTokenResponse_LuciMachineToken
   449  	TokenType isMachineTokenResponse_TokenType `protobuf_oneof:"token_type"`
   450  }
   451  
   452  func (x *MachineTokenResponse) Reset() {
   453  	*x = MachineTokenResponse{}
   454  	if protoimpl.UnsafeEnabled {
   455  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[3]
   456  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   457  		ms.StoreMessageInfo(mi)
   458  	}
   459  }
   460  
   461  func (x *MachineTokenResponse) String() string {
   462  	return protoimpl.X.MessageStringOf(x)
   463  }
   464  
   465  func (*MachineTokenResponse) ProtoMessage() {}
   466  
   467  func (x *MachineTokenResponse) ProtoReflect() protoreflect.Message {
   468  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[3]
   469  	if protoimpl.UnsafeEnabled && x != nil {
   470  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   471  		if ms.LoadMessageInfo() == nil {
   472  			ms.StoreMessageInfo(mi)
   473  		}
   474  		return ms
   475  	}
   476  	return mi.MessageOf(x)
   477  }
   478  
   479  // Deprecated: Use MachineTokenResponse.ProtoReflect.Descriptor instead.
   480  func (*MachineTokenResponse) Descriptor() ([]byte, []int) {
   481  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{3}
   482  }
   483  
   484  func (x *MachineTokenResponse) GetServiceVersion() string {
   485  	if x != nil {
   486  		return x.ServiceVersion
   487  	}
   488  	return ""
   489  }
   490  
   491  func (m *MachineTokenResponse) GetTokenType() isMachineTokenResponse_TokenType {
   492  	if m != nil {
   493  		return m.TokenType
   494  	}
   495  	return nil
   496  }
   497  
   498  func (x *MachineTokenResponse) GetLuciMachineToken() *LuciMachineToken {
   499  	if x, ok := x.GetTokenType().(*MachineTokenResponse_LuciMachineToken); ok {
   500  		return x.LuciMachineToken
   501  	}
   502  	return nil
   503  }
   504  
   505  type isMachineTokenResponse_TokenType interface {
   506  	isMachineTokenResponse_TokenType()
   507  }
   508  
   509  type MachineTokenResponse_LuciMachineToken struct {
   510  	LuciMachineToken *LuciMachineToken `protobuf:"bytes,21,opt,name=luci_machine_token,json=luciMachineToken,proto3,oneof"`
   511  }
   512  
   513  func (*MachineTokenResponse_LuciMachineToken) isMachineTokenResponse_TokenType() {}
   514  
   515  // LuciMachineToken is short lived machine token.
   516  //
   517  // It is understood only by LUCI backends. It is a bearer token, that embeds
   518  // machine hostname and details about the machine certificate it was issued for.
   519  // It has short lifetime (usually 1h).
   520  //
   521  // It is expected to be sent to backends in 'X-Luci-Machine-Token' HTTP header.
   522  //
   523  // The token here is supposed to be treated as an opaque base64-encoded blob,
   524  // but in reality it is serialized MachineTokenEnvelope, see machine_token.proto
   525  // and read the comment there for more info about the token format.
   526  type LuciMachineToken struct {
   527  	state         protoimpl.MessageState
   528  	sizeCache     protoimpl.SizeCache
   529  	unknownFields protoimpl.UnknownFields
   530  
   531  	MachineToken string                 `protobuf:"bytes,1,opt,name=machine_token,json=machineToken,proto3" json:"machine_token,omitempty"` // the actual token
   532  	Expiry       *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=expiry,proto3" json:"expiry,omitempty"`                                 // when the token expires
   533  }
   534  
   535  func (x *LuciMachineToken) Reset() {
   536  	*x = LuciMachineToken{}
   537  	if protoimpl.UnsafeEnabled {
   538  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[4]
   539  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   540  		ms.StoreMessageInfo(mi)
   541  	}
   542  }
   543  
   544  func (x *LuciMachineToken) String() string {
   545  	return protoimpl.X.MessageStringOf(x)
   546  }
   547  
   548  func (*LuciMachineToken) ProtoMessage() {}
   549  
   550  func (x *LuciMachineToken) ProtoReflect() protoreflect.Message {
   551  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[4]
   552  	if protoimpl.UnsafeEnabled && x != nil {
   553  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   554  		if ms.LoadMessageInfo() == nil {
   555  			ms.StoreMessageInfo(mi)
   556  		}
   557  		return ms
   558  	}
   559  	return mi.MessageOf(x)
   560  }
   561  
   562  // Deprecated: Use LuciMachineToken.ProtoReflect.Descriptor instead.
   563  func (*LuciMachineToken) Descriptor() ([]byte, []int) {
   564  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{4}
   565  }
   566  
   567  func (x *LuciMachineToken) GetMachineToken() string {
   568  	if x != nil {
   569  		return x.MachineToken
   570  	}
   571  	return ""
   572  }
   573  
   574  func (x *LuciMachineToken) GetExpiry() *timestamppb.Timestamp {
   575  	if x != nil {
   576  		return x.Expiry
   577  	}
   578  	return nil
   579  }
   580  
   581  // MintDelegationTokenRequest is passed to MintDelegationToken.
   582  type MintDelegationTokenRequest struct {
   583  	state         protoimpl.MessageState
   584  	sizeCache     protoimpl.SizeCache
   585  	unknownFields protoimpl.UnknownFields
   586  
   587  	// Identity whose authority is delegated.
   588  	//
   589  	// A string of the form "user:<email>" or a special token "REQUESTOR" that
   590  	// means to delegate caller's own identity. The token server will check its
   591  	// ACLs to make sure the caller is authorized to impersonate this identity.
   592  	//
   593  	// Required.
   594  	DelegatedIdentity string `protobuf:"bytes,1,opt,name=delegated_identity,json=delegatedIdentity,proto3" json:"delegated_identity,omitempty"`
   595  	// How long the token should be considered valid (in seconds).
   596  	//
   597  	// Default is 3600 sec.
   598  	ValidityDuration int64 `protobuf:"varint,2,opt,name=validity_duration,json=validityDuration,proto3" json:"validity_duration,omitempty"`
   599  	// Who will be able to use the new token.
   600  	//
   601  	// Each item can be an identity string (e.g. "user:<email>"), a "group:<name>"
   602  	// string, special "*" string which means "Any bearer can use the token", or
   603  	// "REQUESTOR" string which means "Whoever is making this call can use the
   604  	// token".
   605  	//
   606  	// This is semantically is a set, the order of elements doesn't matter.
   607  	//
   608  	// Required.
   609  	Audience []string `protobuf:"bytes,3,rep,name=audience,proto3" json:"audience,omitempty"`
   610  	// What services should accept the new token.
   611  	//
   612  	// List of LUCI services (specified as service identities, e.g.
   613  	// "service:app-id" or as https:// root URLs e.g. "https://<host>") that
   614  	// should accept this token. May also contain special "*" string, which
   615  	// means "All LUCI services".
   616  	//
   617  	// This is semantically is a set, the order of elements doesn't matter.
   618  	//
   619  	// Required.
   620  	Services []string `protobuf:"bytes,4,rep,name=services,proto3" json:"services,omitempty"`
   621  	// Optional reason why the token is created.
   622  	//
   623  	// Used only for logging and auditing purposes. Doesn't become part of the
   624  	// token.
   625  	Intent string `protobuf:"bytes,5,opt,name=intent,proto3" json:"intent,omitempty"`
   626  	// Arbitrary key:value pairs embedded into the token by whoever requested it.
   627  	// Convey circumstance of why the token is created.
   628  	//
   629  	// Services that accept the token may use them for additional authorization
   630  	// decisions. Please use extremely carefully, only when you control both sides
   631  	// of the delegation link and can guarantee that services involved understand
   632  	// the tags.
   633  	Tags []string `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags,omitempty"`
   634  }
   635  
   636  func (x *MintDelegationTokenRequest) Reset() {
   637  	*x = MintDelegationTokenRequest{}
   638  	if protoimpl.UnsafeEnabled {
   639  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[5]
   640  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   641  		ms.StoreMessageInfo(mi)
   642  	}
   643  }
   644  
   645  func (x *MintDelegationTokenRequest) String() string {
   646  	return protoimpl.X.MessageStringOf(x)
   647  }
   648  
   649  func (*MintDelegationTokenRequest) ProtoMessage() {}
   650  
   651  func (x *MintDelegationTokenRequest) ProtoReflect() protoreflect.Message {
   652  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[5]
   653  	if protoimpl.UnsafeEnabled && x != nil {
   654  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   655  		if ms.LoadMessageInfo() == nil {
   656  			ms.StoreMessageInfo(mi)
   657  		}
   658  		return ms
   659  	}
   660  	return mi.MessageOf(x)
   661  }
   662  
   663  // Deprecated: Use MintDelegationTokenRequest.ProtoReflect.Descriptor instead.
   664  func (*MintDelegationTokenRequest) Descriptor() ([]byte, []int) {
   665  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{5}
   666  }
   667  
   668  func (x *MintDelegationTokenRequest) GetDelegatedIdentity() string {
   669  	if x != nil {
   670  		return x.DelegatedIdentity
   671  	}
   672  	return ""
   673  }
   674  
   675  func (x *MintDelegationTokenRequest) GetValidityDuration() int64 {
   676  	if x != nil {
   677  		return x.ValidityDuration
   678  	}
   679  	return 0
   680  }
   681  
   682  func (x *MintDelegationTokenRequest) GetAudience() []string {
   683  	if x != nil {
   684  		return x.Audience
   685  	}
   686  	return nil
   687  }
   688  
   689  func (x *MintDelegationTokenRequest) GetServices() []string {
   690  	if x != nil {
   691  		return x.Services
   692  	}
   693  	return nil
   694  }
   695  
   696  func (x *MintDelegationTokenRequest) GetIntent() string {
   697  	if x != nil {
   698  		return x.Intent
   699  	}
   700  	return ""
   701  }
   702  
   703  func (x *MintDelegationTokenRequest) GetTags() []string {
   704  	if x != nil {
   705  		return x.Tags
   706  	}
   707  	return nil
   708  }
   709  
   710  // MintDelegationTokenResponse is returned by MintDelegationToken on success.
   711  //
   712  // Errors are returned via standard gRPC codes.
   713  type MintDelegationTokenResponse struct {
   714  	state         protoimpl.MessageState
   715  	sizeCache     protoimpl.SizeCache
   716  	unknownFields protoimpl.UnknownFields
   717  
   718  	// The actual base64-encoded signed token.
   719  	Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
   720  	// Same data as in 'token' in deserialized form, just for convenience.
   721  	//
   722  	// Mostly for JSON encoding users, since they may not understand proto-encoded
   723  	// tokens.
   724  	DelegationSubtoken *messages.Subtoken `protobuf:"bytes,2,opt,name=delegation_subtoken,json=delegationSubtoken,proto3" json:"delegation_subtoken,omitempty"`
   725  	// Identifier of the service and its version that produced the token.
   726  	//
   727  	// Has the form "<app-id>/<module-version>". This is _not_ part of the token.
   728  	// Used only for logging and monitoring.
   729  	ServiceVersion string `protobuf:"bytes,3,opt,name=service_version,json=serviceVersion,proto3" json:"service_version,omitempty"`
   730  }
   731  
   732  func (x *MintDelegationTokenResponse) Reset() {
   733  	*x = MintDelegationTokenResponse{}
   734  	if protoimpl.UnsafeEnabled {
   735  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[6]
   736  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   737  		ms.StoreMessageInfo(mi)
   738  	}
   739  }
   740  
   741  func (x *MintDelegationTokenResponse) String() string {
   742  	return protoimpl.X.MessageStringOf(x)
   743  }
   744  
   745  func (*MintDelegationTokenResponse) ProtoMessage() {}
   746  
   747  func (x *MintDelegationTokenResponse) ProtoReflect() protoreflect.Message {
   748  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[6]
   749  	if protoimpl.UnsafeEnabled && x != nil {
   750  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   751  		if ms.LoadMessageInfo() == nil {
   752  			ms.StoreMessageInfo(mi)
   753  		}
   754  		return ms
   755  	}
   756  	return mi.MessageOf(x)
   757  }
   758  
   759  // Deprecated: Use MintDelegationTokenResponse.ProtoReflect.Descriptor instead.
   760  func (*MintDelegationTokenResponse) Descriptor() ([]byte, []int) {
   761  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{6}
   762  }
   763  
   764  func (x *MintDelegationTokenResponse) GetToken() string {
   765  	if x != nil {
   766  		return x.Token
   767  	}
   768  	return ""
   769  }
   770  
   771  func (x *MintDelegationTokenResponse) GetDelegationSubtoken() *messages.Subtoken {
   772  	if x != nil {
   773  		return x.DelegationSubtoken
   774  	}
   775  	return nil
   776  }
   777  
   778  func (x *MintDelegationTokenResponse) GetServiceVersion() string {
   779  	if x != nil {
   780  		return x.ServiceVersion
   781  	}
   782  	return ""
   783  }
   784  
   785  // MintProjectTokenRequest is passed to MintProjectToken.
   786  type MintProjectTokenRequest struct {
   787  	state         protoimpl.MessageState
   788  	sizeCache     protoimpl.SizeCache
   789  	unknownFields protoimpl.UnknownFields
   790  
   791  	// Luci project to which this token will be bound.
   792  	LuciProject string `protobuf:"bytes,1,opt,name=luci_project,json=luciProject,proto3" json:"luci_project,omitempty"`
   793  	// Requested OAuth scopes for the token.
   794  	OauthScope []string `protobuf:"bytes,2,rep,name=oauth_scope,json=oauthScope,proto3" json:"oauth_scope,omitempty"`
   795  	// Minimum token validity duration in seconds.
   796  	MinValidityDuration int64 `protobuf:"varint,3,opt,name=min_validity_duration,json=minValidityDuration,proto3" json:"min_validity_duration,omitempty"`
   797  	// Arbitrary key:value pairs describing circumstances of this call.
   798  	//
   799  	// Used only for logging and auditing purposes. Not involved in authorization.
   800  	AuditTags []string `protobuf:"bytes,4,rep,name=audit_tags,json=auditTags,proto3" json:"audit_tags,omitempty"`
   801  }
   802  
   803  func (x *MintProjectTokenRequest) Reset() {
   804  	*x = MintProjectTokenRequest{}
   805  	if protoimpl.UnsafeEnabled {
   806  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[7]
   807  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   808  		ms.StoreMessageInfo(mi)
   809  	}
   810  }
   811  
   812  func (x *MintProjectTokenRequest) String() string {
   813  	return protoimpl.X.MessageStringOf(x)
   814  }
   815  
   816  func (*MintProjectTokenRequest) ProtoMessage() {}
   817  
   818  func (x *MintProjectTokenRequest) ProtoReflect() protoreflect.Message {
   819  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[7]
   820  	if protoimpl.UnsafeEnabled && x != nil {
   821  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   822  		if ms.LoadMessageInfo() == nil {
   823  			ms.StoreMessageInfo(mi)
   824  		}
   825  		return ms
   826  	}
   827  	return mi.MessageOf(x)
   828  }
   829  
   830  // Deprecated: Use MintProjectTokenRequest.ProtoReflect.Descriptor instead.
   831  func (*MintProjectTokenRequest) Descriptor() ([]byte, []int) {
   832  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{7}
   833  }
   834  
   835  func (x *MintProjectTokenRequest) GetLuciProject() string {
   836  	if x != nil {
   837  		return x.LuciProject
   838  	}
   839  	return ""
   840  }
   841  
   842  func (x *MintProjectTokenRequest) GetOauthScope() []string {
   843  	if x != nil {
   844  		return x.OauthScope
   845  	}
   846  	return nil
   847  }
   848  
   849  func (x *MintProjectTokenRequest) GetMinValidityDuration() int64 {
   850  	if x != nil {
   851  		return x.MinValidityDuration
   852  	}
   853  	return 0
   854  }
   855  
   856  func (x *MintProjectTokenRequest) GetAuditTags() []string {
   857  	if x != nil {
   858  		return x.AuditTags
   859  	}
   860  	return nil
   861  }
   862  
   863  // MintProjectTokenResponse is returned by MintProjectToken.
   864  type MintProjectTokenResponse struct {
   865  	state         protoimpl.MessageState
   866  	sizeCache     protoimpl.SizeCache
   867  	unknownFields protoimpl.UnknownFields
   868  
   869  	// Full service account email.
   870  	ServiceAccountEmail string `protobuf:"bytes,1,opt,name=service_account_email,json=serviceAccountEmail,proto3" json:"service_account_email,omitempty"`
   871  	// OAuth access token.
   872  	AccessToken string `protobuf:"bytes,2,opt,name=access_token,json=accessToken,proto3" json:"access_token,omitempty"`
   873  	// Token expiration timestamp.
   874  	Expiry *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
   875  	// Identifier of the service and its version that produced the token.
   876  	//
   877  	// Has the form "<app-id>/<module-version>". Used only for logging and
   878  	// monitoring.
   879  	ServiceVersion string `protobuf:"bytes,4,opt,name=service_version,json=serviceVersion,proto3" json:"service_version,omitempty"`
   880  }
   881  
   882  func (x *MintProjectTokenResponse) Reset() {
   883  	*x = MintProjectTokenResponse{}
   884  	if protoimpl.UnsafeEnabled {
   885  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[8]
   886  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   887  		ms.StoreMessageInfo(mi)
   888  	}
   889  }
   890  
   891  func (x *MintProjectTokenResponse) String() string {
   892  	return protoimpl.X.MessageStringOf(x)
   893  }
   894  
   895  func (*MintProjectTokenResponse) ProtoMessage() {}
   896  
   897  func (x *MintProjectTokenResponse) ProtoReflect() protoreflect.Message {
   898  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[8]
   899  	if protoimpl.UnsafeEnabled && x != nil {
   900  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   901  		if ms.LoadMessageInfo() == nil {
   902  			ms.StoreMessageInfo(mi)
   903  		}
   904  		return ms
   905  	}
   906  	return mi.MessageOf(x)
   907  }
   908  
   909  // Deprecated: Use MintProjectTokenResponse.ProtoReflect.Descriptor instead.
   910  func (*MintProjectTokenResponse) Descriptor() ([]byte, []int) {
   911  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{8}
   912  }
   913  
   914  func (x *MintProjectTokenResponse) GetServiceAccountEmail() string {
   915  	if x != nil {
   916  		return x.ServiceAccountEmail
   917  	}
   918  	return ""
   919  }
   920  
   921  func (x *MintProjectTokenResponse) GetAccessToken() string {
   922  	if x != nil {
   923  		return x.AccessToken
   924  	}
   925  	return ""
   926  }
   927  
   928  func (x *MintProjectTokenResponse) GetExpiry() *timestamppb.Timestamp {
   929  	if x != nil {
   930  		return x.Expiry
   931  	}
   932  	return nil
   933  }
   934  
   935  func (x *MintProjectTokenResponse) GetServiceVersion() string {
   936  	if x != nil {
   937  		return x.ServiceVersion
   938  	}
   939  	return ""
   940  }
   941  
   942  // MintServiceAccountTokenRequest is passed to MintServiceAccountToken.
   943  type MintServiceAccountTokenRequest struct {
   944  	state         protoimpl.MessageState
   945  	sizeCache     protoimpl.SizeCache
   946  	unknownFields protoimpl.UnknownFields
   947  
   948  	// What kind of a token is being requested. Required.
   949  	TokenKind ServiceAccountTokenKind `protobuf:"varint,1,opt,name=token_kind,json=tokenKind,proto3,enum=tokenserver.minter.ServiceAccountTokenKind" json:"token_kind,omitempty"`
   950  	// Email of a service account to grab the token for. Required.
   951  	ServiceAccount string `protobuf:"bytes,2,opt,name=service_account,json=serviceAccount,proto3" json:"service_account,omitempty"`
   952  	// A LUCI realm to use to authorize the call. Required.
   953  	Realm string `protobuf:"bytes,3,opt,name=realm,proto3" json:"realm,omitempty"`
   954  	// A list of scopes the OAuth2 access token should have.
   955  	//
   956  	// Must be set if token_kind is SERVICE_ACCOUNT_TOKEN_ACCESS_TOKEN and must
   957  	// be empty otherwise.
   958  	OauthScope []string `protobuf:"bytes,4,rep,name=oauth_scope,json=oauthScope,proto3" json:"oauth_scope,omitempty"`
   959  	// An audience the ID token should have.
   960  	//
   961  	// Must be set if token_kind is SERVICE_ACCOUNT_TOKEN_ID_TOKEN and must
   962  	// be empty otherwise.
   963  	IdTokenAudience string `protobuf:"bytes,5,opt,name=id_token_audience,json=idTokenAudience,proto3" json:"id_token_audience,omitempty"`
   964  	// Minimally accepted validity duration of the returned token (seconds).
   965  	//
   966  	// The server may return a token that lives longer than this. The maximum is
   967  	// 1h. An attempt to get a token that lives longer than 1h will result in
   968  	// an error.
   969  	//
   970  	// Default is 300 sec.
   971  	MinValidityDuration int64 `protobuf:"varint,6,opt,name=min_validity_duration,json=minValidityDuration,proto3" json:"min_validity_duration,omitempty"`
   972  	// Arbitrary key:value pairs describing circumstances of this call.
   973  	//
   974  	// Used only for logging and auditing purposes. Not involved in authorization.
   975  	AuditTags []string `protobuf:"bytes,7,rep,name=audit_tags,json=auditTags,proto3" json:"audit_tags,omitempty"`
   976  }
   977  
   978  func (x *MintServiceAccountTokenRequest) Reset() {
   979  	*x = MintServiceAccountTokenRequest{}
   980  	if protoimpl.UnsafeEnabled {
   981  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[9]
   982  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   983  		ms.StoreMessageInfo(mi)
   984  	}
   985  }
   986  
   987  func (x *MintServiceAccountTokenRequest) String() string {
   988  	return protoimpl.X.MessageStringOf(x)
   989  }
   990  
   991  func (*MintServiceAccountTokenRequest) ProtoMessage() {}
   992  
   993  func (x *MintServiceAccountTokenRequest) ProtoReflect() protoreflect.Message {
   994  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[9]
   995  	if protoimpl.UnsafeEnabled && x != nil {
   996  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   997  		if ms.LoadMessageInfo() == nil {
   998  			ms.StoreMessageInfo(mi)
   999  		}
  1000  		return ms
  1001  	}
  1002  	return mi.MessageOf(x)
  1003  }
  1004  
  1005  // Deprecated: Use MintServiceAccountTokenRequest.ProtoReflect.Descriptor instead.
  1006  func (*MintServiceAccountTokenRequest) Descriptor() ([]byte, []int) {
  1007  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{9}
  1008  }
  1009  
  1010  func (x *MintServiceAccountTokenRequest) GetTokenKind() ServiceAccountTokenKind {
  1011  	if x != nil {
  1012  		return x.TokenKind
  1013  	}
  1014  	return ServiceAccountTokenKind_SERVICE_ACCOUNT_TOKEN_UNSPECIFIED
  1015  }
  1016  
  1017  func (x *MintServiceAccountTokenRequest) GetServiceAccount() string {
  1018  	if x != nil {
  1019  		return x.ServiceAccount
  1020  	}
  1021  	return ""
  1022  }
  1023  
  1024  func (x *MintServiceAccountTokenRequest) GetRealm() string {
  1025  	if x != nil {
  1026  		return x.Realm
  1027  	}
  1028  	return ""
  1029  }
  1030  
  1031  func (x *MintServiceAccountTokenRequest) GetOauthScope() []string {
  1032  	if x != nil {
  1033  		return x.OauthScope
  1034  	}
  1035  	return nil
  1036  }
  1037  
  1038  func (x *MintServiceAccountTokenRequest) GetIdTokenAudience() string {
  1039  	if x != nil {
  1040  		return x.IdTokenAudience
  1041  	}
  1042  	return ""
  1043  }
  1044  
  1045  func (x *MintServiceAccountTokenRequest) GetMinValidityDuration() int64 {
  1046  	if x != nil {
  1047  		return x.MinValidityDuration
  1048  	}
  1049  	return 0
  1050  }
  1051  
  1052  func (x *MintServiceAccountTokenRequest) GetAuditTags() []string {
  1053  	if x != nil {
  1054  		return x.AuditTags
  1055  	}
  1056  	return nil
  1057  }
  1058  
  1059  // MintServiceAccountTokenResponse is returned by MintServiceAccountToken.
  1060  type MintServiceAccountTokenResponse struct {
  1061  	state         protoimpl.MessageState
  1062  	sizeCache     protoimpl.SizeCache
  1063  	unknownFields protoimpl.UnknownFields
  1064  
  1065  	Token  string                 `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`   // the produced token
  1066  	Expiry *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=expiry,proto3" json:"expiry,omitempty"` // when this token expires
  1067  	// Identifier of the service and its version that produced the token.
  1068  	//
  1069  	// Has the form "<app-id>/<module-version>". Used only for logging and
  1070  	// monitoring.
  1071  	ServiceVersion string `protobuf:"bytes,3,opt,name=service_version,json=serviceVersion,proto3" json:"service_version,omitempty"`
  1072  }
  1073  
  1074  func (x *MintServiceAccountTokenResponse) Reset() {
  1075  	*x = MintServiceAccountTokenResponse{}
  1076  	if protoimpl.UnsafeEnabled {
  1077  		mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[10]
  1078  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1079  		ms.StoreMessageInfo(mi)
  1080  	}
  1081  }
  1082  
  1083  func (x *MintServiceAccountTokenResponse) String() string {
  1084  	return protoimpl.X.MessageStringOf(x)
  1085  }
  1086  
  1087  func (*MintServiceAccountTokenResponse) ProtoMessage() {}
  1088  
  1089  func (x *MintServiceAccountTokenResponse) ProtoReflect() protoreflect.Message {
  1090  	mi := &file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[10]
  1091  	if protoimpl.UnsafeEnabled && x != nil {
  1092  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1093  		if ms.LoadMessageInfo() == nil {
  1094  			ms.StoreMessageInfo(mi)
  1095  		}
  1096  		return ms
  1097  	}
  1098  	return mi.MessageOf(x)
  1099  }
  1100  
  1101  // Deprecated: Use MintServiceAccountTokenResponse.ProtoReflect.Descriptor instead.
  1102  func (*MintServiceAccountTokenResponse) Descriptor() ([]byte, []int) {
  1103  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP(), []int{10}
  1104  }
  1105  
  1106  func (x *MintServiceAccountTokenResponse) GetToken() string {
  1107  	if x != nil {
  1108  		return x.Token
  1109  	}
  1110  	return ""
  1111  }
  1112  
  1113  func (x *MintServiceAccountTokenResponse) GetExpiry() *timestamppb.Timestamp {
  1114  	if x != nil {
  1115  		return x.Expiry
  1116  	}
  1117  	return nil
  1118  }
  1119  
  1120  func (x *MintServiceAccountTokenResponse) GetServiceVersion() string {
  1121  	if x != nil {
  1122  		return x.ServiceVersion
  1123  	}
  1124  	return ""
  1125  }
  1126  
  1127  var File_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto protoreflect.FileDescriptor
  1128  
  1129  var file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDesc = []byte{
  1130  	0x0a, 0x41, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
  1131  	0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76,
  1132  	0x65, 0x72, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2f, 0x76, 0x31,
  1133  	0x2f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x70, 0x72,
  1134  	0x6f, 0x74, 0x6f, 0x12, 0x12, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
  1135  	0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
  1136  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
  1137  	0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x45, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72,
  1138  	0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x73,
  1139  	0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x65, 0x6c, 0x65, 0x67,
  1140  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2f, 0x64,
  1141  	0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  1142  	0x38, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67,
  1143  	0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65,
  1144  	0x72, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x6f,
  1145  	0x6b, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x71, 0x0a, 0x17, 0x4d, 0x69, 0x6e,
  1146  	0x74, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71,
  1147  	0x75, 0x65, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x18, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a,
  1148  	0x65, 0x64, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  1149  	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x16, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a,
  1150  	0x65, 0x64, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c,
  1151  	0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
  1152  	0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x8d, 0x02, 0x0a,
  1153  	0x13, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71,
  1154  	0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
  1155  	0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69,
  1156  	0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x57, 0x0a, 0x13, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74,
  1157  	0x75, 0x72, 0x65, 0x5f, 0x61, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x18, 0x02, 0x20,
  1158  	0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65,
  1159  	0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75,
  1160  	0x72, 0x65, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x52, 0x12, 0x73, 0x69, 0x67,
  1161  	0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x12,
  1162  	0x37, 0x0a, 0x09, 0x69, 0x73, 0x73, 0x75, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01,
  1163  	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  1164  	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08,
  1165  	0x69, 0x73, 0x73, 0x75, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3c, 0x0a, 0x0a, 0x74, 0x6f, 0x6b, 0x65,
  1166  	0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x74,
  1167  	0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x63, 0x68, 0x69,
  1168  	0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x74, 0x6f, 0x6b,
  1169  	0x65, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x22, 0xf7, 0x01, 0x0a,
  1170  	0x18, 0x4d, 0x69, 0x6e, 0x74, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65,
  1171  	0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x0a, 0x65, 0x72, 0x72,
  1172  	0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e,
  1173  	0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74,
  1174  	0x65, 0x72, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x65, 0x72,
  1175  	0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72,
  1176  	0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
  1177  	0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4f, 0x0a, 0x0e,
  1178  	0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x03,
  1179  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76,
  1180  	0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e,
  1181  	0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0d,
  1182  	0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a,
  1183  	0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
  1184  	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x56,
  1185  	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xaf, 0x01, 0x0a, 0x14, 0x4d, 0x61, 0x63, 0x68, 0x69,
  1186  	0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
  1187  	0x27, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
  1188  	0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
  1189  	0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x54, 0x0a, 0x12, 0x6c, 0x75, 0x63, 0x69,
  1190  	0x5f, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x15,
  1191  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76,
  1192  	0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x4c, 0x75, 0x63, 0x69, 0x4d, 0x61,
  1193  	0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x6c, 0x75,
  1194  	0x63, 0x69, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x42, 0x0c,
  1195  	0x0a, 0x0a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x4a, 0x04, 0x08, 0x01,
  1196  	0x10, 0x02, 0x4a, 0x04, 0x08, 0x14, 0x10, 0x15, 0x22, 0x6b, 0x0a, 0x10, 0x4c, 0x75, 0x63, 0x69,
  1197  	0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x23, 0x0a, 0x0d,
  1198  	0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20,
  1199  	0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65,
  1200  	0x6e, 0x12, 0x32, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28,
  1201  	0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  1202  	0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x06, 0x65,
  1203  	0x78, 0x70, 0x69, 0x72, 0x79, 0x22, 0xdc, 0x01, 0x0a, 0x1a, 0x4d, 0x69, 0x6e, 0x74, 0x44, 0x65,
  1204  	0x6c, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71,
  1205  	0x75, 0x65, 0x73, 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65,
  1206  	0x64, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
  1207  	0x52, 0x11, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x64, 0x49, 0x64, 0x65, 0x6e, 0x74,
  1208  	0x69, 0x74, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x69, 0x74, 0x79, 0x5f,
  1209  	0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10,
  1210  	0x76, 0x61, 0x6c, 0x69, 0x64, 0x69, 0x74, 0x79, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1211  	0x12, 0x1a, 0x0a, 0x08, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x03,
  1212  	0x28, 0x09, 0x52, 0x08, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08,
  1213  	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08,
  1214  	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6e, 0x74, 0x65,
  1215  	0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74,
  1216  	0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04,
  1217  	0x74, 0x61, 0x67, 0x73, 0x22, 0xa1, 0x01, 0x0a, 0x1b, 0x4d, 0x69, 0x6e, 0x74, 0x44, 0x65, 0x6c,
  1218  	0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70,
  1219  	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20,
  1220  	0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x43, 0x0a, 0x13, 0x64, 0x65,
  1221  	0x6c, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x75, 0x62, 0x74, 0x6f, 0x6b, 0x65,
  1222  	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
  1223  	0x65, 0x73, 0x2e, 0x53, 0x75, 0x62, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x12, 0x64, 0x65, 0x6c,
  1224  	0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x62, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12,
  1225  	0x27, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
  1226  	0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
  1227  	0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xb0, 0x01, 0x0a, 0x17, 0x4d, 0x69, 0x6e,
  1228  	0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71,
  1229  	0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x75, 0x63, 0x69, 0x5f, 0x70, 0x72, 0x6f,
  1230  	0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x75, 0x63, 0x69,
  1231  	0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x61, 0x75, 0x74, 0x68,
  1232  	0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x61,
  1233  	0x75, 0x74, 0x68, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f,
  1234  	0x76, 0x61, 0x6c, 0x69, 0x64, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
  1235  	0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x69,
  1236  	0x64, 0x69, 0x74, 0x79, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a,
  1237  	0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09,
  1238  	0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x54, 0x61, 0x67, 0x73, 0x22, 0xce, 0x01, 0x0a, 0x18,
  1239  	0x4d, 0x69, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
  1240  	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x65, 0x72, 0x76,
  1241  	0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69,
  1242  	0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
  1243  	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x21, 0x0a, 0x0c,
  1244  	0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01,
  1245  	0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12,
  1246  	0x32, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1247  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  1248  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x06, 0x65, 0x78, 0x70,
  1249  	0x69, 0x72, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x76,
  1250  	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65,
  1251  	0x72, 0x76, 0x69, 0x63, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xcb, 0x02, 0x0a,
  1252  	0x1e, 0x4d, 0x69, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f,
  1253  	0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
  1254  	0x4a, 0x0a, 0x0a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20,
  1255  	0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65,
  1256  	0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
  1257  	0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x4b, 0x69, 0x6e, 0x64,
  1258  	0x52, 0x09, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x73,
  1259  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02,
  1260  	0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63,
  1261  	0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x61, 0x6c, 0x6d, 0x18, 0x03, 0x20,
  1262  	0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x61, 0x6c, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x61,
  1263  	0x75, 0x74, 0x68, 0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52,
  1264  	0x0a, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x69,
  1265  	0x64, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65,
  1266  	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x64, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x41,
  1267  	0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x6d, 0x69, 0x6e, 0x5f, 0x76,
  1268  	0x61, 0x6c, 0x69, 0x64, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1269  	0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x69, 0x64,
  1270  	0x69, 0x74, 0x79, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61,
  1271  	0x75, 0x64, 0x69, 0x74, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52,
  1272  	0x09, 0x61, 0x75, 0x64, 0x69, 0x74, 0x54, 0x61, 0x67, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x1f, 0x4d,
  1273  	0x69, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
  1274  	0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14,
  1275  	0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74,
  1276  	0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x32, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x02,
  1277  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  1278  	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
  1279  	0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76,
  1280  	0x69, 0x63, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
  1281  	0x09, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
  1282  	0x6e, 0x2a, 0x3b, 0x0a, 0x12, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6c,
  1283  	0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x12, 0x10, 0x0a, 0x0c, 0x55, 0x4e, 0x4b, 0x4e, 0x4f,
  1284  	0x57, 0x4e, 0x5f, 0x41, 0x4c, 0x47, 0x4f, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x48, 0x41,
  1285  	0x32, 0x35, 0x36, 0x5f, 0x52, 0x53, 0x41, 0x5f, 0x41, 0x4c, 0x47, 0x4f, 0x10, 0x01, 0x2a, 0xe6,
  1286  	0x01, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07,
  1287  	0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x55, 0x4e, 0x53,
  1288  	0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x5f, 0x53, 0x49, 0x47, 0x4e, 0x41, 0x54, 0x55,
  1289  	0x52, 0x45, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x55, 0x4e, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52,
  1290  	0x54, 0x45, 0x44, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x02,
  1291  	0x12, 0x11, 0x0a, 0x0d, 0x42, 0x41, 0x44, 0x5f, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d,
  1292  	0x50, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x41, 0x44, 0x5f, 0x43, 0x45, 0x52, 0x54, 0x49,
  1293  	0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x10, 0x04, 0x12,
  1294  	0x11, 0x0a, 0x0d, 0x42, 0x41, 0x44, 0x5f, 0x53, 0x49, 0x47, 0x4e, 0x41, 0x54, 0x55, 0x52, 0x45,
  1295  	0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x55, 0x4e, 0x54, 0x52, 0x55, 0x53, 0x54, 0x45, 0x44, 0x5f,
  1296  	0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x10, 0x06, 0x12, 0x17, 0x0a,
  1297  	0x13, 0x42, 0x41, 0x44, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x41, 0x52, 0x47, 0x55, 0x4d,
  1298  	0x45, 0x4e, 0x54, 0x53, 0x10, 0x07, 0x12, 0x1f, 0x0a, 0x1b, 0x4d, 0x41, 0x43, 0x48, 0x49, 0x4e,
  1299  	0x45, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x4d, 0x49, 0x4e, 0x54, 0x49, 0x4e, 0x47, 0x5f,
  1300  	0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x08, 0x2a, 0x8c, 0x01, 0x0a, 0x17, 0x53, 0x65, 0x72, 0x76,
  1301  	0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x4b,
  1302  	0x69, 0x6e, 0x64, 0x12, 0x25, 0x0a, 0x21, 0x53, 0x45, 0x52, 0x56, 0x49, 0x43, 0x45, 0x5f, 0x41,
  1303  	0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x55, 0x4e, 0x53,
  1304  	0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x53, 0x45,
  1305  	0x52, 0x56, 0x49, 0x43, 0x45, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x4f,
  1306  	0x4b, 0x45, 0x4e, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e,
  1307  	0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x45, 0x52, 0x56, 0x49, 0x43, 0x45, 0x5f, 0x41, 0x43,
  1308  	0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x49, 0x44, 0x5f, 0x54,
  1309  	0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x02, 0x32, 0xe8, 0x03, 0x0a, 0x0b, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
  1310  	0x4d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x6d, 0x0a, 0x10, 0x4d, 0x69, 0x6e, 0x74, 0x4d, 0x61,
  1311  	0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x2b, 0x2e, 0x74, 0x6f, 0x6b,
  1312  	0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e,
  1313  	0x4d, 0x69, 0x6e, 0x74, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
  1314  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73,
  1315  	0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x4d, 0x69, 0x6e,
  1316  	0x74, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73,
  1317  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x76, 0x0a, 0x13, 0x4d, 0x69, 0x6e, 0x74, 0x44, 0x65, 0x6c,
  1318  	0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x2e, 0x2e, 0x74,
  1319  	0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65,
  1320  	0x72, 0x2e, 0x4d, 0x69, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1321  	0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x74,
  1322  	0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65,
  1323  	0x72, 0x2e, 0x4d, 0x69, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1324  	0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6d, 0x0a,
  1325  	0x10, 0x4d, 0x69, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x6f, 0x6b, 0x65,
  1326  	0x6e, 0x12, 0x2b, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e,
  1327  	0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x4d, 0x69, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65,
  1328  	0x63, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c,
  1329  	0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e,
  1330  	0x74, 0x65, 0x72, 0x2e, 0x4d, 0x69, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54,
  1331  	0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x82, 0x01, 0x0a,
  1332  	0x17, 0x4d, 0x69, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f,
  1333  	0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x32, 0x2e, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
  1334  	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, 0x4d, 0x69,
  1335  	0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
  1336  	0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x74,
  1337  	0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x74, 0x65,
  1338  	0x72, 0x2e, 0x4d, 0x69, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63,
  1339  	0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  1340  	0x65, 0x42, 0x37, 0x5a, 0x35, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
  1341  	0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73,
  1342  	0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72,
  1343  	0x2f, 0x76, 0x31, 0x3b, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
  1344  	0x6f, 0x33,
  1345  }
  1346  
  1347  var (
  1348  	file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescOnce sync.Once
  1349  	file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescData = file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDesc
  1350  )
  1351  
  1352  func file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescGZIP() []byte {
  1353  	file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescOnce.Do(func() {
  1354  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescData)
  1355  	})
  1356  	return file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDescData
  1357  }
  1358  
  1359  var file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
  1360  var file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
  1361  var file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_goTypes = []interface{}{
  1362  	(SignatureAlgorithm)(0),                 // 0: tokenserver.minter.SignatureAlgorithm
  1363  	(ErrorCode)(0),                          // 1: tokenserver.minter.ErrorCode
  1364  	(ServiceAccountTokenKind)(0),            // 2: tokenserver.minter.ServiceAccountTokenKind
  1365  	(*MintMachineTokenRequest)(nil),         // 3: tokenserver.minter.MintMachineTokenRequest
  1366  	(*MachineTokenRequest)(nil),             // 4: tokenserver.minter.MachineTokenRequest
  1367  	(*MintMachineTokenResponse)(nil),        // 5: tokenserver.minter.MintMachineTokenResponse
  1368  	(*MachineTokenResponse)(nil),            // 6: tokenserver.minter.MachineTokenResponse
  1369  	(*LuciMachineToken)(nil),                // 7: tokenserver.minter.LuciMachineToken
  1370  	(*MintDelegationTokenRequest)(nil),      // 8: tokenserver.minter.MintDelegationTokenRequest
  1371  	(*MintDelegationTokenResponse)(nil),     // 9: tokenserver.minter.MintDelegationTokenResponse
  1372  	(*MintProjectTokenRequest)(nil),         // 10: tokenserver.minter.MintProjectTokenRequest
  1373  	(*MintProjectTokenResponse)(nil),        // 11: tokenserver.minter.MintProjectTokenResponse
  1374  	(*MintServiceAccountTokenRequest)(nil),  // 12: tokenserver.minter.MintServiceAccountTokenRequest
  1375  	(*MintServiceAccountTokenResponse)(nil), // 13: tokenserver.minter.MintServiceAccountTokenResponse
  1376  	(*timestamppb.Timestamp)(nil),           // 14: google.protobuf.Timestamp
  1377  	(api.MachineTokenType)(0),               // 15: tokenserver.MachineTokenType
  1378  	(*messages.Subtoken)(nil),               // 16: messages.Subtoken
  1379  }
  1380  var file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_depIdxs = []int32{
  1381  	0,  // 0: tokenserver.minter.MachineTokenRequest.signature_algorithm:type_name -> tokenserver.minter.SignatureAlgorithm
  1382  	14, // 1: tokenserver.minter.MachineTokenRequest.issued_at:type_name -> google.protobuf.Timestamp
  1383  	15, // 2: tokenserver.minter.MachineTokenRequest.token_type:type_name -> tokenserver.MachineTokenType
  1384  	1,  // 3: tokenserver.minter.MintMachineTokenResponse.error_code:type_name -> tokenserver.minter.ErrorCode
  1385  	6,  // 4: tokenserver.minter.MintMachineTokenResponse.token_response:type_name -> tokenserver.minter.MachineTokenResponse
  1386  	7,  // 5: tokenserver.minter.MachineTokenResponse.luci_machine_token:type_name -> tokenserver.minter.LuciMachineToken
  1387  	14, // 6: tokenserver.minter.LuciMachineToken.expiry:type_name -> google.protobuf.Timestamp
  1388  	16, // 7: tokenserver.minter.MintDelegationTokenResponse.delegation_subtoken:type_name -> messages.Subtoken
  1389  	14, // 8: tokenserver.minter.MintProjectTokenResponse.expiry:type_name -> google.protobuf.Timestamp
  1390  	2,  // 9: tokenserver.minter.MintServiceAccountTokenRequest.token_kind:type_name -> tokenserver.minter.ServiceAccountTokenKind
  1391  	14, // 10: tokenserver.minter.MintServiceAccountTokenResponse.expiry:type_name -> google.protobuf.Timestamp
  1392  	3,  // 11: tokenserver.minter.TokenMinter.MintMachineToken:input_type -> tokenserver.minter.MintMachineTokenRequest
  1393  	8,  // 12: tokenserver.minter.TokenMinter.MintDelegationToken:input_type -> tokenserver.minter.MintDelegationTokenRequest
  1394  	10, // 13: tokenserver.minter.TokenMinter.MintProjectToken:input_type -> tokenserver.minter.MintProjectTokenRequest
  1395  	12, // 14: tokenserver.minter.TokenMinter.MintServiceAccountToken:input_type -> tokenserver.minter.MintServiceAccountTokenRequest
  1396  	5,  // 15: tokenserver.minter.TokenMinter.MintMachineToken:output_type -> tokenserver.minter.MintMachineTokenResponse
  1397  	9,  // 16: tokenserver.minter.TokenMinter.MintDelegationToken:output_type -> tokenserver.minter.MintDelegationTokenResponse
  1398  	11, // 17: tokenserver.minter.TokenMinter.MintProjectToken:output_type -> tokenserver.minter.MintProjectTokenResponse
  1399  	13, // 18: tokenserver.minter.TokenMinter.MintServiceAccountToken:output_type -> tokenserver.minter.MintServiceAccountTokenResponse
  1400  	15, // [15:19] is the sub-list for method output_type
  1401  	11, // [11:15] is the sub-list for method input_type
  1402  	11, // [11:11] is the sub-list for extension type_name
  1403  	11, // [11:11] is the sub-list for extension extendee
  1404  	0,  // [0:11] is the sub-list for field type_name
  1405  }
  1406  
  1407  func init() { file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_init() }
  1408  func file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_init() {
  1409  	if File_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto != nil {
  1410  		return
  1411  	}
  1412  	if !protoimpl.UnsafeEnabled {
  1413  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1414  			switch v := v.(*MintMachineTokenRequest); i {
  1415  			case 0:
  1416  				return &v.state
  1417  			case 1:
  1418  				return &v.sizeCache
  1419  			case 2:
  1420  				return &v.unknownFields
  1421  			default:
  1422  				return nil
  1423  			}
  1424  		}
  1425  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1426  			switch v := v.(*MachineTokenRequest); i {
  1427  			case 0:
  1428  				return &v.state
  1429  			case 1:
  1430  				return &v.sizeCache
  1431  			case 2:
  1432  				return &v.unknownFields
  1433  			default:
  1434  				return nil
  1435  			}
  1436  		}
  1437  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1438  			switch v := v.(*MintMachineTokenResponse); i {
  1439  			case 0:
  1440  				return &v.state
  1441  			case 1:
  1442  				return &v.sizeCache
  1443  			case 2:
  1444  				return &v.unknownFields
  1445  			default:
  1446  				return nil
  1447  			}
  1448  		}
  1449  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1450  			switch v := v.(*MachineTokenResponse); i {
  1451  			case 0:
  1452  				return &v.state
  1453  			case 1:
  1454  				return &v.sizeCache
  1455  			case 2:
  1456  				return &v.unknownFields
  1457  			default:
  1458  				return nil
  1459  			}
  1460  		}
  1461  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1462  			switch v := v.(*LuciMachineToken); i {
  1463  			case 0:
  1464  				return &v.state
  1465  			case 1:
  1466  				return &v.sizeCache
  1467  			case 2:
  1468  				return &v.unknownFields
  1469  			default:
  1470  				return nil
  1471  			}
  1472  		}
  1473  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1474  			switch v := v.(*MintDelegationTokenRequest); i {
  1475  			case 0:
  1476  				return &v.state
  1477  			case 1:
  1478  				return &v.sizeCache
  1479  			case 2:
  1480  				return &v.unknownFields
  1481  			default:
  1482  				return nil
  1483  			}
  1484  		}
  1485  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1486  			switch v := v.(*MintDelegationTokenResponse); i {
  1487  			case 0:
  1488  				return &v.state
  1489  			case 1:
  1490  				return &v.sizeCache
  1491  			case 2:
  1492  				return &v.unknownFields
  1493  			default:
  1494  				return nil
  1495  			}
  1496  		}
  1497  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1498  			switch v := v.(*MintProjectTokenRequest); i {
  1499  			case 0:
  1500  				return &v.state
  1501  			case 1:
  1502  				return &v.sizeCache
  1503  			case 2:
  1504  				return &v.unknownFields
  1505  			default:
  1506  				return nil
  1507  			}
  1508  		}
  1509  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1510  			switch v := v.(*MintProjectTokenResponse); i {
  1511  			case 0:
  1512  				return &v.state
  1513  			case 1:
  1514  				return &v.sizeCache
  1515  			case 2:
  1516  				return &v.unknownFields
  1517  			default:
  1518  				return nil
  1519  			}
  1520  		}
  1521  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1522  			switch v := v.(*MintServiceAccountTokenRequest); i {
  1523  			case 0:
  1524  				return &v.state
  1525  			case 1:
  1526  				return &v.sizeCache
  1527  			case 2:
  1528  				return &v.unknownFields
  1529  			default:
  1530  				return nil
  1531  			}
  1532  		}
  1533  		file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  1534  			switch v := v.(*MintServiceAccountTokenResponse); i {
  1535  			case 0:
  1536  				return &v.state
  1537  			case 1:
  1538  				return &v.sizeCache
  1539  			case 2:
  1540  				return &v.unknownFields
  1541  			default:
  1542  				return nil
  1543  			}
  1544  		}
  1545  	}
  1546  	file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes[3].OneofWrappers = []interface{}{
  1547  		(*MachineTokenResponse_LuciMachineToken)(nil),
  1548  	}
  1549  	type x struct{}
  1550  	out := protoimpl.TypeBuilder{
  1551  		File: protoimpl.DescBuilder{
  1552  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1553  			RawDescriptor: file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDesc,
  1554  			NumEnums:      3,
  1555  			NumMessages:   11,
  1556  			NumExtensions: 0,
  1557  			NumServices:   1,
  1558  		},
  1559  		GoTypes:           file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_goTypes,
  1560  		DependencyIndexes: file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_depIdxs,
  1561  		EnumInfos:         file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_enumTypes,
  1562  		MessageInfos:      file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_msgTypes,
  1563  	}.Build()
  1564  	File_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto = out.File
  1565  	file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_rawDesc = nil
  1566  	file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_goTypes = nil
  1567  	file_go_chromium_org_luci_tokenserver_api_minter_v1_token_minter_proto_depIdxs = nil
  1568  }