github.com/cloudwan/edgelq-sdk@v1.15.4/iam/resources/v1/role/role.pb.go (about) 1 // Code generated by protoc-gen-goten-go 2 // File: edgelq/iam/proto/v1/role.proto 3 // DO NOT EDIT!!! 4 5 package role 6 7 import ( 8 "fmt" 9 "reflect" 10 "sync" 11 12 "google.golang.org/protobuf/encoding/protojson" 13 "google.golang.org/protobuf/proto" 14 preflect "google.golang.org/protobuf/reflect/protoreflect" 15 "google.golang.org/protobuf/runtime/protoimpl" 16 ) 17 18 // proto imports 19 import ( 20 condition "github.com/cloudwan/edgelq-sdk/iam/resources/v1/condition" 21 organization "github.com/cloudwan/edgelq-sdk/iam/resources/v1/organization" 22 permission "github.com/cloudwan/edgelq-sdk/iam/resources/v1/permission" 23 project "github.com/cloudwan/edgelq-sdk/iam/resources/v1/project" 24 meta_service "github.com/cloudwan/goten-sdk/meta-service/resources/v1/service" 25 meta "github.com/cloudwan/goten-sdk/types/meta" 26 ) 27 28 // Reference imports to suppress errors if they are not otherwise used. 29 var ( 30 _ = fmt.Errorf 31 _ = reflect.Method{} 32 _ = sync.Once{} 33 34 _ = protojson.MarshalOptions{} 35 _ = proto.MarshalOptions{} 36 _ = preflect.Value{} 37 _ = protoimpl.DescBuilder{} 38 ) 39 40 // make sure we're using proto imports 41 var ( 42 _ = &condition.Condition{} 43 _ = &organization.Organization{} 44 _ = &permission.Permission{} 45 _ = &project.Project{} 46 _ = &meta_service.Service{} 47 _ = &meta.Meta{} 48 ) 49 50 const ( 51 // Verify that this generated code is sufficiently up-to-date. 52 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 53 // Verify that runtime/protoimpl is sufficiently up-to-date. 54 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 55 ) 56 57 // Category points to the intended role use. It may restrict how RoleBindings 58 // are created. 59 type Role_Category int32 60 61 const ( 62 // Undefined, not allowed. 63 Role_UNDEFINED Role_Category = 0 64 // Role is intended for public access. Restricted members: allUsers, 65 // allAuthenticatedUsers. No RoleBinding scope restrictions. 66 Role_PUBLIC Role_Category = 1 67 // Role is for internal purposes, defined by a parent service. There are no 68 // restrictions to scope and members. 69 Role_INTERNAL Role_Category = 2 70 // Special owner role - reserved to "scope-admin" role in IAM. It is de 71 // facto reserved category for EdgeLQ core services only, but is also kind 72 // of USER type. 73 Role_OWNER Role_Category = 3 74 // Role relevant for Service Management, check display name and/or 75 // description for more information. 76 Role_SERVICE Role_Category = 4 77 // Role for various edge agents. Restricted to project scope and service 78 // account member types. Cannot be assigned to groups. 79 Role_AGENT Role_Category = 5 80 // Role relevant for users, provides an access to various actions on 81 // organization/project level. Typically should be given to users, but 82 // ServiceAccount is also possible. Can be assigned to group members. 83 Role_USER Role_Category = 6 84 ) 85 86 var ( 87 Role_Category_name = map[int32]string{ 88 0: "UNDEFINED", 89 1: "PUBLIC", 90 2: "INTERNAL", 91 3: "OWNER", 92 4: "SERVICE", 93 5: "AGENT", 94 6: "USER", 95 } 96 97 Role_Category_value = map[string]int32{ 98 "UNDEFINED": 0, 99 "PUBLIC": 1, 100 "INTERNAL": 2, 101 "OWNER": 3, 102 "SERVICE": 4, 103 "AGENT": 5, 104 "USER": 6, 105 } 106 ) 107 108 func (x Role_Category) Enum() *Role_Category { 109 p := new(Role_Category) 110 *p = x 111 return p 112 } 113 114 func (x Role_Category) String() string { 115 return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x)) 116 } 117 118 func (Role_Category) Descriptor() preflect.EnumDescriptor { 119 return edgelq_iam_proto_v1_role_proto_enumTypes[0].Descriptor() 120 } 121 122 func (Role_Category) Type() preflect.EnumType { 123 return &edgelq_iam_proto_v1_role_proto_enumTypes[0] 124 } 125 126 func (x Role_Category) Number() preflect.EnumNumber { 127 return preflect.EnumNumber(x) 128 } 129 130 // Deprecated, Use Role_Category.ProtoReflect.Descriptor instead. 131 func (Role_Category) EnumDescriptor() ([]byte, []int) { 132 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{0, 0} 133 } 134 135 type Role_ScopeParamType_Type int32 136 137 const ( 138 Role_ScopeParamType_UNDEFINED Role_ScopeParamType_Type = 0 139 Role_ScopeParamType_STRING Role_ScopeParamType_Type = 1 140 Role_ScopeParamType_ARRAY_OF_STRINGS Role_ScopeParamType_Type = 2 141 ) 142 143 var ( 144 Role_ScopeParamType_Type_name = map[int32]string{ 145 0: "UNDEFINED", 146 1: "STRING", 147 2: "ARRAY_OF_STRINGS", 148 } 149 150 Role_ScopeParamType_Type_value = map[string]int32{ 151 "UNDEFINED": 0, 152 "STRING": 1, 153 "ARRAY_OF_STRINGS": 2, 154 } 155 ) 156 157 func (x Role_ScopeParamType_Type) Enum() *Role_ScopeParamType_Type { 158 p := new(Role_ScopeParamType_Type) 159 *p = x 160 return p 161 } 162 163 func (x Role_ScopeParamType_Type) String() string { 164 return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x)) 165 } 166 167 func (Role_ScopeParamType_Type) Descriptor() preflect.EnumDescriptor { 168 return edgelq_iam_proto_v1_role_proto_enumTypes[1].Descriptor() 169 } 170 171 func (Role_ScopeParamType_Type) Type() preflect.EnumType { 172 return &edgelq_iam_proto_v1_role_proto_enumTypes[1] 173 } 174 175 func (x Role_ScopeParamType_Type) Number() preflect.EnumNumber { 176 return preflect.EnumNumber(x) 177 } 178 179 // Deprecated, Use Role_ScopeParamType_Type.ProtoReflect.Descriptor instead. 180 func (Role_ScopeParamType_Type) EnumDescriptor() ([]byte, []int) { 181 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{0, 0, 0} 182 } 183 184 // Source indicates which dynamic object is used to extract value from. 185 type ScopeParam_FromValue_Source int32 186 187 const ( 188 ScopeParam_FromValue_UNDEFINED ScopeParam_FromValue_Source = 0 189 // Object from which value is taken is metadata. 190 // Valid for Service Accounts and user types. 191 ScopeParam_FromValue_PRINCIPAL_METADATA ScopeParam_FromValue_Source = 1 192 // Object from which value is taken is User principal. 193 // If principal executing an Action is not a User, then 194 // value will be empty. 195 ScopeParam_FromValue_PRINCIPAL_USER ScopeParam_FromValue_Source = 2 196 // Object from which value is taken is ServiceAccount principal. 197 // If principal executing an Action is not a ServiceAccount, then 198 // value will be empty. 199 ScopeParam_FromValue_PRINCIPAL_SVCACC ScopeParam_FromValue_Source = 3 200 ) 201 202 var ( 203 ScopeParam_FromValue_Source_name = map[int32]string{ 204 0: "UNDEFINED", 205 1: "PRINCIPAL_METADATA", 206 2: "PRINCIPAL_USER", 207 3: "PRINCIPAL_SVCACC", 208 } 209 210 ScopeParam_FromValue_Source_value = map[string]int32{ 211 "UNDEFINED": 0, 212 "PRINCIPAL_METADATA": 1, 213 "PRINCIPAL_USER": 2, 214 "PRINCIPAL_SVCACC": 3, 215 } 216 ) 217 218 func (x ScopeParam_FromValue_Source) Enum() *ScopeParam_FromValue_Source { 219 p := new(ScopeParam_FromValue_Source) 220 *p = x 221 return p 222 } 223 224 func (x ScopeParam_FromValue_Source) String() string { 225 return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x)) 226 } 227 228 func (ScopeParam_FromValue_Source) Descriptor() preflect.EnumDescriptor { 229 return edgelq_iam_proto_v1_role_proto_enumTypes[2].Descriptor() 230 } 231 232 func (ScopeParam_FromValue_Source) Type() preflect.EnumType { 233 return &edgelq_iam_proto_v1_role_proto_enumTypes[2] 234 } 235 236 func (x ScopeParam_FromValue_Source) Number() preflect.EnumNumber { 237 return preflect.EnumNumber(x) 238 } 239 240 // Deprecated, Use ScopeParam_FromValue_Source.ProtoReflect.Descriptor instead. 241 func (ScopeParam_FromValue_Source) EnumDescriptor() ([]byte, []int) { 242 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{1, 2, 0} 243 } 244 245 // Role Resource 246 type Role struct { 247 state protoimpl.MessageState 248 sizeCache protoimpl.SizeCache 249 unknownFields protoimpl.UnknownFields 250 // Name of Role 251 Name *Name `protobuf:"bytes,1,opt,customtype=Name,name=name,proto3" json:"name,omitempty"` 252 // Metadata is an object with information like create, update and delete time 253 // (for async deleted resources), has user labels/annotations, sharding 254 // information, multi-region syncing information and may have non-schema 255 // owners (useful for taking ownership of resources belonging to lower level 256 // services by higher ones). 257 Metadata *meta.Meta `protobuf:"bytes,4,opt,name=metadata,proto3" json:"metadata,omitempty"` 258 // Display Name 259 DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` 260 // Optional description 261 Description string `protobuf:"bytes,9,opt,name=description,proto3" json:"description,omitempty"` 262 // Category to which Role belongs to. It cannot be changed. 263 Category Role_Category `protobuf:"varint,10,opt,name=category,proto3,enum=ntt.iam.v1.Role_Category" json:"category,omitempty"` 264 // List of scope params, they are used to evaluate object prefixes in 265 // grants and values in their field conditions, if any. 266 ScopeParams []*Role_ScopeParamType `protobuf:"bytes,3,rep,name=scope_params,json=scopeParams,proto3" json:"scope_params,omitempty"` 267 // List of const scope params for this role 268 ConstValues []*ScopeParam `protobuf:"bytes,11,rep,name=const_values,json=constValues,proto3" json:"const_values,omitempty"` 269 // List of default value for the passed scope params 270 DefaultValues []*ScopeParam `protobuf:"bytes,12,rep,name=default_values,json=defaultValues,proto3" json:"default_values,omitempty"` 271 // List of permissions granted per each object prefix. 272 Grants []*Role_Grant `protobuf:"bytes,5,rep,name=grants,proto3" json:"grants,omitempty"` 273 // List of owned objects templates - during binding of a role, each owned 274 // object specified in this role is computed against scope params from role 275 // binding to evaluate final owned objects. For example, if owned_objects in 276 // Role contains value "regions/{region}/devices/{device}, and RoleBinding 277 // specifies region=useast and device=d1, then final owned_object will be 278 // regions/useast/devices/d1. Ownership also would include any potential child 279 // resources of this device. Note that RoleBinding scope (project, 280 // organization, service) will still be prepended before each owned object to 281 // form fully qualified name of the owned resource. Owned objects may contain 282 // wildcards: '-'. As a special case, if owned objects contain string with 283 // only single character: '-', then it means member of the role binding is 284 // considered as full owner of the scope. 285 // This field cannot be modified after role creation. 286 OwnedObjects []string `protobuf:"bytes,6,rep,name=owned_objects,json=ownedObjects,proto3" json:"owned_objects,omitempty"` 287 // List of services used by this role. It is being detected by the usage of 288 // permissions in grants - or if it has owned objects, it contains all 289 // services used by parent service. 290 Services []*meta_service.Reference `protobuf:"bytes,7,rep,customtype=Reference,name=services,proto3" json:"services,omitempty"` 291 // Internal field used by controller to ensure role bindings are in sync with 292 // role updates. 293 RbSpecGeneration int64 `protobuf:"varint,8,opt,name=rb_spec_generation,json=rbSpecGeneration,proto3" json:"rb_spec_generation,omitempty"` 294 } 295 296 func (m *Role) Reset() { 297 *m = Role{} 298 if protoimpl.UnsafeEnabled { 299 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[0] 300 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 301 ms.StoreMessageInfo(mi) 302 } 303 } 304 305 func (m *Role) String() string { 306 return protoimpl.X.MessageStringOf(m) 307 } 308 309 func (*Role) ProtoMessage() {} 310 311 func (m *Role) ProtoReflect() preflect.Message { 312 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[0] 313 if protoimpl.UnsafeEnabled && m != nil { 314 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 315 if ms.LoadMessageInfo() == nil { 316 ms.StoreMessageInfo(mi) 317 } 318 return ms 319 } 320 return mi.MessageOf(m) 321 } 322 323 func (*Role) GotenMessage() {} 324 325 // Deprecated, Use Role.ProtoReflect.Descriptor instead. 326 func (*Role) Descriptor() ([]byte, []int) { 327 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{0} 328 } 329 330 func (m *Role) Unmarshal(b []byte) error { 331 return proto.Unmarshal(b, m) 332 } 333 334 func (m *Role) Marshal() ([]byte, error) { 335 return proto.Marshal(m) 336 } 337 338 func (m *Role) MarshalJSON() ([]byte, error) { 339 return protojson.MarshalOptions{}.Marshal(m) 340 } 341 342 func (m *Role) UnmarshalJSON(data []byte) error { 343 return protojson.Unmarshal(data, m) 344 } 345 346 func (m *Role) GetName() *Name { 347 if m != nil { 348 return m.Name 349 } 350 return nil 351 } 352 353 func (m *Role) GetMetadata() *meta.Meta { 354 if m != nil { 355 return m.Metadata 356 } 357 return nil 358 } 359 360 func (m *Role) GetDisplayName() string { 361 if m != nil { 362 return m.DisplayName 363 } 364 return "" 365 } 366 367 func (m *Role) GetDescription() string { 368 if m != nil { 369 return m.Description 370 } 371 return "" 372 } 373 374 func (m *Role) GetCategory() Role_Category { 375 if m != nil { 376 return m.Category 377 } 378 return Role_UNDEFINED 379 } 380 381 func (m *Role) GetScopeParams() []*Role_ScopeParamType { 382 if m != nil { 383 return m.ScopeParams 384 } 385 return nil 386 } 387 388 func (m *Role) GetConstValues() []*ScopeParam { 389 if m != nil { 390 return m.ConstValues 391 } 392 return nil 393 } 394 395 func (m *Role) GetDefaultValues() []*ScopeParam { 396 if m != nil { 397 return m.DefaultValues 398 } 399 return nil 400 } 401 402 func (m *Role) GetGrants() []*Role_Grant { 403 if m != nil { 404 return m.Grants 405 } 406 return nil 407 } 408 409 func (m *Role) GetOwnedObjects() []string { 410 if m != nil { 411 return m.OwnedObjects 412 } 413 return nil 414 } 415 416 func (m *Role) GetServices() []*meta_service.Reference { 417 if m != nil { 418 return m.Services 419 } 420 return nil 421 } 422 423 func (m *Role) GetRbSpecGeneration() int64 { 424 if m != nil { 425 return m.RbSpecGeneration 426 } 427 return int64(0) 428 } 429 430 func (m *Role) SetName(fv *Name) { 431 if m == nil { 432 panic(fmt.Errorf("can't set %s on nil %s", "Name", "Role")) 433 } 434 m.Name = fv 435 } 436 437 func (m *Role) SetMetadata(fv *meta.Meta) { 438 if m == nil { 439 panic(fmt.Errorf("can't set %s on nil %s", "Metadata", "Role")) 440 } 441 m.Metadata = fv 442 } 443 444 func (m *Role) SetDisplayName(fv string) { 445 if m == nil { 446 panic(fmt.Errorf("can't set %s on nil %s", "DisplayName", "Role")) 447 } 448 m.DisplayName = fv 449 } 450 451 func (m *Role) SetDescription(fv string) { 452 if m == nil { 453 panic(fmt.Errorf("can't set %s on nil %s", "Description", "Role")) 454 } 455 m.Description = fv 456 } 457 458 func (m *Role) SetCategory(fv Role_Category) { 459 if m == nil { 460 panic(fmt.Errorf("can't set %s on nil %s", "Category", "Role")) 461 } 462 m.Category = fv 463 } 464 465 func (m *Role) SetScopeParams(fv []*Role_ScopeParamType) { 466 if m == nil { 467 panic(fmt.Errorf("can't set %s on nil %s", "ScopeParams", "Role")) 468 } 469 m.ScopeParams = fv 470 } 471 472 func (m *Role) SetConstValues(fv []*ScopeParam) { 473 if m == nil { 474 panic(fmt.Errorf("can't set %s on nil %s", "ConstValues", "Role")) 475 } 476 m.ConstValues = fv 477 } 478 479 func (m *Role) SetDefaultValues(fv []*ScopeParam) { 480 if m == nil { 481 panic(fmt.Errorf("can't set %s on nil %s", "DefaultValues", "Role")) 482 } 483 m.DefaultValues = fv 484 } 485 486 func (m *Role) SetGrants(fv []*Role_Grant) { 487 if m == nil { 488 panic(fmt.Errorf("can't set %s on nil %s", "Grants", "Role")) 489 } 490 m.Grants = fv 491 } 492 493 func (m *Role) SetOwnedObjects(fv []string) { 494 if m == nil { 495 panic(fmt.Errorf("can't set %s on nil %s", "OwnedObjects", "Role")) 496 } 497 m.OwnedObjects = fv 498 } 499 500 func (m *Role) SetServices(fv []*meta_service.Reference) { 501 if m == nil { 502 panic(fmt.Errorf("can't set %s on nil %s", "Services", "Role")) 503 } 504 m.Services = fv 505 } 506 507 func (m *Role) SetRbSpecGeneration(fv int64) { 508 if m == nil { 509 panic(fmt.Errorf("can't set %s on nil %s", "RbSpecGeneration", "Role")) 510 } 511 m.RbSpecGeneration = fv 512 } 513 514 type ScopeParam struct { 515 state protoimpl.MessageState 516 sizeCache protoimpl.SizeCache 517 unknownFields protoimpl.UnknownFields 518 // Name of the variable to be used in conditions/scope values. 519 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 520 // Types that are valid to be assigned to Value: 521 // *ScopeParam_String_ 522 // *ScopeParam_Strings 523 // *ScopeParam_ValueFrom 524 Value isScopeParam_Value `protobuf_oneof:"value"` 525 } 526 527 func (m *ScopeParam) Reset() { 528 *m = ScopeParam{} 529 if protoimpl.UnsafeEnabled { 530 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[1] 531 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 532 ms.StoreMessageInfo(mi) 533 } 534 } 535 536 func (m *ScopeParam) String() string { 537 return protoimpl.X.MessageStringOf(m) 538 } 539 540 func (*ScopeParam) ProtoMessage() {} 541 542 func (m *ScopeParam) ProtoReflect() preflect.Message { 543 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[1] 544 if protoimpl.UnsafeEnabled && m != nil { 545 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 546 if ms.LoadMessageInfo() == nil { 547 ms.StoreMessageInfo(mi) 548 } 549 return ms 550 } 551 return mi.MessageOf(m) 552 } 553 554 func (*ScopeParam) GotenMessage() {} 555 556 // Deprecated, Use ScopeParam.ProtoReflect.Descriptor instead. 557 func (*ScopeParam) Descriptor() ([]byte, []int) { 558 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{1} 559 } 560 561 func (m *ScopeParam) Unmarshal(b []byte) error { 562 return proto.Unmarshal(b, m) 563 } 564 565 func (m *ScopeParam) Marshal() ([]byte, error) { 566 return proto.Marshal(m) 567 } 568 569 func (m *ScopeParam) MarshalJSON() ([]byte, error) { 570 return protojson.MarshalOptions{}.Marshal(m) 571 } 572 573 func (m *ScopeParam) UnmarshalJSON(data []byte) error { 574 return protojson.Unmarshal(data, m) 575 } 576 577 type isScopeParam_Value interface { 578 isScopeParam_Value() 579 } 580 581 type ScopeParam_String_ struct { 582 // Value is a single string 583 String_ *ScopeParam_StringValue `protobuf:"bytes,2,opt,name=string,proto3,oneof"` 584 } 585 type ScopeParam_Strings struct { 586 // List of alternative values. 587 Strings *ScopeParam_ArrayOfStringsValue `protobuf:"bytes,3,opt,name=strings,proto3,oneof"` 588 } 589 type ScopeParam_ValueFrom struct { 590 // Value is extracted dynamically from pointed object type. 591 ValueFrom *ScopeParam_FromValue `protobuf:"bytes,4,opt,name=value_from,json=valueFrom,proto3,oneof"` 592 } 593 594 func (*ScopeParam_String_) isScopeParam_Value() {} 595 func (*ScopeParam_Strings) isScopeParam_Value() {} 596 func (*ScopeParam_ValueFrom) isScopeParam_Value() {} 597 func (m *ScopeParam) GetName() string { 598 if m != nil { 599 return m.Name 600 } 601 return "" 602 } 603 604 func (m *ScopeParam) GetValue() isScopeParam_Value { 605 if m != nil { 606 return m.Value 607 } 608 return nil 609 } 610 func (m *ScopeParam) GetString_() *ScopeParam_StringValue { 611 if x, ok := m.GetValue().(*ScopeParam_String_); ok { 612 return x.String_ 613 } 614 return nil 615 } 616 func (m *ScopeParam) GetStrings() *ScopeParam_ArrayOfStringsValue { 617 if x, ok := m.GetValue().(*ScopeParam_Strings); ok { 618 return x.Strings 619 } 620 return nil 621 } 622 func (m *ScopeParam) GetValueFrom() *ScopeParam_FromValue { 623 if x, ok := m.GetValue().(*ScopeParam_ValueFrom); ok { 624 return x.ValueFrom 625 } 626 return nil 627 } 628 func (m *ScopeParam) SetName(fv string) { 629 if m == nil { 630 panic(fmt.Errorf("can't set %s on nil %s", "Name", "ScopeParam")) 631 } 632 m.Name = fv 633 } 634 635 func (m *ScopeParam) SetValue(ofv isScopeParam_Value) { 636 if m == nil { 637 panic(fmt.Errorf("can't set %s on nil %s", "isScopeParam_Value", "ScopeParam")) 638 } 639 m.Value = ofv 640 } 641 func (m *ScopeParam) SetString_(fv *ScopeParam_StringValue) { 642 m.SetValue(&ScopeParam_String_{String_: fv}) 643 } 644 func (m *ScopeParam) SetStrings(fv *ScopeParam_ArrayOfStringsValue) { 645 m.SetValue(&ScopeParam_Strings{Strings: fv}) 646 } 647 func (m *ScopeParam) SetValueFrom(fv *ScopeParam_FromValue) { 648 m.SetValue(&ScopeParam_ValueFrom{ValueFrom: fv}) 649 } 650 651 type Role_ScopeParamType struct { 652 state protoimpl.MessageState 653 sizeCache protoimpl.SizeCache 654 unknownFields protoimpl.UnknownFields 655 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 656 Type Role_ScopeParamType_Type `protobuf:"varint,2,opt,name=type,proto3,enum=ntt.iam.v1.Role_ScopeParamType_Type" json:"type,omitempty"` 657 } 658 659 func (m *Role_ScopeParamType) Reset() { 660 *m = Role_ScopeParamType{} 661 if protoimpl.UnsafeEnabled { 662 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[2] 663 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 664 ms.StoreMessageInfo(mi) 665 } 666 } 667 668 func (m *Role_ScopeParamType) String() string { 669 return protoimpl.X.MessageStringOf(m) 670 } 671 672 func (*Role_ScopeParamType) ProtoMessage() {} 673 674 func (m *Role_ScopeParamType) ProtoReflect() preflect.Message { 675 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[2] 676 if protoimpl.UnsafeEnabled && m != nil { 677 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 678 if ms.LoadMessageInfo() == nil { 679 ms.StoreMessageInfo(mi) 680 } 681 return ms 682 } 683 return mi.MessageOf(m) 684 } 685 686 func (*Role_ScopeParamType) GotenMessage() {} 687 688 // Deprecated, Use Role_ScopeParamType.ProtoReflect.Descriptor instead. 689 func (*Role_ScopeParamType) Descriptor() ([]byte, []int) { 690 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{0, 0} 691 } 692 693 func (m *Role_ScopeParamType) Unmarshal(b []byte) error { 694 return proto.Unmarshal(b, m) 695 } 696 697 func (m *Role_ScopeParamType) Marshal() ([]byte, error) { 698 return proto.Marshal(m) 699 } 700 701 func (m *Role_ScopeParamType) MarshalJSON() ([]byte, error) { 702 return protojson.MarshalOptions{}.Marshal(m) 703 } 704 705 func (m *Role_ScopeParamType) UnmarshalJSON(data []byte) error { 706 return protojson.Unmarshal(data, m) 707 } 708 709 func (m *Role_ScopeParamType) GetName() string { 710 if m != nil { 711 return m.Name 712 } 713 return "" 714 } 715 716 func (m *Role_ScopeParamType) GetType() Role_ScopeParamType_Type { 717 if m != nil { 718 return m.Type 719 } 720 return Role_ScopeParamType_UNDEFINED 721 } 722 723 func (m *Role_ScopeParamType) SetName(fv string) { 724 if m == nil { 725 panic(fmt.Errorf("can't set %s on nil %s", "Name", "Role_ScopeParamType")) 726 } 727 m.Name = fv 728 } 729 730 func (m *Role_ScopeParamType) SetType(fv Role_ScopeParamType_Type) { 731 if m == nil { 732 panic(fmt.Errorf("can't set %s on nil %s", "Type", "Role_ScopeParamType")) 733 } 734 m.Type = fv 735 } 736 737 type Role_Grant struct { 738 state protoimpl.MessageState 739 sizeCache protoimpl.SizeCache 740 unknownFields protoimpl.UnknownFields 741 // Optional prefix that is APPENDED to the scope inherited from RoleBinding 742 // (project, organization, service). If not specified, then scope is 743 // equal to the one from RoleBinding. 744 SubScope string `protobuf:"bytes,1,opt,name=sub_scope,json=subScope,proto3" json:"sub_scope,omitempty"` 745 // List of applicable permissions for this grant. Not relevant if is_owner 746 // is true. 747 Permissions []*permission.Reference `protobuf:"bytes,2,rep,customtype=Reference,name=permissions,proto3" json:"permissions,omitempty"` 748 // List of resource field conditions. Values for conditions are extracted 749 // from assigned RoleBinding (scope params). 750 // Resource extraction is following: 751 // - If request has resource body, then it is used. 752 // - If request has resource name, then resource is extracted from database 753 // and its fields are used. 754 // - If request has filter object applicable for collection requests (like 755 // list, 756 // collection watch...), then service uses resource field paths and values 757 // extracted from filter conditions. 758 ResourceFieldConditions []*Role_Grant_FieldCondition `protobuf:"bytes,3,rep,name=resource_field_conditions,json=resourceFieldConditions,proto3" json:"resource_field_conditions,omitempty"` 759 // List of request field conditions. Values for conditions are extracted 760 // from assigned RoleBinding (scope params). 761 RequestFieldConditions []*Role_Grant_FieldCondition `protobuf:"bytes,4,rep,name=request_field_conditions,json=requestFieldConditions,proto3" json:"request_field_conditions,omitempty"` 762 // List of executable conditions to be applied in order to validate this 763 // grant. Note that executable conditions are also specified in RoleBinding, 764 // as often it is not possible to define all params in the Role itself, 765 // before binding. Final executable conditions, in RoleBinding context, are 766 // computed in the following way: 767 // - Executable conditions from RoleBinding and Role are matched by 768 // condition reference. 769 // - Params are merged FROM condition in Role into condition in RoleBinding. 770 // It is expected that Role defined "common" params and RoleBinding 771 // defines remaining ones. 772 ExecutableConditions []*condition.ExecutableCondition `protobuf:"bytes,5,rep,name=executable_conditions,json=executableConditions,proto3" json:"executable_conditions,omitempty"` 773 } 774 775 func (m *Role_Grant) Reset() { 776 *m = Role_Grant{} 777 if protoimpl.UnsafeEnabled { 778 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[3] 779 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 780 ms.StoreMessageInfo(mi) 781 } 782 } 783 784 func (m *Role_Grant) String() string { 785 return protoimpl.X.MessageStringOf(m) 786 } 787 788 func (*Role_Grant) ProtoMessage() {} 789 790 func (m *Role_Grant) ProtoReflect() preflect.Message { 791 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[3] 792 if protoimpl.UnsafeEnabled && m != nil { 793 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 794 if ms.LoadMessageInfo() == nil { 795 ms.StoreMessageInfo(mi) 796 } 797 return ms 798 } 799 return mi.MessageOf(m) 800 } 801 802 func (*Role_Grant) GotenMessage() {} 803 804 // Deprecated, Use Role_Grant.ProtoReflect.Descriptor instead. 805 func (*Role_Grant) Descriptor() ([]byte, []int) { 806 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{0, 1} 807 } 808 809 func (m *Role_Grant) Unmarshal(b []byte) error { 810 return proto.Unmarshal(b, m) 811 } 812 813 func (m *Role_Grant) Marshal() ([]byte, error) { 814 return proto.Marshal(m) 815 } 816 817 func (m *Role_Grant) MarshalJSON() ([]byte, error) { 818 return protojson.MarshalOptions{}.Marshal(m) 819 } 820 821 func (m *Role_Grant) UnmarshalJSON(data []byte) error { 822 return protojson.Unmarshal(data, m) 823 } 824 825 func (m *Role_Grant) GetSubScope() string { 826 if m != nil { 827 return m.SubScope 828 } 829 return "" 830 } 831 832 func (m *Role_Grant) GetPermissions() []*permission.Reference { 833 if m != nil { 834 return m.Permissions 835 } 836 return nil 837 } 838 839 func (m *Role_Grant) GetResourceFieldConditions() []*Role_Grant_FieldCondition { 840 if m != nil { 841 return m.ResourceFieldConditions 842 } 843 return nil 844 } 845 846 func (m *Role_Grant) GetRequestFieldConditions() []*Role_Grant_FieldCondition { 847 if m != nil { 848 return m.RequestFieldConditions 849 } 850 return nil 851 } 852 853 func (m *Role_Grant) GetExecutableConditions() []*condition.ExecutableCondition { 854 if m != nil { 855 return m.ExecutableConditions 856 } 857 return nil 858 } 859 860 func (m *Role_Grant) SetSubScope(fv string) { 861 if m == nil { 862 panic(fmt.Errorf("can't set %s on nil %s", "SubScope", "Role_Grant")) 863 } 864 m.SubScope = fv 865 } 866 867 func (m *Role_Grant) SetPermissions(fv []*permission.Reference) { 868 if m == nil { 869 panic(fmt.Errorf("can't set %s on nil %s", "Permissions", "Role_Grant")) 870 } 871 m.Permissions = fv 872 } 873 874 func (m *Role_Grant) SetResourceFieldConditions(fv []*Role_Grant_FieldCondition) { 875 if m == nil { 876 panic(fmt.Errorf("can't set %s on nil %s", "ResourceFieldConditions", "Role_Grant")) 877 } 878 m.ResourceFieldConditions = fv 879 } 880 881 func (m *Role_Grant) SetRequestFieldConditions(fv []*Role_Grant_FieldCondition) { 882 if m == nil { 883 panic(fmt.Errorf("can't set %s on nil %s", "RequestFieldConditions", "Role_Grant")) 884 } 885 m.RequestFieldConditions = fv 886 } 887 888 func (m *Role_Grant) SetExecutableConditions(fv []*condition.ExecutableCondition) { 889 if m == nil { 890 panic(fmt.Errorf("can't set %s on nil %s", "ExecutableConditions", "Role_Grant")) 891 } 892 m.ExecutableConditions = fv 893 } 894 895 type Role_Grant_FieldCondition struct { 896 state protoimpl.MessageState 897 sizeCache protoimpl.SizeCache 898 unknownFields protoimpl.UnknownFields 899 Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` 900 Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` 901 } 902 903 func (m *Role_Grant_FieldCondition) Reset() { 904 *m = Role_Grant_FieldCondition{} 905 if protoimpl.UnsafeEnabled { 906 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[4] 907 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 908 ms.StoreMessageInfo(mi) 909 } 910 } 911 912 func (m *Role_Grant_FieldCondition) String() string { 913 return protoimpl.X.MessageStringOf(m) 914 } 915 916 func (*Role_Grant_FieldCondition) ProtoMessage() {} 917 918 func (m *Role_Grant_FieldCondition) ProtoReflect() preflect.Message { 919 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[4] 920 if protoimpl.UnsafeEnabled && m != nil { 921 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 922 if ms.LoadMessageInfo() == nil { 923 ms.StoreMessageInfo(mi) 924 } 925 return ms 926 } 927 return mi.MessageOf(m) 928 } 929 930 func (*Role_Grant_FieldCondition) GotenMessage() {} 931 932 // Deprecated, Use Role_Grant_FieldCondition.ProtoReflect.Descriptor instead. 933 func (*Role_Grant_FieldCondition) Descriptor() ([]byte, []int) { 934 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{0, 1, 0} 935 } 936 937 func (m *Role_Grant_FieldCondition) Unmarshal(b []byte) error { 938 return proto.Unmarshal(b, m) 939 } 940 941 func (m *Role_Grant_FieldCondition) Marshal() ([]byte, error) { 942 return proto.Marshal(m) 943 } 944 945 func (m *Role_Grant_FieldCondition) MarshalJSON() ([]byte, error) { 946 return protojson.MarshalOptions{}.Marshal(m) 947 } 948 949 func (m *Role_Grant_FieldCondition) UnmarshalJSON(data []byte) error { 950 return protojson.Unmarshal(data, m) 951 } 952 953 func (m *Role_Grant_FieldCondition) GetPath() string { 954 if m != nil { 955 return m.Path 956 } 957 return "" 958 } 959 960 func (m *Role_Grant_FieldCondition) GetValue() string { 961 if m != nil { 962 return m.Value 963 } 964 return "" 965 } 966 967 func (m *Role_Grant_FieldCondition) SetPath(fv string) { 968 if m == nil { 969 panic(fmt.Errorf("can't set %s on nil %s", "Path", "Role_Grant_FieldCondition")) 970 } 971 m.Path = fv 972 } 973 974 func (m *Role_Grant_FieldCondition) SetValue(fv string) { 975 if m == nil { 976 panic(fmt.Errorf("can't set %s on nil %s", "Value", "Role_Grant_FieldCondition")) 977 } 978 m.Value = fv 979 } 980 981 // StringValue represents single value 982 type ScopeParam_StringValue struct { 983 state protoimpl.MessageState 984 sizeCache protoimpl.SizeCache 985 unknownFields protoimpl.UnknownFields 986 Value string `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"` 987 } 988 989 func (m *ScopeParam_StringValue) Reset() { 990 *m = ScopeParam_StringValue{} 991 if protoimpl.UnsafeEnabled { 992 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[5] 993 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 994 ms.StoreMessageInfo(mi) 995 } 996 } 997 998 func (m *ScopeParam_StringValue) String() string { 999 return protoimpl.X.MessageStringOf(m) 1000 } 1001 1002 func (*ScopeParam_StringValue) ProtoMessage() {} 1003 1004 func (m *ScopeParam_StringValue) ProtoReflect() preflect.Message { 1005 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[5] 1006 if protoimpl.UnsafeEnabled && m != nil { 1007 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1008 if ms.LoadMessageInfo() == nil { 1009 ms.StoreMessageInfo(mi) 1010 } 1011 return ms 1012 } 1013 return mi.MessageOf(m) 1014 } 1015 1016 func (*ScopeParam_StringValue) GotenMessage() {} 1017 1018 // Deprecated, Use ScopeParam_StringValue.ProtoReflect.Descriptor instead. 1019 func (*ScopeParam_StringValue) Descriptor() ([]byte, []int) { 1020 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{1, 0} 1021 } 1022 1023 func (m *ScopeParam_StringValue) Unmarshal(b []byte) error { 1024 return proto.Unmarshal(b, m) 1025 } 1026 1027 func (m *ScopeParam_StringValue) Marshal() ([]byte, error) { 1028 return proto.Marshal(m) 1029 } 1030 1031 func (m *ScopeParam_StringValue) MarshalJSON() ([]byte, error) { 1032 return protojson.MarshalOptions{}.Marshal(m) 1033 } 1034 1035 func (m *ScopeParam_StringValue) UnmarshalJSON(data []byte) error { 1036 return protojson.Unmarshal(data, m) 1037 } 1038 1039 func (m *ScopeParam_StringValue) GetValue() string { 1040 if m != nil { 1041 return m.Value 1042 } 1043 return "" 1044 } 1045 1046 func (m *ScopeParam_StringValue) SetValue(fv string) { 1047 if m == nil { 1048 panic(fmt.Errorf("can't set %s on nil %s", "Value", "ScopeParam_StringValue")) 1049 } 1050 m.Value = fv 1051 } 1052 1053 // ArrayOfStringsValue represents array of strings value 1054 type ScopeParam_ArrayOfStringsValue struct { 1055 state protoimpl.MessageState 1056 sizeCache protoimpl.SizeCache 1057 unknownFields protoimpl.UnknownFields 1058 Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` 1059 } 1060 1061 func (m *ScopeParam_ArrayOfStringsValue) Reset() { 1062 *m = ScopeParam_ArrayOfStringsValue{} 1063 if protoimpl.UnsafeEnabled { 1064 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[6] 1065 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1066 ms.StoreMessageInfo(mi) 1067 } 1068 } 1069 1070 func (m *ScopeParam_ArrayOfStringsValue) String() string { 1071 return protoimpl.X.MessageStringOf(m) 1072 } 1073 1074 func (*ScopeParam_ArrayOfStringsValue) ProtoMessage() {} 1075 1076 func (m *ScopeParam_ArrayOfStringsValue) ProtoReflect() preflect.Message { 1077 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[6] 1078 if protoimpl.UnsafeEnabled && m != nil { 1079 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1080 if ms.LoadMessageInfo() == nil { 1081 ms.StoreMessageInfo(mi) 1082 } 1083 return ms 1084 } 1085 return mi.MessageOf(m) 1086 } 1087 1088 func (*ScopeParam_ArrayOfStringsValue) GotenMessage() {} 1089 1090 // Deprecated, Use ScopeParam_ArrayOfStringsValue.ProtoReflect.Descriptor instead. 1091 func (*ScopeParam_ArrayOfStringsValue) Descriptor() ([]byte, []int) { 1092 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{1, 1} 1093 } 1094 1095 func (m *ScopeParam_ArrayOfStringsValue) Unmarshal(b []byte) error { 1096 return proto.Unmarshal(b, m) 1097 } 1098 1099 func (m *ScopeParam_ArrayOfStringsValue) Marshal() ([]byte, error) { 1100 return proto.Marshal(m) 1101 } 1102 1103 func (m *ScopeParam_ArrayOfStringsValue) MarshalJSON() ([]byte, error) { 1104 return protojson.MarshalOptions{}.Marshal(m) 1105 } 1106 1107 func (m *ScopeParam_ArrayOfStringsValue) UnmarshalJSON(data []byte) error { 1108 return protojson.Unmarshal(data, m) 1109 } 1110 1111 func (m *ScopeParam_ArrayOfStringsValue) GetValues() []string { 1112 if m != nil { 1113 return m.Values 1114 } 1115 return nil 1116 } 1117 1118 func (m *ScopeParam_ArrayOfStringsValue) SetValues(fv []string) { 1119 if m == nil { 1120 panic(fmt.Errorf("can't set %s on nil %s", "Values", "ScopeParam_ArrayOfStringsValue")) 1121 } 1122 m.Values = fv 1123 } 1124 1125 // FromValue represents a value(s) from specific dynamic object. 1126 type ScopeParam_FromValue struct { 1127 state protoimpl.MessageState 1128 sizeCache protoimpl.SizeCache 1129 unknownFields protoimpl.UnknownFields 1130 // Source indicates type of dynamic object from where we take value(s). 1131 Source ScopeParam_FromValue_Source `protobuf:"varint,1,opt,name=source,proto3,enum=ntt.iam.v1.ScopeParam_FromValue_Source" json:"source,omitempty"` 1132 // Path within specified object from which exactly we get value(s). 1133 Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"` 1134 } 1135 1136 func (m *ScopeParam_FromValue) Reset() { 1137 *m = ScopeParam_FromValue{} 1138 if protoimpl.UnsafeEnabled { 1139 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[7] 1140 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1141 ms.StoreMessageInfo(mi) 1142 } 1143 } 1144 1145 func (m *ScopeParam_FromValue) String() string { 1146 return protoimpl.X.MessageStringOf(m) 1147 } 1148 1149 func (*ScopeParam_FromValue) ProtoMessage() {} 1150 1151 func (m *ScopeParam_FromValue) ProtoReflect() preflect.Message { 1152 mi := &edgelq_iam_proto_v1_role_proto_msgTypes[7] 1153 if protoimpl.UnsafeEnabled && m != nil { 1154 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m)) 1155 if ms.LoadMessageInfo() == nil { 1156 ms.StoreMessageInfo(mi) 1157 } 1158 return ms 1159 } 1160 return mi.MessageOf(m) 1161 } 1162 1163 func (*ScopeParam_FromValue) GotenMessage() {} 1164 1165 // Deprecated, Use ScopeParam_FromValue.ProtoReflect.Descriptor instead. 1166 func (*ScopeParam_FromValue) Descriptor() ([]byte, []int) { 1167 return edgelq_iam_proto_v1_role_proto_rawDescGZIP(), []int{1, 2} 1168 } 1169 1170 func (m *ScopeParam_FromValue) Unmarshal(b []byte) error { 1171 return proto.Unmarshal(b, m) 1172 } 1173 1174 func (m *ScopeParam_FromValue) Marshal() ([]byte, error) { 1175 return proto.Marshal(m) 1176 } 1177 1178 func (m *ScopeParam_FromValue) MarshalJSON() ([]byte, error) { 1179 return protojson.MarshalOptions{}.Marshal(m) 1180 } 1181 1182 func (m *ScopeParam_FromValue) UnmarshalJSON(data []byte) error { 1183 return protojson.Unmarshal(data, m) 1184 } 1185 1186 func (m *ScopeParam_FromValue) GetSource() ScopeParam_FromValue_Source { 1187 if m != nil { 1188 return m.Source 1189 } 1190 return ScopeParam_FromValue_UNDEFINED 1191 } 1192 1193 func (m *ScopeParam_FromValue) GetPath() string { 1194 if m != nil { 1195 return m.Path 1196 } 1197 return "" 1198 } 1199 1200 func (m *ScopeParam_FromValue) SetSource(fv ScopeParam_FromValue_Source) { 1201 if m == nil { 1202 panic(fmt.Errorf("can't set %s on nil %s", "Source", "ScopeParam_FromValue")) 1203 } 1204 m.Source = fv 1205 } 1206 1207 func (m *ScopeParam_FromValue) SetPath(fv string) { 1208 if m == nil { 1209 panic(fmt.Errorf("can't set %s on nil %s", "Path", "ScopeParam_FromValue")) 1210 } 1211 m.Path = fv 1212 } 1213 1214 var edgelq_iam_proto_v1_role_proto preflect.FileDescriptor 1215 1216 var edgelq_iam_proto_v1_role_proto_rawDesc = []byte{ 1217 0x0a, 0x1e, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x69, 0x61, 0x6d, 0x2f, 0x70, 0x72, 0x6f, 1218 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x6f, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1219 0x12, 0x0a, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x1a, 0x19, 0x67, 0x6f, 1220 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 1221 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x61, 1222 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 1223 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 0x6f, 0x74, 0x65, 0x6e, 1224 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x67, 0x6f, 0x74, 1225 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 1226 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x72, 0x65, 0x73, 0x6f, 1227 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x67, 0x6f, 0x74, 0x65, 1228 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x74, 1229 0x6f, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x74, 0x65, 0x6e, 1230 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x65, 0x72, 1231 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x67, 0x6f, 0x74, 0x65, 1232 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x6d, 0x75, 1233 0x6c, 0x74, 0x69, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1234 0x1a, 0x24, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2f, 0x61, 1235 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x74, 1236 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2f, 0x74, 0x79, 1237 0x70, 0x65, 0x73, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 1238 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x69, 0x61, 0x6d, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1239 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 1240 0x6f, 0x74, 0x6f, 0x22, 0xee, 0x0e, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x04, 1241 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0c, 0xb2, 0xda, 0x21, 0x08, 1242 0x0a, 0x06, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 1243 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 1244 0x32, 0x11, 0x2e, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x4d, 1245 0x65, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2e, 0x0a, 1246 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 1247 0x01, 0x28, 0x09, 0x42, 0x0b, 0xca, 0xc6, 0x27, 0x07, 0x2a, 0x05, 0x22, 0x03, 0x08, 0x80, 0x02, 1248 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 1249 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 1250 0x28, 0x09, 0x42, 0x0b, 0xca, 0xc6, 0x27, 0x07, 0x2a, 0x05, 0x22, 0x03, 0x08, 0x80, 0x08, 0x52, 1251 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x08, 1252 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 1253 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 1254 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x3a, 1255 0x02, 0x10, 0x01, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x42, 0x0a, 1256 0x0c, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 1257 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 1258 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 1259 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 1260 0x73, 0x12, 0x39, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 1261 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 1262 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 1263 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x0e, 1264 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x0c, 1265 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 1266 0x31, 0x2e, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x52, 0x0d, 0x64, 0x65, 1267 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x06, 0x67, 1268 0x72, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6e, 0x74, 1269 0x74, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x47, 0x72, 1270 0x61, 0x6e, 0x74, 0x52, 0x06, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 1271 0x77, 0x6e, 0x65, 0x64, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 1272 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 1273 0x12, 0x40, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 1274 0x28, 0x09, 0x42, 0x24, 0xf0, 0xd9, 0x21, 0x01, 0xb2, 0xda, 0x21, 0x1c, 0x12, 0x1a, 0x0a, 0x16, 1275 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 1276 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x10, 0x05, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 1277 0x65, 0x73, 0x12, 0x32, 0x0a, 0x12, 0x72, 0x62, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x67, 0x65, 1278 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x42, 0x04, 1279 0xf0, 0xd9, 0x21, 0x01, 0x52, 0x10, 0x72, 0x62, 0x53, 0x70, 0x65, 0x63, 0x47, 0x65, 0x6e, 0x65, 1280 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xb0, 0x01, 0x0a, 0x0e, 0x53, 0x63, 0x6f, 0x70, 0x65, 1281 0x50, 0x61, 0x72, 0x61, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 1282 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xca, 0xc6, 0x27, 0x09, 0x2a, 0x07, 0x3a, 1283 0x03, 0x08, 0x80, 0x01, 0x68, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x04, 1284 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6e, 0x74, 0x74, 1285 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x53, 0x63, 0x6f, 1286 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 1287 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x3a, 0x02, 0x10, 0x01, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 1288 0x22, 0x37, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4e, 0x44, 0x45, 1289 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 1290 0x47, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x52, 0x52, 0x41, 0x59, 0x5f, 0x4f, 0x46, 0x5f, 1291 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x53, 0x10, 0x02, 0x1a, 0xdd, 0x03, 0x0a, 0x05, 0x47, 0x72, 1292 0x61, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 1293 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xca, 0xc6, 0x27, 0x07, 0x2a, 0x05, 0x3a, 0x03, 1294 0x08, 0x80, 0x04, 0x52, 0x08, 0x73, 0x75, 0x62, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x36, 0x0a, 1295 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 1296 0x28, 0x09, 0x42, 0x14, 0xb2, 0xda, 0x21, 0x10, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x65, 0x72, 0x6d, 1297 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x10, 0x06, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 1298 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x61, 0x0a, 0x19, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 1299 0x65, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 1300 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 1301 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 1302 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 1303 0x17, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x43, 0x6f, 1304 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5f, 0x0a, 0x18, 0x72, 0x65, 0x71, 0x75, 1305 0x65, 0x73, 0x74, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 1306 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6e, 0x74, 0x74, 1307 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x47, 0x72, 0x61, 1308 0x6e, 0x74, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 1309 0x6e, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x43, 1310 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x54, 0x0a, 0x15, 0x65, 0x78, 0x65, 1311 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 1312 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 1313 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 1314 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x65, 0x78, 0x65, 0x63, 0x75, 1315 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 1316 0x58, 0x0a, 0x0e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 1317 0x6e, 0x12, 0x21, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 1318 0x0d, 0xca, 0xc6, 0x27, 0x09, 0x2a, 0x07, 0x3a, 0x03, 0x08, 0x80, 0x04, 0x68, 0x01, 0x52, 0x04, 1319 0x70, 0x61, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 1320 0x01, 0x28, 0x09, 0x42, 0x0d, 0xca, 0xc6, 0x27, 0x09, 0x2a, 0x07, 0x3a, 0x03, 0x08, 0x80, 0x04, 1321 0x68, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x60, 0x0a, 0x08, 0x43, 0x61, 0x74, 1322 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 1323 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x10, 0x01, 1324 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x09, 1325 0x0a, 0x05, 0x4f, 0x57, 0x4e, 0x45, 0x52, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x45, 0x52, 1326 0x56, 0x49, 0x43, 0x45, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 1327 0x05, 0x12, 0x08, 0x0a, 0x04, 0x55, 0x53, 0x45, 0x52, 0x10, 0x06, 0x3a, 0xf6, 0x03, 0xea, 0x41, 1328 0x82, 0x01, 0x0a, 0x13, 0x69, 0x61, 0x6d, 0x2e, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2e, 0x63, 1329 0x6f, 0x6d, 0x2f, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x1f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 1330 0x73, 0x2f, 0x7b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x7d, 0x2f, 0x72, 0x6f, 0x6c, 0x65, 1331 0x73, 0x2f, 0x7b, 0x72, 0x6f, 0x6c, 0x65, 0x7d, 0x12, 0x1f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 1332 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x72, 0x6f, 0x6c, 1333 0x65, 0x73, 0x2f, 0x7b, 0x72, 0x6f, 0x6c, 0x65, 0x7d, 0x12, 0x29, 0x6f, 0x72, 0x67, 0x61, 0x6e, 1334 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 1335 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x2f, 0x7b, 0x72, 1336 0x6f, 0x6c, 0x65, 0x7d, 0x92, 0xd9, 0x21, 0xbe, 0x01, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 1337 0x12, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x1a, 0x16, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x67, 0x6f, 1338 0x74, 0x65, 0x6e, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x1a, 1339 0x07, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x1a, 0x0c, 0x4f, 0x72, 0x67, 0x61, 0x6e, 0x69, 1340 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x13, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 1341 0x2d, 0x39, 0x2d, 0x5d, 0x7b, 0x31, 0x2c, 0x31, 0x32, 0x38, 0x7d, 0x38, 0x05, 0x42, 0x26, 0x08, 1342 0x02, 0x12, 0x06, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x0c, 0x64, 0x69, 0x73, 1343 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0a, 0x0a, 0x08, 0x73, 0x65, 0x72, 1344 0x76, 0x69, 0x63, 0x65, 0x73, 0x42, 0x40, 0x08, 0x03, 0x12, 0x06, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 1345 0x65, 0x12, 0x0e, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 1346 0x65, 0x12, 0x0a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x0e, 0x0a, 1347 0x0c, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x08, 0x0a, 1348 0x06, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x73, 0xda, 0x94, 0x23, 0x08, 0x12, 0x06, 0x0a, 0x04, 0x6e, 1349 0x61, 0x6d, 0x65, 0xe2, 0xde, 0x21, 0x02, 0x08, 0x03, 0xc2, 0x85, 0x2c, 0x96, 0x01, 0x22, 0x04, 1350 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 1351 0x6d, 0x65, 0x22, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 1352 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x0c, 0x73, 0x63, 0x6f, 0x70, 0x65, 1353 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x0c, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x5f, 0x76, 1354 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x76, 1355 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x06, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x22, 0x08, 0x73, 1356 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x22, 0x0d, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x5f, 0x6f, 1357 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x42, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 1358 0x42, 0x12, 0x72, 0x62, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 1359 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x84, 0x04, 0x0a, 0x0a, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x50, 0x61, 1360 0x72, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 1361 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 1362 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 1363 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x2e, 1364 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x06, 0x73, 1365 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x46, 0x0a, 0x07, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 1366 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 0x6d, 1367 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x41, 1368 0x72, 0x72, 0x61, 0x79, 0x4f, 0x66, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x56, 0x61, 0x6c, 1369 0x75, 0x65, 0x48, 0x00, 0x52, 0x07, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x41, 0x0a, 1370 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 1371 0x0b, 0x32, 0x20, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 1372 0x63, 0x6f, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x56, 0x61, 1373 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x72, 0x6f, 0x6d, 1374 0x1a, 0x23, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 1375 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 1376 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x2d, 0x0a, 0x13, 0x41, 0x72, 0x72, 0x61, 0x79, 0x4f, 0x66, 1377 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x16, 0x0a, 0x06, 1378 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x76, 0x61, 1379 0x6c, 0x75, 0x65, 0x73, 0x1a, 0xbb, 0x01, 0x0a, 0x09, 0x46, 0x72, 0x6f, 0x6d, 0x56, 0x61, 0x6c, 1380 0x75, 0x65, 0x12, 0x3f, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 1381 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 1382 0x53, 0x63, 0x6f, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x56, 1383 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x06, 0x73, 0x6f, 0x75, 1384 0x72, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 1385 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x22, 0x59, 0x0a, 0x06, 0x53, 0x6f, 0x75, 0x72, 0x63, 1386 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x4e, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x00, 1387 0x12, 0x16, 0x0a, 0x12, 0x50, 0x52, 0x49, 0x4e, 0x43, 0x49, 0x50, 0x41, 0x4c, 0x5f, 0x4d, 0x45, 1388 0x54, 0x41, 0x44, 0x41, 0x54, 0x41, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x52, 0x49, 0x4e, 1389 0x43, 0x49, 0x50, 0x41, 0x4c, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 1390 0x50, 0x52, 0x49, 0x4e, 0x43, 0x49, 0x50, 0x41, 0x4c, 0x5f, 0x53, 0x56, 0x43, 0x41, 0x43, 0x43, 1391 0x10, 0x03, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0xdb, 0x01, 0xe8, 0xde, 1392 0x21, 0x01, 0xd2, 0xff, 0xd0, 0x02, 0x3a, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x74, 1393 0x6f, 0x72, 0x65, 0x12, 0x2c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 1394 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x77, 0x61, 0x6e, 0x2f, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 1395 0x69, 0x61, 0x6d, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x6f, 0x6c, 1396 0x65, 0xa2, 0x80, 0xd1, 0x02, 0x3c, 0x0a, 0x0b, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61, 0x63, 0x63, 1397 0x65, 0x73, 0x73, 0x12, 0x2d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 1398 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x77, 0x61, 0x6e, 0x2f, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 1399 0x69, 0x61, 0x6d, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x6f, 1400 0x6c, 0x65, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 1401 0x70, 0x62, 0x2e, 0x76, 0x31, 0x42, 0x09, 0x52, 0x6f, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 1402 0x50, 0x01, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 1403 0x6c, 0x6f, 0x75, 0x64, 0x77, 0x61, 0x6e, 0x2f, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x69, 1404 0x61, 0x6d, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 1405 0x72, 0x6f, 0x6c, 0x65, 0x3b, 0x72, 0x6f, 0x6c, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1406 0x33, 1407 } 1408 1409 var ( 1410 edgelq_iam_proto_v1_role_proto_rawDescOnce sync.Once 1411 edgelq_iam_proto_v1_role_proto_rawDescData = edgelq_iam_proto_v1_role_proto_rawDesc 1412 ) 1413 1414 func edgelq_iam_proto_v1_role_proto_rawDescGZIP() []byte { 1415 edgelq_iam_proto_v1_role_proto_rawDescOnce.Do(func() { 1416 edgelq_iam_proto_v1_role_proto_rawDescData = protoimpl.X.CompressGZIP(edgelq_iam_proto_v1_role_proto_rawDescData) 1417 }) 1418 return edgelq_iam_proto_v1_role_proto_rawDescData 1419 } 1420 1421 var edgelq_iam_proto_v1_role_proto_enumTypes = make([]protoimpl.EnumInfo, 3) 1422 var edgelq_iam_proto_v1_role_proto_msgTypes = make([]protoimpl.MessageInfo, 8) 1423 var edgelq_iam_proto_v1_role_proto_goTypes = []interface{}{ 1424 (Role_Category)(0), // 0: ntt.iam.v1.Role_Category 1425 (Role_ScopeParamType_Type)(0), // 1: ntt.iam.v1.Role_ScopeParamType_Type 1426 (ScopeParam_FromValue_Source)(0), // 2: ntt.iam.v1.ScopeParam_FromValue_Source 1427 (*Role)(nil), // 3: ntt.iam.v1.Role 1428 (*ScopeParam)(nil), // 4: ntt.iam.v1.ScopeParam 1429 (*Role_ScopeParamType)(nil), // 5: ntt.iam.v1.Role.ScopeParamType 1430 (*Role_Grant)(nil), // 6: ntt.iam.v1.Role.Grant 1431 (*Role_Grant_FieldCondition)(nil), // 7: ntt.iam.v1.Role.Grant.FieldCondition 1432 (*ScopeParam_StringValue)(nil), // 8: ntt.iam.v1.ScopeParam.StringValue 1433 (*ScopeParam_ArrayOfStringsValue)(nil), // 9: ntt.iam.v1.ScopeParam.ArrayOfStringsValue 1434 (*ScopeParam_FromValue)(nil), // 10: ntt.iam.v1.ScopeParam.FromValue 1435 (*meta.Meta)(nil), // 11: goten.types.Meta 1436 (*condition.ExecutableCondition)(nil), // 12: ntt.iam.v1.ExecutableCondition 1437 } 1438 var edgelq_iam_proto_v1_role_proto_depIdxs = []int32{ 1439 11, // 0: ntt.iam.v1.Role.metadata:type_name -> goten.types.Meta 1440 0, // 1: ntt.iam.v1.Role.category:type_name -> ntt.iam.v1.Role_Category 1441 5, // 2: ntt.iam.v1.Role.scope_params:type_name -> ntt.iam.v1.Role.ScopeParamType 1442 4, // 3: ntt.iam.v1.Role.const_values:type_name -> ntt.iam.v1.ScopeParam 1443 4, // 4: ntt.iam.v1.Role.default_values:type_name -> ntt.iam.v1.ScopeParam 1444 6, // 5: ntt.iam.v1.Role.grants:type_name -> ntt.iam.v1.Role.Grant 1445 8, // 6: ntt.iam.v1.ScopeParam.string:type_name -> ntt.iam.v1.ScopeParam.StringValue 1446 9, // 7: ntt.iam.v1.ScopeParam.strings:type_name -> ntt.iam.v1.ScopeParam.ArrayOfStringsValue 1447 10, // 8: ntt.iam.v1.ScopeParam.value_from:type_name -> ntt.iam.v1.ScopeParam.FromValue 1448 1, // 9: ntt.iam.v1.Role.ScopeParamType.type:type_name -> ntt.iam.v1.Role_ScopeParamType_Type 1449 7, // 10: ntt.iam.v1.Role.Grant.resource_field_conditions:type_name -> ntt.iam.v1.Role.Grant.FieldCondition 1450 7, // 11: ntt.iam.v1.Role.Grant.request_field_conditions:type_name -> ntt.iam.v1.Role.Grant.FieldCondition 1451 12, // 12: ntt.iam.v1.Role.Grant.executable_conditions:type_name -> ntt.iam.v1.ExecutableCondition 1452 2, // 13: ntt.iam.v1.ScopeParam.FromValue.source:type_name -> ntt.iam.v1.ScopeParam_FromValue_Source 1453 14, // [14:14] is the sub-list for method output_type 1454 14, // [14:14] is the sub-list for method input_type 1455 14, // [14:14] is the sub-list for extension type_name 1456 14, // [14:14] is the sub-list for extension extendee 1457 0, // [0:14] is the sub-list for field type_name 1458 } 1459 1460 func init() { edgelq_iam_proto_v1_role_proto_init() } 1461 func edgelq_iam_proto_v1_role_proto_init() { 1462 if edgelq_iam_proto_v1_role_proto != nil { 1463 return 1464 } 1465 if !protoimpl.UnsafeEnabled { 1466 1467 edgelq_iam_proto_v1_role_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1468 switch v := v.(*Role); i { 1469 case 0: 1470 return &v.state 1471 case 1: 1472 return &v.sizeCache 1473 case 2: 1474 return &v.unknownFields 1475 default: 1476 return nil 1477 } 1478 } 1479 edgelq_iam_proto_v1_role_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1480 switch v := v.(*ScopeParam); i { 1481 case 0: 1482 return &v.state 1483 case 1: 1484 return &v.sizeCache 1485 case 2: 1486 return &v.unknownFields 1487 default: 1488 return nil 1489 } 1490 } 1491 edgelq_iam_proto_v1_role_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1492 switch v := v.(*Role_ScopeParamType); i { 1493 case 0: 1494 return &v.state 1495 case 1: 1496 return &v.sizeCache 1497 case 2: 1498 return &v.unknownFields 1499 default: 1500 return nil 1501 } 1502 } 1503 edgelq_iam_proto_v1_role_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1504 switch v := v.(*Role_Grant); i { 1505 case 0: 1506 return &v.state 1507 case 1: 1508 return &v.sizeCache 1509 case 2: 1510 return &v.unknownFields 1511 default: 1512 return nil 1513 } 1514 } 1515 edgelq_iam_proto_v1_role_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1516 switch v := v.(*Role_Grant_FieldCondition); i { 1517 case 0: 1518 return &v.state 1519 case 1: 1520 return &v.sizeCache 1521 case 2: 1522 return &v.unknownFields 1523 default: 1524 return nil 1525 } 1526 } 1527 edgelq_iam_proto_v1_role_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1528 switch v := v.(*ScopeParam_StringValue); i { 1529 case 0: 1530 return &v.state 1531 case 1: 1532 return &v.sizeCache 1533 case 2: 1534 return &v.unknownFields 1535 default: 1536 return nil 1537 } 1538 } 1539 edgelq_iam_proto_v1_role_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 1540 switch v := v.(*ScopeParam_ArrayOfStringsValue); i { 1541 case 0: 1542 return &v.state 1543 case 1: 1544 return &v.sizeCache 1545 case 2: 1546 return &v.unknownFields 1547 default: 1548 return nil 1549 } 1550 } 1551 edgelq_iam_proto_v1_role_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 1552 switch v := v.(*ScopeParam_FromValue); i { 1553 case 0: 1554 return &v.state 1555 case 1: 1556 return &v.sizeCache 1557 case 2: 1558 return &v.unknownFields 1559 default: 1560 return nil 1561 } 1562 } 1563 } 1564 1565 edgelq_iam_proto_v1_role_proto_msgTypes[1].OneofWrappers = []interface{}{ 1566 (*ScopeParam_String_)(nil), 1567 (*ScopeParam_Strings)(nil), 1568 (*ScopeParam_ValueFrom)(nil), 1569 } 1570 type x struct{} 1571 out := protoimpl.TypeBuilder{ 1572 File: protoimpl.DescBuilder{ 1573 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1574 RawDescriptor: edgelq_iam_proto_v1_role_proto_rawDesc, 1575 NumEnums: 3, 1576 NumMessages: 8, 1577 NumExtensions: 0, 1578 NumServices: 0, 1579 }, 1580 GoTypes: edgelq_iam_proto_v1_role_proto_goTypes, 1581 DependencyIndexes: edgelq_iam_proto_v1_role_proto_depIdxs, 1582 EnumInfos: edgelq_iam_proto_v1_role_proto_enumTypes, 1583 MessageInfos: edgelq_iam_proto_v1_role_proto_msgTypes, 1584 }.Build() 1585 edgelq_iam_proto_v1_role_proto = out.File 1586 edgelq_iam_proto_v1_role_proto_rawDesc = nil 1587 edgelq_iam_proto_v1_role_proto_goTypes = nil 1588 edgelq_iam_proto_v1_role_proto_depIdxs = nil 1589 }