go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/server/auth/service/protocol/replication.pb.go (about)

     1  // Copyright 2014 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  // Messages for Primary <-> Replica auth DB replication protocol.
     6  // Used from both Primary side (i.e. auth_service) and Replica side (any service
     7  // that uses auth component).
     8  
     9  // Code generated by protoc-gen-go. DO NOT EDIT.
    10  // versions:
    11  // 	protoc-gen-go v1.31.0
    12  // 	protoc        v3.21.7
    13  // source: go.chromium.org/luci/server/auth/service/protocol/components/auth/proto/replication.proto
    14  
    15  package protocol
    16  
    17  import (
    18  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    19  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    20  	reflect "reflect"
    21  	sync "sync"
    22  )
    23  
    24  const (
    25  	// Verify that this generated code is sufficiently up-to-date.
    26  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    27  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    28  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    29  )
    30  
    31  // Status codes.
    32  type ServiceLinkResponse_Status int32
    33  
    34  const (
    35  	// The service is now linked and primary will be pushing updates to it.
    36  	ServiceLinkResponse_SUCCESS ServiceLinkResponse_Status = 0
    37  	// Primary do not replies.
    38  	ServiceLinkResponse_TRANSPORT_ERROR ServiceLinkResponse_Status = 1
    39  	// Linking ticket is invalid or expired.
    40  	ServiceLinkResponse_BAD_TICKET ServiceLinkResponse_Status = 2
    41  	// Linking ticket was generated for another app, not the calling one.
    42  	ServiceLinkResponse_AUTH_ERROR ServiceLinkResponse_Status = 3
    43  )
    44  
    45  // Enum value maps for ServiceLinkResponse_Status.
    46  var (
    47  	ServiceLinkResponse_Status_name = map[int32]string{
    48  		0: "SUCCESS",
    49  		1: "TRANSPORT_ERROR",
    50  		2: "BAD_TICKET",
    51  		3: "AUTH_ERROR",
    52  	}
    53  	ServiceLinkResponse_Status_value = map[string]int32{
    54  		"SUCCESS":         0,
    55  		"TRANSPORT_ERROR": 1,
    56  		"BAD_TICKET":      2,
    57  		"AUTH_ERROR":      3,
    58  	}
    59  )
    60  
    61  func (x ServiceLinkResponse_Status) Enum() *ServiceLinkResponse_Status {
    62  	p := new(ServiceLinkResponse_Status)
    63  	*p = x
    64  	return p
    65  }
    66  
    67  func (x ServiceLinkResponse_Status) String() string {
    68  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    69  }
    70  
    71  func (ServiceLinkResponse_Status) Descriptor() protoreflect.EnumDescriptor {
    72  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_enumTypes[0].Descriptor()
    73  }
    74  
    75  func (ServiceLinkResponse_Status) Type() protoreflect.EnumType {
    76  	return &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_enumTypes[0]
    77  }
    78  
    79  func (x ServiceLinkResponse_Status) Number() protoreflect.EnumNumber {
    80  	return protoreflect.EnumNumber(x)
    81  }
    82  
    83  // Deprecated: Use ServiceLinkResponse_Status.Descriptor instead.
    84  func (ServiceLinkResponse_Status) EnumDescriptor() ([]byte, []int) {
    85  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{2, 0}
    86  }
    87  
    88  // Overall status of the operation.
    89  type ReplicationPushResponse_Status int32
    90  
    91  const (
    92  	// Replica accepted the push request and updated its copy of auth db.
    93  	ReplicationPushResponse_APPLIED ReplicationPushResponse_Status = 0
    94  	// Replica has a newer version of AuthDB, the push request is skipped.
    95  	ReplicationPushResponse_SKIPPED ReplicationPushResponse_Status = 1
    96  	// Non fatal error happened, the push request may be retried.
    97  	ReplicationPushResponse_TRANSIENT_ERROR ReplicationPushResponse_Status = 2
    98  	// Fatal error happened, the push request must not be retried.
    99  	ReplicationPushResponse_FATAL_ERROR ReplicationPushResponse_Status = 3
   100  )
   101  
   102  // Enum value maps for ReplicationPushResponse_Status.
   103  var (
   104  	ReplicationPushResponse_Status_name = map[int32]string{
   105  		0: "APPLIED",
   106  		1: "SKIPPED",
   107  		2: "TRANSIENT_ERROR",
   108  		3: "FATAL_ERROR",
   109  	}
   110  	ReplicationPushResponse_Status_value = map[string]int32{
   111  		"APPLIED":         0,
   112  		"SKIPPED":         1,
   113  		"TRANSIENT_ERROR": 2,
   114  		"FATAL_ERROR":     3,
   115  	}
   116  )
   117  
   118  func (x ReplicationPushResponse_Status) Enum() *ReplicationPushResponse_Status {
   119  	p := new(ReplicationPushResponse_Status)
   120  	*p = x
   121  	return p
   122  }
   123  
   124  func (x ReplicationPushResponse_Status) String() string {
   125  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   126  }
   127  
   128  func (ReplicationPushResponse_Status) Descriptor() protoreflect.EnumDescriptor {
   129  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_enumTypes[1].Descriptor()
   130  }
   131  
   132  func (ReplicationPushResponse_Status) Type() protoreflect.EnumType {
   133  	return &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_enumTypes[1]
   134  }
   135  
   136  func (x ReplicationPushResponse_Status) Number() protoreflect.EnumNumber {
   137  	return protoreflect.EnumNumber(x)
   138  }
   139  
   140  // Deprecated: Use ReplicationPushResponse_Status.Descriptor instead.
   141  func (ReplicationPushResponse_Status) EnumDescriptor() ([]byte, []int) {
   142  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{11, 0}
   143  }
   144  
   145  // Error codes, for TRANSIENT_ERROR and FATAL_ERROR statuses.
   146  type ReplicationPushResponse_ErrorCode int32
   147  
   148  const (
   149  	// Some unrecognized error.
   150  	ReplicationPushResponse_ERROR_UNKNOWN ReplicationPushResponse_ErrorCode = 0
   151  	// Trying to push an update to service that is not a replica.
   152  	ReplicationPushResponse_NOT_A_REPLICA ReplicationPushResponse_ErrorCode = 1
   153  	// Replica doesn't know about the service that pushing the update.
   154  	ReplicationPushResponse_FORBIDDEN ReplicationPushResponse_ErrorCode = 2
   155  	// Signature headers are missing.
   156  	ReplicationPushResponse_MISSING_SIGNATURE ReplicationPushResponse_ErrorCode = 3
   157  	// Signature is not valid.
   158  	ReplicationPushResponse_BAD_SIGNATURE ReplicationPushResponse_ErrorCode = 4
   159  	// Format of the request is not valid.
   160  	ReplicationPushResponse_BAD_REQUEST ReplicationPushResponse_ErrorCode = 5
   161  )
   162  
   163  // Enum value maps for ReplicationPushResponse_ErrorCode.
   164  var (
   165  	ReplicationPushResponse_ErrorCode_name = map[int32]string{
   166  		0: "ERROR_UNKNOWN",
   167  		1: "NOT_A_REPLICA",
   168  		2: "FORBIDDEN",
   169  		3: "MISSING_SIGNATURE",
   170  		4: "BAD_SIGNATURE",
   171  		5: "BAD_REQUEST",
   172  	}
   173  	ReplicationPushResponse_ErrorCode_value = map[string]int32{
   174  		"ERROR_UNKNOWN":     0,
   175  		"NOT_A_REPLICA":     1,
   176  		"FORBIDDEN":         2,
   177  		"MISSING_SIGNATURE": 3,
   178  		"BAD_SIGNATURE":     4,
   179  		"BAD_REQUEST":       5,
   180  	}
   181  )
   182  
   183  func (x ReplicationPushResponse_ErrorCode) Enum() *ReplicationPushResponse_ErrorCode {
   184  	p := new(ReplicationPushResponse_ErrorCode)
   185  	*p = x
   186  	return p
   187  }
   188  
   189  func (x ReplicationPushResponse_ErrorCode) String() string {
   190  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   191  }
   192  
   193  func (ReplicationPushResponse_ErrorCode) Descriptor() protoreflect.EnumDescriptor {
   194  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_enumTypes[2].Descriptor()
   195  }
   196  
   197  func (ReplicationPushResponse_ErrorCode) Type() protoreflect.EnumType {
   198  	return &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_enumTypes[2]
   199  }
   200  
   201  func (x ReplicationPushResponse_ErrorCode) Number() protoreflect.EnumNumber {
   202  	return protoreflect.EnumNumber(x)
   203  }
   204  
   205  // Deprecated: Use ReplicationPushResponse_ErrorCode.Descriptor instead.
   206  func (ReplicationPushResponse_ErrorCode) EnumDescriptor() ([]byte, []int) {
   207  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{11, 1}
   208  }
   209  
   210  // Generated by Primary, passed to Replica to initiate linking process.
   211  type ServiceLinkTicket struct {
   212  	state         protoimpl.MessageState
   213  	sizeCache     protoimpl.SizeCache
   214  	unknownFields protoimpl.UnknownFields
   215  
   216  	// GAE application ID of Primary that generated this ticket. Replica will send
   217  	// ServiceLinkRequest to this service when it processes the ticket.
   218  	PrimaryId string `protobuf:"bytes,1,opt,name=primary_id,json=primaryId,proto3" json:"primary_id,omitempty"`
   219  	// URL to the root page of a primary service, i.e. https://<...>.appspot.com.
   220  	// Useful when testing on dev appserver and on non-default version.
   221  	PrimaryUrl string `protobuf:"bytes,2,opt,name=primary_url,json=primaryUrl,proto3" json:"primary_url,omitempty"`
   222  	// Identity of a user that generated this ticket.
   223  	GeneratedBy string `protobuf:"bytes,3,opt,name=generated_by,json=generatedBy,proto3" json:"generated_by,omitempty"`
   224  	// Opaque blob passed back to Primary in ServiceLinkRequest. Its exact
   225  	// structure is an implementation detail of Primary. It contains app_id of
   226  	// a replica this ticket is intended for, timestamp and HMAC tag.
   227  	Ticket []byte `protobuf:"bytes,4,opt,name=ticket,proto3" json:"ticket,omitempty"`
   228  }
   229  
   230  func (x *ServiceLinkTicket) Reset() {
   231  	*x = ServiceLinkTicket{}
   232  	if protoimpl.UnsafeEnabled {
   233  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[0]
   234  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   235  		ms.StoreMessageInfo(mi)
   236  	}
   237  }
   238  
   239  func (x *ServiceLinkTicket) String() string {
   240  	return protoimpl.X.MessageStringOf(x)
   241  }
   242  
   243  func (*ServiceLinkTicket) ProtoMessage() {}
   244  
   245  func (x *ServiceLinkTicket) ProtoReflect() protoreflect.Message {
   246  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[0]
   247  	if protoimpl.UnsafeEnabled && x != nil {
   248  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   249  		if ms.LoadMessageInfo() == nil {
   250  			ms.StoreMessageInfo(mi)
   251  		}
   252  		return ms
   253  	}
   254  	return mi.MessageOf(x)
   255  }
   256  
   257  // Deprecated: Use ServiceLinkTicket.ProtoReflect.Descriptor instead.
   258  func (*ServiceLinkTicket) Descriptor() ([]byte, []int) {
   259  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{0}
   260  }
   261  
   262  func (x *ServiceLinkTicket) GetPrimaryId() string {
   263  	if x != nil {
   264  		return x.PrimaryId
   265  	}
   266  	return ""
   267  }
   268  
   269  func (x *ServiceLinkTicket) GetPrimaryUrl() string {
   270  	if x != nil {
   271  		return x.PrimaryUrl
   272  	}
   273  	return ""
   274  }
   275  
   276  func (x *ServiceLinkTicket) GetGeneratedBy() string {
   277  	if x != nil {
   278  		return x.GeneratedBy
   279  	}
   280  	return ""
   281  }
   282  
   283  func (x *ServiceLinkTicket) GetTicket() []byte {
   284  	if x != nil {
   285  		return x.Ticket
   286  	}
   287  	return nil
   288  }
   289  
   290  // Sent from Replica to Primary via direct service <-> service HTTP call,
   291  // replicas app_id would be available via X-Appengine-Inbound-Appid header.
   292  type ServiceLinkRequest struct {
   293  	state         protoimpl.MessageState
   294  	sizeCache     protoimpl.SizeCache
   295  	unknownFields protoimpl.UnknownFields
   296  
   297  	// Same ticket that was passed to Replica via ServiceLinkTicket.
   298  	Ticket []byte `protobuf:"bytes,1,opt,name=ticket,proto3" json:"ticket,omitempty"`
   299  	// URL to use when making requests to Replica from Primary.
   300  	ReplicaUrl string `protobuf:"bytes,2,opt,name=replica_url,json=replicaUrl,proto3" json:"replica_url,omitempty"`
   301  	// Identity of a user that accepted the ticket and initiated this request.
   302  	InitiatedBy string `protobuf:"bytes,3,opt,name=initiated_by,json=initiatedBy,proto3" json:"initiated_by,omitempty"`
   303  }
   304  
   305  func (x *ServiceLinkRequest) Reset() {
   306  	*x = ServiceLinkRequest{}
   307  	if protoimpl.UnsafeEnabled {
   308  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[1]
   309  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   310  		ms.StoreMessageInfo(mi)
   311  	}
   312  }
   313  
   314  func (x *ServiceLinkRequest) String() string {
   315  	return protoimpl.X.MessageStringOf(x)
   316  }
   317  
   318  func (*ServiceLinkRequest) ProtoMessage() {}
   319  
   320  func (x *ServiceLinkRequest) ProtoReflect() protoreflect.Message {
   321  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[1]
   322  	if protoimpl.UnsafeEnabled && x != nil {
   323  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   324  		if ms.LoadMessageInfo() == nil {
   325  			ms.StoreMessageInfo(mi)
   326  		}
   327  		return ms
   328  	}
   329  	return mi.MessageOf(x)
   330  }
   331  
   332  // Deprecated: Use ServiceLinkRequest.ProtoReflect.Descriptor instead.
   333  func (*ServiceLinkRequest) Descriptor() ([]byte, []int) {
   334  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{1}
   335  }
   336  
   337  func (x *ServiceLinkRequest) GetTicket() []byte {
   338  	if x != nil {
   339  		return x.Ticket
   340  	}
   341  	return nil
   342  }
   343  
   344  func (x *ServiceLinkRequest) GetReplicaUrl() string {
   345  	if x != nil {
   346  		return x.ReplicaUrl
   347  	}
   348  	return ""
   349  }
   350  
   351  func (x *ServiceLinkRequest) GetInitiatedBy() string {
   352  	if x != nil {
   353  		return x.InitiatedBy
   354  	}
   355  	return ""
   356  }
   357  
   358  // Primary's response to ServiceLinkRequest. Always returned with HTTP code 200.
   359  type ServiceLinkResponse struct {
   360  	state         protoimpl.MessageState
   361  	sizeCache     protoimpl.SizeCache
   362  	unknownFields protoimpl.UnknownFields
   363  
   364  	Status ServiceLinkResponse_Status `protobuf:"varint,1,opt,name=status,proto3,enum=components.auth.ServiceLinkResponse_Status" json:"status,omitempty"`
   365  }
   366  
   367  func (x *ServiceLinkResponse) Reset() {
   368  	*x = ServiceLinkResponse{}
   369  	if protoimpl.UnsafeEnabled {
   370  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[2]
   371  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   372  		ms.StoreMessageInfo(mi)
   373  	}
   374  }
   375  
   376  func (x *ServiceLinkResponse) String() string {
   377  	return protoimpl.X.MessageStringOf(x)
   378  }
   379  
   380  func (*ServiceLinkResponse) ProtoMessage() {}
   381  
   382  func (x *ServiceLinkResponse) ProtoReflect() protoreflect.Message {
   383  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[2]
   384  	if protoimpl.UnsafeEnabled && x != nil {
   385  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   386  		if ms.LoadMessageInfo() == nil {
   387  			ms.StoreMessageInfo(mi)
   388  		}
   389  		return ms
   390  	}
   391  	return mi.MessageOf(x)
   392  }
   393  
   394  // Deprecated: Use ServiceLinkResponse.ProtoReflect.Descriptor instead.
   395  func (*ServiceLinkResponse) Descriptor() ([]byte, []int) {
   396  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{2}
   397  }
   398  
   399  func (x *ServiceLinkResponse) GetStatus() ServiceLinkResponse_Status {
   400  	if x != nil {
   401  		return x.Status
   402  	}
   403  	return ServiceLinkResponse_SUCCESS
   404  }
   405  
   406  // Some user group. Corresponds to AuthGroup entity in model.py.
   407  type AuthGroup struct {
   408  	state         protoimpl.MessageState
   409  	sizeCache     protoimpl.SizeCache
   410  	unknownFields protoimpl.UnknownFields
   411  
   412  	// Name of the group.
   413  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   414  	// List of members that are explicitly in this group.
   415  	Members []string `protobuf:"bytes,2,rep,name=members,proto3" json:"members,omitempty"`
   416  	// List of identity-glob expressions (like 'user:*@example.com').
   417  	Globs []string `protobuf:"bytes,3,rep,name=globs,proto3" json:"globs,omitempty"`
   418  	// List of nested group names.
   419  	Nested []string `protobuf:"bytes,4,rep,name=nested,proto3" json:"nested,omitempty"`
   420  	// Human readable description.
   421  	Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
   422  	// When the group was created. Microseconds since epoch.
   423  	CreatedTs int64 `protobuf:"varint,6,opt,name=created_ts,json=createdTs,proto3" json:"created_ts,omitempty"`
   424  	// Who created the group.
   425  	CreatedBy string `protobuf:"bytes,7,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"`
   426  	// When the group was modified last time. Microseconds since epoch.
   427  	ModifiedTs int64 `protobuf:"varint,8,opt,name=modified_ts,json=modifiedTs,proto3" json:"modified_ts,omitempty"`
   428  	// Who modified the group last time.
   429  	ModifiedBy string `protobuf:"bytes,9,opt,name=modified_by,json=modifiedBy,proto3" json:"modified_by,omitempty"`
   430  	// A name of the group that can modify or delete this group.
   431  	Owners string `protobuf:"bytes,10,opt,name=owners,proto3" json:"owners,omitempty"`
   432  }
   433  
   434  func (x *AuthGroup) Reset() {
   435  	*x = AuthGroup{}
   436  	if protoimpl.UnsafeEnabled {
   437  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[3]
   438  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   439  		ms.StoreMessageInfo(mi)
   440  	}
   441  }
   442  
   443  func (x *AuthGroup) String() string {
   444  	return protoimpl.X.MessageStringOf(x)
   445  }
   446  
   447  func (*AuthGroup) ProtoMessage() {}
   448  
   449  func (x *AuthGroup) ProtoReflect() protoreflect.Message {
   450  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[3]
   451  	if protoimpl.UnsafeEnabled && x != nil {
   452  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   453  		if ms.LoadMessageInfo() == nil {
   454  			ms.StoreMessageInfo(mi)
   455  		}
   456  		return ms
   457  	}
   458  	return mi.MessageOf(x)
   459  }
   460  
   461  // Deprecated: Use AuthGroup.ProtoReflect.Descriptor instead.
   462  func (*AuthGroup) Descriptor() ([]byte, []int) {
   463  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{3}
   464  }
   465  
   466  func (x *AuthGroup) GetName() string {
   467  	if x != nil {
   468  		return x.Name
   469  	}
   470  	return ""
   471  }
   472  
   473  func (x *AuthGroup) GetMembers() []string {
   474  	if x != nil {
   475  		return x.Members
   476  	}
   477  	return nil
   478  }
   479  
   480  func (x *AuthGroup) GetGlobs() []string {
   481  	if x != nil {
   482  		return x.Globs
   483  	}
   484  	return nil
   485  }
   486  
   487  func (x *AuthGroup) GetNested() []string {
   488  	if x != nil {
   489  		return x.Nested
   490  	}
   491  	return nil
   492  }
   493  
   494  func (x *AuthGroup) GetDescription() string {
   495  	if x != nil {
   496  		return x.Description
   497  	}
   498  	return ""
   499  }
   500  
   501  func (x *AuthGroup) GetCreatedTs() int64 {
   502  	if x != nil {
   503  		return x.CreatedTs
   504  	}
   505  	return 0
   506  }
   507  
   508  func (x *AuthGroup) GetCreatedBy() string {
   509  	if x != nil {
   510  		return x.CreatedBy
   511  	}
   512  	return ""
   513  }
   514  
   515  func (x *AuthGroup) GetModifiedTs() int64 {
   516  	if x != nil {
   517  		return x.ModifiedTs
   518  	}
   519  	return 0
   520  }
   521  
   522  func (x *AuthGroup) GetModifiedBy() string {
   523  	if x != nil {
   524  		return x.ModifiedBy
   525  	}
   526  	return ""
   527  }
   528  
   529  func (x *AuthGroup) GetOwners() string {
   530  	if x != nil {
   531  		return x.Owners
   532  	}
   533  	return ""
   534  }
   535  
   536  // A named set of whitelisted IP addresses. Corresponds to AuthIPWhitelist
   537  // entity in model.py.
   538  type AuthIPWhitelist struct {
   539  	state         protoimpl.MessageState
   540  	sizeCache     protoimpl.SizeCache
   541  	unknownFields protoimpl.UnknownFields
   542  
   543  	// Name of the IP whitelist.
   544  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   545  	// The list of IP subnets.
   546  	Subnets []string `protobuf:"bytes,2,rep,name=subnets,proto3" json:"subnets,omitempty"`
   547  	// Human readable description.
   548  	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
   549  	// When the list was created. Microseconds since epoch.
   550  	CreatedTs int64 `protobuf:"varint,4,opt,name=created_ts,json=createdTs,proto3" json:"created_ts,omitempty"`
   551  	// Who created the list.
   552  	CreatedBy string `protobuf:"bytes,5,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"`
   553  	// When the list was modified. Microseconds since epoch.
   554  	ModifiedTs int64 `protobuf:"varint,6,opt,name=modified_ts,json=modifiedTs,proto3" json:"modified_ts,omitempty"`
   555  	// Who modified the list the last time.
   556  	ModifiedBy string `protobuf:"bytes,7,opt,name=modified_by,json=modifiedBy,proto3" json:"modified_by,omitempty"`
   557  }
   558  
   559  func (x *AuthIPWhitelist) Reset() {
   560  	*x = AuthIPWhitelist{}
   561  	if protoimpl.UnsafeEnabled {
   562  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[4]
   563  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   564  		ms.StoreMessageInfo(mi)
   565  	}
   566  }
   567  
   568  func (x *AuthIPWhitelist) String() string {
   569  	return protoimpl.X.MessageStringOf(x)
   570  }
   571  
   572  func (*AuthIPWhitelist) ProtoMessage() {}
   573  
   574  func (x *AuthIPWhitelist) ProtoReflect() protoreflect.Message {
   575  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[4]
   576  	if protoimpl.UnsafeEnabled && x != nil {
   577  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   578  		if ms.LoadMessageInfo() == nil {
   579  			ms.StoreMessageInfo(mi)
   580  		}
   581  		return ms
   582  	}
   583  	return mi.MessageOf(x)
   584  }
   585  
   586  // Deprecated: Use AuthIPWhitelist.ProtoReflect.Descriptor instead.
   587  func (*AuthIPWhitelist) Descriptor() ([]byte, []int) {
   588  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{4}
   589  }
   590  
   591  func (x *AuthIPWhitelist) GetName() string {
   592  	if x != nil {
   593  		return x.Name
   594  	}
   595  	return ""
   596  }
   597  
   598  func (x *AuthIPWhitelist) GetSubnets() []string {
   599  	if x != nil {
   600  		return x.Subnets
   601  	}
   602  	return nil
   603  }
   604  
   605  func (x *AuthIPWhitelist) GetDescription() string {
   606  	if x != nil {
   607  		return x.Description
   608  	}
   609  	return ""
   610  }
   611  
   612  func (x *AuthIPWhitelist) GetCreatedTs() int64 {
   613  	if x != nil {
   614  		return x.CreatedTs
   615  	}
   616  	return 0
   617  }
   618  
   619  func (x *AuthIPWhitelist) GetCreatedBy() string {
   620  	if x != nil {
   621  		return x.CreatedBy
   622  	}
   623  	return ""
   624  }
   625  
   626  func (x *AuthIPWhitelist) GetModifiedTs() int64 {
   627  	if x != nil {
   628  		return x.ModifiedTs
   629  	}
   630  	return 0
   631  }
   632  
   633  func (x *AuthIPWhitelist) GetModifiedBy() string {
   634  	if x != nil {
   635  		return x.ModifiedBy
   636  	}
   637  	return ""
   638  }
   639  
   640  // A pair (identity, IP whitelist name) plus some metadata. Corresponds to
   641  // AuthIPWhitelistAssignments.Assignment model in model.py.
   642  type AuthIPWhitelistAssignment struct {
   643  	state         protoimpl.MessageState
   644  	sizeCache     protoimpl.SizeCache
   645  	unknownFields protoimpl.UnknownFields
   646  
   647  	// Identity name to limit by IP whitelist.
   648  	Identity string `protobuf:"bytes,1,opt,name=identity,proto3" json:"identity,omitempty"`
   649  	// Name of IP whitelist to use (see AuthIPWhitelist).
   650  	IpWhitelist string `protobuf:"bytes,2,opt,name=ip_whitelist,json=ipWhitelist,proto3" json:"ip_whitelist,omitempty"`
   651  	// Why the assignment was created.
   652  	Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment,omitempty"`
   653  	// When the assignment was created. Microseconds since epoch.
   654  	CreatedTs int64 `protobuf:"varint,4,opt,name=created_ts,json=createdTs,proto3" json:"created_ts,omitempty"`
   655  	// Who created the assignment.
   656  	CreatedBy string `protobuf:"bytes,5,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"`
   657  }
   658  
   659  func (x *AuthIPWhitelistAssignment) Reset() {
   660  	*x = AuthIPWhitelistAssignment{}
   661  	if protoimpl.UnsafeEnabled {
   662  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[5]
   663  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   664  		ms.StoreMessageInfo(mi)
   665  	}
   666  }
   667  
   668  func (x *AuthIPWhitelistAssignment) String() string {
   669  	return protoimpl.X.MessageStringOf(x)
   670  }
   671  
   672  func (*AuthIPWhitelistAssignment) ProtoMessage() {}
   673  
   674  func (x *AuthIPWhitelistAssignment) ProtoReflect() protoreflect.Message {
   675  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[5]
   676  	if protoimpl.UnsafeEnabled && x != nil {
   677  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   678  		if ms.LoadMessageInfo() == nil {
   679  			ms.StoreMessageInfo(mi)
   680  		}
   681  		return ms
   682  	}
   683  	return mi.MessageOf(x)
   684  }
   685  
   686  // Deprecated: Use AuthIPWhitelistAssignment.ProtoReflect.Descriptor instead.
   687  func (*AuthIPWhitelistAssignment) Descriptor() ([]byte, []int) {
   688  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{5}
   689  }
   690  
   691  func (x *AuthIPWhitelistAssignment) GetIdentity() string {
   692  	if x != nil {
   693  		return x.Identity
   694  	}
   695  	return ""
   696  }
   697  
   698  func (x *AuthIPWhitelistAssignment) GetIpWhitelist() string {
   699  	if x != nil {
   700  		return x.IpWhitelist
   701  	}
   702  	return ""
   703  }
   704  
   705  func (x *AuthIPWhitelistAssignment) GetComment() string {
   706  	if x != nil {
   707  		return x.Comment
   708  	}
   709  	return ""
   710  }
   711  
   712  func (x *AuthIPWhitelistAssignment) GetCreatedTs() int64 {
   713  	if x != nil {
   714  		return x.CreatedTs
   715  	}
   716  	return 0
   717  }
   718  
   719  func (x *AuthIPWhitelistAssignment) GetCreatedBy() string {
   720  	if x != nil {
   721  		return x.CreatedBy
   722  	}
   723  	return ""
   724  }
   725  
   726  // An entire database of auth configuration that is being replicated.
   727  type AuthDB struct {
   728  	state         protoimpl.MessageState
   729  	sizeCache     protoimpl.SizeCache
   730  	unknownFields protoimpl.UnknownFields
   731  
   732  	// OAuth2 client_id to use to mint new OAuth2 tokens.
   733  	OauthClientId string `protobuf:"bytes,1,opt,name=oauth_client_id,json=oauthClientId,proto3" json:"oauth_client_id,omitempty"`
   734  	// OAuth2 client secret. Not so secret really, since it's passed to clients.
   735  	OauthClientSecret string `protobuf:"bytes,2,opt,name=oauth_client_secret,json=oauthClientSecret,proto3" json:"oauth_client_secret,omitempty"`
   736  	// Additional OAuth2 client_ids allowed to access the services.
   737  	OauthAdditionalClientIds []string `protobuf:"bytes,3,rep,name=oauth_additional_client_ids,json=oauthAdditionalClientIds,proto3" json:"oauth_additional_client_ids,omitempty"`
   738  	// All groups.
   739  	Groups []*AuthGroup `protobuf:"bytes,4,rep,name=groups,proto3" json:"groups,omitempty"`
   740  	// All IP whitelists.
   741  	IpWhitelists []*AuthIPWhitelist `protobuf:"bytes,6,rep,name=ip_whitelists,json=ipWhitelists,proto3" json:"ip_whitelists,omitempty"`
   742  	// Mapping 'account -> IP whitlist to use for that account'.
   743  	IpWhitelistAssignments []*AuthIPWhitelistAssignment `protobuf:"bytes,7,rep,name=ip_whitelist_assignments,json=ipWhitelistAssignments,proto3" json:"ip_whitelist_assignments,omitempty"`
   744  	// URL of a token server to use to generate delegation tokens.
   745  	TokenServerUrl string `protobuf:"bytes,8,opt,name=token_server_url,json=tokenServerUrl,proto3" json:"token_server_url,omitempty"`
   746  	// Serialized security_config.SecurityConfig proto with security-related
   747  	// configuration to distribute across all services.
   748  	//
   749  	// It is distributed in a serialized form to make sure old services ingest it
   750  	// fully, even if they don't understand some SecurityConfig proto fields
   751  	// (yet). As soon as their code is updated, they SHOULD start using all
   752  	// SecurityConfig fields, without waiting for another push from Auth Service.
   753  	//
   754  	// If we use SecurityConfig directly here, old services would just drop fields
   755  	// they don't understand when accepting an AuthDB push.
   756  	SecurityConfig []byte `protobuf:"bytes,9,opt,name=security_config,json=securityConfig,proto3" json:"security_config,omitempty"`
   757  	// Definition of all known permissions and realms in a LUCI deployment.
   758  	//
   759  	// It is ultimately used by LUCI services for authorizing access to resources.
   760  	// See realms.proto for more details.
   761  	Realms *Realms `protobuf:"bytes,11,opt,name=realms,proto3" json:"realms,omitempty"`
   762  }
   763  
   764  func (x *AuthDB) Reset() {
   765  	*x = AuthDB{}
   766  	if protoimpl.UnsafeEnabled {
   767  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[6]
   768  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   769  		ms.StoreMessageInfo(mi)
   770  	}
   771  }
   772  
   773  func (x *AuthDB) String() string {
   774  	return protoimpl.X.MessageStringOf(x)
   775  }
   776  
   777  func (*AuthDB) ProtoMessage() {}
   778  
   779  func (x *AuthDB) ProtoReflect() protoreflect.Message {
   780  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[6]
   781  	if protoimpl.UnsafeEnabled && x != nil {
   782  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   783  		if ms.LoadMessageInfo() == nil {
   784  			ms.StoreMessageInfo(mi)
   785  		}
   786  		return ms
   787  	}
   788  	return mi.MessageOf(x)
   789  }
   790  
   791  // Deprecated: Use AuthDB.ProtoReflect.Descriptor instead.
   792  func (*AuthDB) Descriptor() ([]byte, []int) {
   793  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{6}
   794  }
   795  
   796  func (x *AuthDB) GetOauthClientId() string {
   797  	if x != nil {
   798  		return x.OauthClientId
   799  	}
   800  	return ""
   801  }
   802  
   803  func (x *AuthDB) GetOauthClientSecret() string {
   804  	if x != nil {
   805  		return x.OauthClientSecret
   806  	}
   807  	return ""
   808  }
   809  
   810  func (x *AuthDB) GetOauthAdditionalClientIds() []string {
   811  	if x != nil {
   812  		return x.OauthAdditionalClientIds
   813  	}
   814  	return nil
   815  }
   816  
   817  func (x *AuthDB) GetGroups() []*AuthGroup {
   818  	if x != nil {
   819  		return x.Groups
   820  	}
   821  	return nil
   822  }
   823  
   824  func (x *AuthDB) GetIpWhitelists() []*AuthIPWhitelist {
   825  	if x != nil {
   826  		return x.IpWhitelists
   827  	}
   828  	return nil
   829  }
   830  
   831  func (x *AuthDB) GetIpWhitelistAssignments() []*AuthIPWhitelistAssignment {
   832  	if x != nil {
   833  		return x.IpWhitelistAssignments
   834  	}
   835  	return nil
   836  }
   837  
   838  func (x *AuthDB) GetTokenServerUrl() string {
   839  	if x != nil {
   840  		return x.TokenServerUrl
   841  	}
   842  	return ""
   843  }
   844  
   845  func (x *AuthDB) GetSecurityConfig() []byte {
   846  	if x != nil {
   847  		return x.SecurityConfig
   848  	}
   849  	return nil
   850  }
   851  
   852  func (x *AuthDB) GetRealms() *Realms {
   853  	if x != nil {
   854  		return x.Realms
   855  	}
   856  	return nil
   857  }
   858  
   859  // Information about some particular revision of auth DB.
   860  type AuthDBRevision struct {
   861  	state         protoimpl.MessageState
   862  	sizeCache     protoimpl.SizeCache
   863  	unknownFields protoimpl.UnknownFields
   864  
   865  	// GAE App ID of a service holding primary copy of Auth DB.
   866  	PrimaryId string `protobuf:"bytes,1,opt,name=primary_id,json=primaryId,proto3" json:"primary_id,omitempty"`
   867  	// Revision of Auth DB being pushed.
   868  	AuthDbRev int64 `protobuf:"varint,2,opt,name=auth_db_rev,json=authDbRev,proto3" json:"auth_db_rev,omitempty"`
   869  	// Timestamp of that revision by Primary's clock, microseconds since epoch.
   870  	ModifiedTs int64 `protobuf:"varint,3,opt,name=modified_ts,json=modifiedTs,proto3" json:"modified_ts,omitempty"`
   871  }
   872  
   873  func (x *AuthDBRevision) Reset() {
   874  	*x = AuthDBRevision{}
   875  	if protoimpl.UnsafeEnabled {
   876  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[7]
   877  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   878  		ms.StoreMessageInfo(mi)
   879  	}
   880  }
   881  
   882  func (x *AuthDBRevision) String() string {
   883  	return protoimpl.X.MessageStringOf(x)
   884  }
   885  
   886  func (*AuthDBRevision) ProtoMessage() {}
   887  
   888  func (x *AuthDBRevision) ProtoReflect() protoreflect.Message {
   889  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[7]
   890  	if protoimpl.UnsafeEnabled && x != nil {
   891  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   892  		if ms.LoadMessageInfo() == nil {
   893  			ms.StoreMessageInfo(mi)
   894  		}
   895  		return ms
   896  	}
   897  	return mi.MessageOf(x)
   898  }
   899  
   900  // Deprecated: Use AuthDBRevision.ProtoReflect.Descriptor instead.
   901  func (*AuthDBRevision) Descriptor() ([]byte, []int) {
   902  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{7}
   903  }
   904  
   905  func (x *AuthDBRevision) GetPrimaryId() string {
   906  	if x != nil {
   907  		return x.PrimaryId
   908  	}
   909  	return ""
   910  }
   911  
   912  func (x *AuthDBRevision) GetAuthDbRev() int64 {
   913  	if x != nil {
   914  		return x.AuthDbRev
   915  	}
   916  	return 0
   917  }
   918  
   919  func (x *AuthDBRevision) GetModifiedTs() int64 {
   920  	if x != nil {
   921  		return x.ModifiedTs
   922  	}
   923  	return 0
   924  }
   925  
   926  // SignedAuthDB contains serialized and signed AuthDB proto.
   927  //
   928  // It is used to store AuthDB snapshots in Google Storage. Signing is used as
   929  // a defense against unauthorized writes to the storage bucket.
   930  type SignedAuthDB struct {
   931  	state         protoimpl.MessageState
   932  	sizeCache     protoimpl.SizeCache
   933  	unknownFields protoimpl.UnknownFields
   934  
   935  	// Serialized ReplicationPushRequest message with actual data.
   936  	//
   937  	// Contains revision information and AuthDB itself.
   938  	AuthDbBlob []byte `protobuf:"bytes,1,opt,name=auth_db_blob,json=authDbBlob,proto3" json:"auth_db_blob,omitempty"`
   939  	// Service account name whose key was used to sign the AuthDB blob.
   940  	SignerId string `protobuf:"bytes,2,opt,name=signer_id,json=signerId,proto3" json:"signer_id,omitempty"`
   941  	// ID of the signing key.
   942  	SigningKeyId string `protobuf:"bytes,3,opt,name=signing_key_id,json=signingKeyId,proto3" json:"signing_key_id,omitempty"`
   943  	// The signature of auth_db_blob field.
   944  	//
   945  	// It is RS256(SHA512(auth_db_blob)).
   946  	//
   947  	// Where:
   948  	//   - RS256 is RSASSA-PKCS1-v1_5 using SHA-256, see RS256 algo in RFC7518.
   949  	//   - SHA512 is a byte string (64 bytes) with SHA-512 digest of its input.
   950  	//
   951  	// Such peculiar structure is due to limitations of GAE signing infrastructure
   952  	// (RS256 function can accept at most 8KB of input).
   953  	//
   954  	// Consumers of SignedAuthDB are expected to do the following:
   955  	//  1. Check 'signer_id' is what they expect.
   956  	//  2. Use https://www.googleapis.com/service_accounts/v1/metadata/x509/...
   957  	//     endpoint to get the signer's public key with ID 'signing_key_id'.
   958  	//  3. Construct to-be-signed string as SHA512(auth_db_blob).
   959  	//  4. Verify 'signature' matches to-be-signed string using the public key
   960  	//     from step 2.
   961  	Signature []byte `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"`
   962  }
   963  
   964  func (x *SignedAuthDB) Reset() {
   965  	*x = SignedAuthDB{}
   966  	if protoimpl.UnsafeEnabled {
   967  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[8]
   968  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   969  		ms.StoreMessageInfo(mi)
   970  	}
   971  }
   972  
   973  func (x *SignedAuthDB) String() string {
   974  	return protoimpl.X.MessageStringOf(x)
   975  }
   976  
   977  func (*SignedAuthDB) ProtoMessage() {}
   978  
   979  func (x *SignedAuthDB) ProtoReflect() protoreflect.Message {
   980  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[8]
   981  	if protoimpl.UnsafeEnabled && x != nil {
   982  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   983  		if ms.LoadMessageInfo() == nil {
   984  			ms.StoreMessageInfo(mi)
   985  		}
   986  		return ms
   987  	}
   988  	return mi.MessageOf(x)
   989  }
   990  
   991  // Deprecated: Use SignedAuthDB.ProtoReflect.Descriptor instead.
   992  func (*SignedAuthDB) Descriptor() ([]byte, []int) {
   993  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{8}
   994  }
   995  
   996  func (x *SignedAuthDB) GetAuthDbBlob() []byte {
   997  	if x != nil {
   998  		return x.AuthDbBlob
   999  	}
  1000  	return nil
  1001  }
  1002  
  1003  func (x *SignedAuthDB) GetSignerId() string {
  1004  	if x != nil {
  1005  		return x.SignerId
  1006  	}
  1007  	return ""
  1008  }
  1009  
  1010  func (x *SignedAuthDB) GetSigningKeyId() string {
  1011  	if x != nil {
  1012  		return x.SigningKeyId
  1013  	}
  1014  	return ""
  1015  }
  1016  
  1017  func (x *SignedAuthDB) GetSignature() []byte {
  1018  	if x != nil {
  1019  		return x.Signature
  1020  	}
  1021  	return nil
  1022  }
  1023  
  1024  // Published by Primary into 'auth-db-changed' PubSub topic. The body of the
  1025  // message is base64 encoded serialized ChangeNotification. Additional
  1026  // attributes are:
  1027  //
  1028  //	X-AuthDB-SigKey-v1: <id of a public key>
  1029  //	X-AuthDB-SigVal-v1: <base64 encoded RSA-SHA256(blob) signature>
  1030  type ChangeNotification struct {
  1031  	state         protoimpl.MessageState
  1032  	sizeCache     protoimpl.SizeCache
  1033  	unknownFields protoimpl.UnknownFields
  1034  
  1035  	// New revision of the AuthDB.
  1036  	Revision *AuthDBRevision `protobuf:"bytes,1,opt,name=revision,proto3" json:"revision,omitempty"`
  1037  }
  1038  
  1039  func (x *ChangeNotification) Reset() {
  1040  	*x = ChangeNotification{}
  1041  	if protoimpl.UnsafeEnabled {
  1042  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[9]
  1043  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1044  		ms.StoreMessageInfo(mi)
  1045  	}
  1046  }
  1047  
  1048  func (x *ChangeNotification) String() string {
  1049  	return protoimpl.X.MessageStringOf(x)
  1050  }
  1051  
  1052  func (*ChangeNotification) ProtoMessage() {}
  1053  
  1054  func (x *ChangeNotification) ProtoReflect() protoreflect.Message {
  1055  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[9]
  1056  	if protoimpl.UnsafeEnabled && x != nil {
  1057  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1058  		if ms.LoadMessageInfo() == nil {
  1059  			ms.StoreMessageInfo(mi)
  1060  		}
  1061  		return ms
  1062  	}
  1063  	return mi.MessageOf(x)
  1064  }
  1065  
  1066  // Deprecated: Use ChangeNotification.ProtoReflect.Descriptor instead.
  1067  func (*ChangeNotification) Descriptor() ([]byte, []int) {
  1068  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{9}
  1069  }
  1070  
  1071  func (x *ChangeNotification) GetRevision() *AuthDBRevision {
  1072  	if x != nil {
  1073  		return x.Revision
  1074  	}
  1075  	return nil
  1076  }
  1077  
  1078  // Sent from Primary to Replica to update Replica's AuthDB.
  1079  //
  1080  // Primary signs the entire serialized message with its private key and appends
  1081  // two headers to HTTP request that carries the blob:
  1082  //
  1083  //	X-AuthDB-SigKey-v1: <id of a public key>
  1084  //	X-AuthDB-SigVal-v1: <base64 encoded RSA-SHA256(SHA512(blob)) signature>
  1085  //
  1086  // Binary serialization of ReplicationPushRequest is sometimes misleadingly
  1087  // called "AuthDB blob". It is stored in Datastore (as is) and in Google Storage
  1088  // (as serialized SignedAuthDB) for consumers that do not use Primary -> Replica
  1089  // protocol.
  1090  type ReplicationPushRequest struct {
  1091  	state         protoimpl.MessageState
  1092  	sizeCache     protoimpl.SizeCache
  1093  	unknownFields protoimpl.UnknownFields
  1094  
  1095  	// Revision that is being pushed.
  1096  	Revision *AuthDBRevision `protobuf:"bytes,1,opt,name=revision,proto3" json:"revision,omitempty"`
  1097  	// An entire database of auth configuration for specific revision.
  1098  	AuthDb *AuthDB `protobuf:"bytes,2,opt,name=auth_db,json=authDb,proto3" json:"auth_db,omitempty"`
  1099  	// Version of 'auth' component on Primary, see components/auth/version.py.
  1100  	AuthCodeVersion string `protobuf:"bytes,3,opt,name=auth_code_version,json=authCodeVersion,proto3" json:"auth_code_version,omitempty"`
  1101  }
  1102  
  1103  func (x *ReplicationPushRequest) Reset() {
  1104  	*x = ReplicationPushRequest{}
  1105  	if protoimpl.UnsafeEnabled {
  1106  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[10]
  1107  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1108  		ms.StoreMessageInfo(mi)
  1109  	}
  1110  }
  1111  
  1112  func (x *ReplicationPushRequest) String() string {
  1113  	return protoimpl.X.MessageStringOf(x)
  1114  }
  1115  
  1116  func (*ReplicationPushRequest) ProtoMessage() {}
  1117  
  1118  func (x *ReplicationPushRequest) ProtoReflect() protoreflect.Message {
  1119  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[10]
  1120  	if protoimpl.UnsafeEnabled && x != nil {
  1121  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1122  		if ms.LoadMessageInfo() == nil {
  1123  			ms.StoreMessageInfo(mi)
  1124  		}
  1125  		return ms
  1126  	}
  1127  	return mi.MessageOf(x)
  1128  }
  1129  
  1130  // Deprecated: Use ReplicationPushRequest.ProtoReflect.Descriptor instead.
  1131  func (*ReplicationPushRequest) Descriptor() ([]byte, []int) {
  1132  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{10}
  1133  }
  1134  
  1135  func (x *ReplicationPushRequest) GetRevision() *AuthDBRevision {
  1136  	if x != nil {
  1137  		return x.Revision
  1138  	}
  1139  	return nil
  1140  }
  1141  
  1142  func (x *ReplicationPushRequest) GetAuthDb() *AuthDB {
  1143  	if x != nil {
  1144  		return x.AuthDb
  1145  	}
  1146  	return nil
  1147  }
  1148  
  1149  func (x *ReplicationPushRequest) GetAuthCodeVersion() string {
  1150  	if x != nil {
  1151  		return x.AuthCodeVersion
  1152  	}
  1153  	return ""
  1154  }
  1155  
  1156  // Replica's response to ReplicationPushRequest.
  1157  type ReplicationPushResponse struct {
  1158  	state         protoimpl.MessageState
  1159  	sizeCache     protoimpl.SizeCache
  1160  	unknownFields protoimpl.UnknownFields
  1161  
  1162  	// Overall status of the operation.
  1163  	Status ReplicationPushResponse_Status `protobuf:"varint,1,opt,name=status,proto3,enum=components.auth.ReplicationPushResponse_Status" json:"status,omitempty"`
  1164  	// Revision known by Replica (set for APPLIED and SKIPPED statuses).
  1165  	CurrentRevision *AuthDBRevision `protobuf:"bytes,2,opt,name=current_revision,json=currentRevision,proto3" json:"current_revision,omitempty"`
  1166  	// Present for TRANSIENT_ERROR and FATAL_ERROR statuses.
  1167  	ErrorCode ReplicationPushResponse_ErrorCode `protobuf:"varint,3,opt,name=error_code,json=errorCode,proto3,enum=components.auth.ReplicationPushResponse_ErrorCode" json:"error_code,omitempty"`
  1168  	// Version of 'auth' component on Replica, see components/auth/version.py.
  1169  	AuthCodeVersion string `protobuf:"bytes,4,opt,name=auth_code_version,json=authCodeVersion,proto3" json:"auth_code_version,omitempty"`
  1170  }
  1171  
  1172  func (x *ReplicationPushResponse) Reset() {
  1173  	*x = ReplicationPushResponse{}
  1174  	if protoimpl.UnsafeEnabled {
  1175  		mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[11]
  1176  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1177  		ms.StoreMessageInfo(mi)
  1178  	}
  1179  }
  1180  
  1181  func (x *ReplicationPushResponse) String() string {
  1182  	return protoimpl.X.MessageStringOf(x)
  1183  }
  1184  
  1185  func (*ReplicationPushResponse) ProtoMessage() {}
  1186  
  1187  func (x *ReplicationPushResponse) ProtoReflect() protoreflect.Message {
  1188  	mi := &file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[11]
  1189  	if protoimpl.UnsafeEnabled && x != nil {
  1190  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1191  		if ms.LoadMessageInfo() == nil {
  1192  			ms.StoreMessageInfo(mi)
  1193  		}
  1194  		return ms
  1195  	}
  1196  	return mi.MessageOf(x)
  1197  }
  1198  
  1199  // Deprecated: Use ReplicationPushResponse.ProtoReflect.Descriptor instead.
  1200  func (*ReplicationPushResponse) Descriptor() ([]byte, []int) {
  1201  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP(), []int{11}
  1202  }
  1203  
  1204  func (x *ReplicationPushResponse) GetStatus() ReplicationPushResponse_Status {
  1205  	if x != nil {
  1206  		return x.Status
  1207  	}
  1208  	return ReplicationPushResponse_APPLIED
  1209  }
  1210  
  1211  func (x *ReplicationPushResponse) GetCurrentRevision() *AuthDBRevision {
  1212  	if x != nil {
  1213  		return x.CurrentRevision
  1214  	}
  1215  	return nil
  1216  }
  1217  
  1218  func (x *ReplicationPushResponse) GetErrorCode() ReplicationPushResponse_ErrorCode {
  1219  	if x != nil {
  1220  		return x.ErrorCode
  1221  	}
  1222  	return ReplicationPushResponse_ERROR_UNKNOWN
  1223  }
  1224  
  1225  func (x *ReplicationPushResponse) GetAuthCodeVersion() string {
  1226  	if x != nil {
  1227  		return x.AuthCodeVersion
  1228  	}
  1229  	return ""
  1230  }
  1231  
  1232  var File_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto protoreflect.FileDescriptor
  1233  
  1234  var file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDesc = []byte{
  1235  	0x0a, 0x59, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
  1236  	0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x61, 0x75,
  1237  	0x74, 0x68, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  1238  	0x63, 0x6f, 0x6c, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x61,
  1239  	0x75, 0x74, 0x68, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63,
  1240  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0f, 0x63, 0x6f, 0x6d,
  1241  	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x1a, 0x54, 0x67, 0x6f,
  1242  	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75,
  1243  	0x63, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x73,
  1244  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f,
  1245  	0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f,
  1246  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x72, 0x65, 0x61, 0x6c, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f,
  1247  	0x74, 0x6f, 0x22, 0x8e, 0x01, 0x0a, 0x11, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69,
  1248  	0x6e, 0x6b, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x6d,
  1249  	0x61, 0x72, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72,
  1250  	0x69, 0x6d, 0x61, 0x72, 0x79, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x6d, 0x61,
  1251  	0x72, 0x79, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72,
  1252  	0x69, 0x6d, 0x61, 0x72, 0x79, 0x55, 0x72, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x65, 0x6e, 0x65,
  1253  	0x72, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
  1254  	0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74,
  1255  	0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x74, 0x69, 0x63,
  1256  	0x6b, 0x65, 0x74, 0x22, 0x70, 0x0a, 0x12, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69,
  1257  	0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x63,
  1258  	0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x74, 0x69, 0x63, 0x6b, 0x65,
  1259  	0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x75, 0x72, 0x6c,
  1260  	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x55,
  1261  	0x72, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f,
  1262  	0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61,
  1263  	0x74, 0x65, 0x64, 0x42, 0x79, 0x22, 0xa6, 0x01, 0x0a, 0x13, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
  1264  	0x65, 0x4c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a,
  1265  	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e,
  1266  	0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e,
  1267  	0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f,
  1268  	0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
  1269  	0x75, 0x73, 0x22, 0x4a, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07,
  1270  	0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x52, 0x41,
  1271  	0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x01, 0x12, 0x0e,
  1272  	0x0a, 0x0a, 0x42, 0x41, 0x44, 0x5f, 0x54, 0x49, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x02, 0x12, 0x0e,
  1273  	0x0a, 0x0a, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0xa1,
  1274  	0x02, 0x0a, 0x09, 0x41, 0x75, 0x74, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04,
  1275  	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
  1276  	0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
  1277  	0x09, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x6c,
  1278  	0x6f, 0x62, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x67, 0x6c, 0x6f, 0x62, 0x73,
  1279  	0x12, 0x16, 0x0a, 0x06, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09,
  1280  	0x52, 0x06, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
  1281  	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
  1282  	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72,
  1283  	0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
  1284  	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65,
  1285  	0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63,
  1286  	0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x6f, 0x64, 0x69,
  1287  	0x66, 0x69, 0x65, 0x64, 0x5f, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d,
  1288  	0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x54, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x6f, 0x64,
  1289  	0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
  1290  	0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x42, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x77,
  1291  	0x6e, 0x65, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x77, 0x6e, 0x65,
  1292  	0x72, 0x73, 0x22, 0xe1, 0x01, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x68, 0x49, 0x50, 0x57, 0x68, 0x69,
  1293  	0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
  1294  	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75,
  1295  	0x62, 0x6e, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62,
  1296  	0x6e, 0x65, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  1297  	0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
  1298  	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
  1299  	0x64, 0x5f, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61,
  1300  	0x74, 0x65, 0x64, 0x54, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
  1301  	0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74,
  1302  	0x65, 0x64, 0x42, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64,
  1303  	0x5f, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d, 0x6f, 0x64, 0x69, 0x66,
  1304  	0x69, 0x65, 0x64, 0x54, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65,
  1305  	0x64, 0x5f, 0x62, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x6f, 0x64, 0x69,
  1306  	0x66, 0x69, 0x65, 0x64, 0x42, 0x79, 0x22, 0xb2, 0x01, 0x0a, 0x19, 0x41, 0x75, 0x74, 0x68, 0x49,
  1307  	0x50, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e,
  1308  	0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
  1309  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
  1310  	0x12, 0x21, 0x0a, 0x0c, 0x69, 0x70, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74,
  1311  	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x70, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c,
  1312  	0x69, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03,
  1313  	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a,
  1314  	0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
  1315  	0x03, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x73, 0x12, 0x1d, 0x0a, 0x0a,
  1316  	0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
  1317  	0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x22, 0x97, 0x04, 0x0a, 0x06,
  1318  	0x41, 0x75, 0x74, 0x68, 0x44, 0x42, 0x12, 0x26, 0x0a, 0x0f, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x5f,
  1319  	0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
  1320  	0x0d, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e,
  1321  	0x0a, 0x13, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73,
  1322  	0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6f, 0x61, 0x75,
  1323  	0x74, 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x3d,
  1324  	0x0a, 0x1b, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
  1325  	0x61, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20,
  1326  	0x03, 0x28, 0x09, 0x52, 0x18, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69,
  1327  	0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x12, 0x32, 0x0a,
  1328  	0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
  1329  	0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e,
  1330  	0x41, 0x75, 0x74, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70,
  1331  	0x73, 0x12, 0x45, 0x0a, 0x0d, 0x69, 0x70, 0x5f, 0x77, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73,
  1332  	0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6f,
  1333  	0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x49,
  1334  	0x50, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x0c, 0x69, 0x70, 0x57, 0x68,
  1335  	0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x12, 0x64, 0x0a, 0x18, 0x69, 0x70, 0x5f, 0x77,
  1336  	0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d,
  1337  	0x65, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x6f, 0x6d,
  1338  	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x41, 0x75, 0x74,
  1339  	0x68, 0x49, 0x50, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x41, 0x73, 0x73, 0x69,
  1340  	0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x16, 0x69, 0x70, 0x57, 0x68, 0x69, 0x74, 0x65, 0x6c,
  1341  	0x69, 0x73, 0x74, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28,
  1342  	0x0a, 0x10, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x75,
  1343  	0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x53,
  1344  	0x65, 0x72, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x75,
  1345  	0x72, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28,
  1346  	0x0c, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69,
  1347  	0x67, 0x12, 0x36, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x6c, 0x6d, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28,
  1348  	0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61,
  1349  	0x75, 0x74, 0x68, 0x2e, 0x72, 0x65, 0x61, 0x6c, 0x6d, 0x73, 0x2e, 0x52, 0x65, 0x61, 0x6c, 0x6d,
  1350  	0x73, 0x52, 0x06, 0x72, 0x65, 0x61, 0x6c, 0x6d, 0x73, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x4a,
  1351  	0x04, 0x08, 0x0a, 0x10, 0x0b, 0x22, 0x70, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x44, 0x42, 0x52,
  1352  	0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x6d, 0x61,
  1353  	0x72, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x69,
  1354  	0x6d, 0x61, 0x72, 0x79, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x64,
  1355  	0x62, 0x5f, 0x72, 0x65, 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x61, 0x75, 0x74,
  1356  	0x68, 0x44, 0x62, 0x52, 0x65, 0x76, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69,
  1357  	0x65, 0x64, 0x5f, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d, 0x6f, 0x64,
  1358  	0x69, 0x66, 0x69, 0x65, 0x64, 0x54, 0x73, 0x22, 0x91, 0x01, 0x0a, 0x0c, 0x53, 0x69, 0x67, 0x6e,
  1359  	0x65, 0x64, 0x41, 0x75, 0x74, 0x68, 0x44, 0x42, 0x12, 0x20, 0x0a, 0x0c, 0x61, 0x75, 0x74, 0x68,
  1360  	0x5f, 0x64, 0x62, 0x5f, 0x62, 0x6c, 0x6f, 0x62, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a,
  1361  	0x61, 0x75, 0x74, 0x68, 0x44, 0x62, 0x42, 0x6c, 0x6f, 0x62, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x69,
  1362  	0x67, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73,
  1363  	0x69, 0x67, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x73, 0x69, 0x67, 0x6e, 0x69,
  1364  	0x6e, 0x67, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
  1365  	0x0c, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x1c, 0x0a,
  1366  	0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c,
  1367  	0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x51, 0x0a, 0x12, 0x43,
  1368  	0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1369  	0x6e, 0x12, 0x3b, 0x0a, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,
  1370  	0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73,
  1371  	0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x44, 0x42, 0x52, 0x65, 0x76, 0x69,
  1372  	0x73, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xb3,
  1373  	0x01, 0x0a, 0x16, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x75,
  1374  	0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x72, 0x65, 0x76,
  1375  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f,
  1376  	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x41, 0x75,
  1377  	0x74, 0x68, 0x44, 0x42, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x72, 0x65,
  1378  	0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x64,
  1379  	0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e,
  1380  	0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x44, 0x42,
  1381  	0x52, 0x06, 0x61, 0x75, 0x74, 0x68, 0x44, 0x62, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x75, 0x74, 0x68,
  1382  	0x5f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20,
  1383  	0x01, 0x28, 0x09, 0x52, 0x0f, 0x61, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72,
  1384  	0x73, 0x69, 0x6f, 0x6e, 0x22, 0xf4, 0x03, 0x0a, 0x17, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61,
  1385  	0x74, 0x69, 0x6f, 0x6e, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
  1386  	0x12, 0x47, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
  1387  	0x32, 0x2f, 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x75,
  1388  	0x74, 0x68, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x75,
  1389  	0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75,
  1390  	0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x4a, 0x0a, 0x10, 0x63, 0x75, 0x72,
  1391  	0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20,
  1392  	0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73,
  1393  	0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x44, 0x42, 0x52, 0x65, 0x76, 0x69,
  1394  	0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76,
  1395  	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x51, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63,
  1396  	0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x63, 0x6f, 0x6d, 0x70,
  1397  	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x52, 0x65, 0x70, 0x6c,
  1398  	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f,
  1399  	0x6e, 0x73, 0x65, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x65,
  1400  	0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x75, 0x74, 0x68,
  1401  	0x5f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20,
  1402  	0x01, 0x28, 0x09, 0x52, 0x0f, 0x61, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72,
  1403  	0x73, 0x69, 0x6f, 0x6e, 0x22, 0x48, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0b,
  1404  	0x0a, 0x07, 0x41, 0x50, 0x50, 0x4c, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53,
  1405  	0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x52, 0x41, 0x4e,
  1406  	0x53, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x02, 0x12, 0x0f, 0x0a,
  1407  	0x0b, 0x46, 0x41, 0x54, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x7b,
  1408  	0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x11, 0x0a, 0x0d, 0x45,
  1409  	0x52, 0x52, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x11,
  1410  	0x0a, 0x0d, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x10,
  1411  	0x01, 0x12, 0x0d, 0x0a, 0x09, 0x46, 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, 0x02,
  1412  	0x12, 0x15, 0x0a, 0x11, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x49, 0x47, 0x4e,
  1413  	0x41, 0x54, 0x55, 0x52, 0x45, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x42, 0x41, 0x44, 0x5f, 0x53,
  1414  	0x49, 0x47, 0x4e, 0x41, 0x54, 0x55, 0x52, 0x45, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x42, 0x41,
  1415  	0x44, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x10, 0x05, 0x42, 0x3c, 0x5a, 0x3a, 0x67,
  1416  	0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c,
  1417  	0x75, 0x63, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f,
  1418  	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
  1419  	0x3b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  1420  	0x33,
  1421  }
  1422  
  1423  var (
  1424  	file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescOnce sync.Once
  1425  	file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescData = file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDesc
  1426  )
  1427  
  1428  func file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescGZIP() []byte {
  1429  	file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescOnce.Do(func() {
  1430  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescData)
  1431  	})
  1432  	return file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDescData
  1433  }
  1434  
  1435  var file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
  1436  var file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
  1437  var file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_goTypes = []interface{}{
  1438  	(ServiceLinkResponse_Status)(0),        // 0: components.auth.ServiceLinkResponse.Status
  1439  	(ReplicationPushResponse_Status)(0),    // 1: components.auth.ReplicationPushResponse.Status
  1440  	(ReplicationPushResponse_ErrorCode)(0), // 2: components.auth.ReplicationPushResponse.ErrorCode
  1441  	(*ServiceLinkTicket)(nil),              // 3: components.auth.ServiceLinkTicket
  1442  	(*ServiceLinkRequest)(nil),             // 4: components.auth.ServiceLinkRequest
  1443  	(*ServiceLinkResponse)(nil),            // 5: components.auth.ServiceLinkResponse
  1444  	(*AuthGroup)(nil),                      // 6: components.auth.AuthGroup
  1445  	(*AuthIPWhitelist)(nil),                // 7: components.auth.AuthIPWhitelist
  1446  	(*AuthIPWhitelistAssignment)(nil),      // 8: components.auth.AuthIPWhitelistAssignment
  1447  	(*AuthDB)(nil),                         // 9: components.auth.AuthDB
  1448  	(*AuthDBRevision)(nil),                 // 10: components.auth.AuthDBRevision
  1449  	(*SignedAuthDB)(nil),                   // 11: components.auth.SignedAuthDB
  1450  	(*ChangeNotification)(nil),             // 12: components.auth.ChangeNotification
  1451  	(*ReplicationPushRequest)(nil),         // 13: components.auth.ReplicationPushRequest
  1452  	(*ReplicationPushResponse)(nil),        // 14: components.auth.ReplicationPushResponse
  1453  	(*Realms)(nil),                         // 15: components.auth.realms.Realms
  1454  }
  1455  var file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_depIdxs = []int32{
  1456  	0,  // 0: components.auth.ServiceLinkResponse.status:type_name -> components.auth.ServiceLinkResponse.Status
  1457  	6,  // 1: components.auth.AuthDB.groups:type_name -> components.auth.AuthGroup
  1458  	7,  // 2: components.auth.AuthDB.ip_whitelists:type_name -> components.auth.AuthIPWhitelist
  1459  	8,  // 3: components.auth.AuthDB.ip_whitelist_assignments:type_name -> components.auth.AuthIPWhitelistAssignment
  1460  	15, // 4: components.auth.AuthDB.realms:type_name -> components.auth.realms.Realms
  1461  	10, // 5: components.auth.ChangeNotification.revision:type_name -> components.auth.AuthDBRevision
  1462  	10, // 6: components.auth.ReplicationPushRequest.revision:type_name -> components.auth.AuthDBRevision
  1463  	9,  // 7: components.auth.ReplicationPushRequest.auth_db:type_name -> components.auth.AuthDB
  1464  	1,  // 8: components.auth.ReplicationPushResponse.status:type_name -> components.auth.ReplicationPushResponse.Status
  1465  	10, // 9: components.auth.ReplicationPushResponse.current_revision:type_name -> components.auth.AuthDBRevision
  1466  	2,  // 10: components.auth.ReplicationPushResponse.error_code:type_name -> components.auth.ReplicationPushResponse.ErrorCode
  1467  	11, // [11:11] is the sub-list for method output_type
  1468  	11, // [11:11] is the sub-list for method input_type
  1469  	11, // [11:11] is the sub-list for extension type_name
  1470  	11, // [11:11] is the sub-list for extension extendee
  1471  	0,  // [0:11] is the sub-list for field type_name
  1472  }
  1473  
  1474  func init() {
  1475  	file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_init()
  1476  }
  1477  func file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_init() {
  1478  	if File_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto != nil {
  1479  		return
  1480  	}
  1481  	file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_realms_proto_init()
  1482  	if !protoimpl.UnsafeEnabled {
  1483  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1484  			switch v := v.(*ServiceLinkTicket); i {
  1485  			case 0:
  1486  				return &v.state
  1487  			case 1:
  1488  				return &v.sizeCache
  1489  			case 2:
  1490  				return &v.unknownFields
  1491  			default:
  1492  				return nil
  1493  			}
  1494  		}
  1495  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1496  			switch v := v.(*ServiceLinkRequest); i {
  1497  			case 0:
  1498  				return &v.state
  1499  			case 1:
  1500  				return &v.sizeCache
  1501  			case 2:
  1502  				return &v.unknownFields
  1503  			default:
  1504  				return nil
  1505  			}
  1506  		}
  1507  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1508  			switch v := v.(*ServiceLinkResponse); i {
  1509  			case 0:
  1510  				return &v.state
  1511  			case 1:
  1512  				return &v.sizeCache
  1513  			case 2:
  1514  				return &v.unknownFields
  1515  			default:
  1516  				return nil
  1517  			}
  1518  		}
  1519  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1520  			switch v := v.(*AuthGroup); i {
  1521  			case 0:
  1522  				return &v.state
  1523  			case 1:
  1524  				return &v.sizeCache
  1525  			case 2:
  1526  				return &v.unknownFields
  1527  			default:
  1528  				return nil
  1529  			}
  1530  		}
  1531  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1532  			switch v := v.(*AuthIPWhitelist); i {
  1533  			case 0:
  1534  				return &v.state
  1535  			case 1:
  1536  				return &v.sizeCache
  1537  			case 2:
  1538  				return &v.unknownFields
  1539  			default:
  1540  				return nil
  1541  			}
  1542  		}
  1543  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1544  			switch v := v.(*AuthIPWhitelistAssignment); i {
  1545  			case 0:
  1546  				return &v.state
  1547  			case 1:
  1548  				return &v.sizeCache
  1549  			case 2:
  1550  				return &v.unknownFields
  1551  			default:
  1552  				return nil
  1553  			}
  1554  		}
  1555  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1556  			switch v := v.(*AuthDB); i {
  1557  			case 0:
  1558  				return &v.state
  1559  			case 1:
  1560  				return &v.sizeCache
  1561  			case 2:
  1562  				return &v.unknownFields
  1563  			default:
  1564  				return nil
  1565  			}
  1566  		}
  1567  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1568  			switch v := v.(*AuthDBRevision); i {
  1569  			case 0:
  1570  				return &v.state
  1571  			case 1:
  1572  				return &v.sizeCache
  1573  			case 2:
  1574  				return &v.unknownFields
  1575  			default:
  1576  				return nil
  1577  			}
  1578  		}
  1579  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1580  			switch v := v.(*SignedAuthDB); i {
  1581  			case 0:
  1582  				return &v.state
  1583  			case 1:
  1584  				return &v.sizeCache
  1585  			case 2:
  1586  				return &v.unknownFields
  1587  			default:
  1588  				return nil
  1589  			}
  1590  		}
  1591  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1592  			switch v := v.(*ChangeNotification); i {
  1593  			case 0:
  1594  				return &v.state
  1595  			case 1:
  1596  				return &v.sizeCache
  1597  			case 2:
  1598  				return &v.unknownFields
  1599  			default:
  1600  				return nil
  1601  			}
  1602  		}
  1603  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  1604  			switch v := v.(*ReplicationPushRequest); i {
  1605  			case 0:
  1606  				return &v.state
  1607  			case 1:
  1608  				return &v.sizeCache
  1609  			case 2:
  1610  				return &v.unknownFields
  1611  			default:
  1612  				return nil
  1613  			}
  1614  		}
  1615  		file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  1616  			switch v := v.(*ReplicationPushResponse); i {
  1617  			case 0:
  1618  				return &v.state
  1619  			case 1:
  1620  				return &v.sizeCache
  1621  			case 2:
  1622  				return &v.unknownFields
  1623  			default:
  1624  				return nil
  1625  			}
  1626  		}
  1627  	}
  1628  	type x struct{}
  1629  	out := protoimpl.TypeBuilder{
  1630  		File: protoimpl.DescBuilder{
  1631  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1632  			RawDescriptor: file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDesc,
  1633  			NumEnums:      3,
  1634  			NumMessages:   12,
  1635  			NumExtensions: 0,
  1636  			NumServices:   0,
  1637  		},
  1638  		GoTypes:           file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_goTypes,
  1639  		DependencyIndexes: file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_depIdxs,
  1640  		EnumInfos:         file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_enumTypes,
  1641  		MessageInfos:      file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_msgTypes,
  1642  	}.Build()
  1643  	File_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto = out.File
  1644  	file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_rawDesc = nil
  1645  	file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_goTypes = nil
  1646  	file_go_chromium_org_luci_server_auth_service_protocol_components_auth_proto_replication_proto_depIdxs = nil
  1647  }