github.com/cloudwan/edgelq-sdk@v1.15.4/iam/proto/v1/service_account.proto (about)

     1  syntax = "proto3";
     2  
     3  package ntt.iam.v1;
     4  
     5  import "google/api/resource.proto";
     6  import "goten-sdk/types/meta.proto";
     7  
     8  option go_package = "github.com/cloudwan/edgelq-sdk/iam/resources/v1/service_account;service_account";
     9  option java_multiple_files = true;
    10  option java_outer_classname = "ServiceAccountProto";
    11  option java_package = "com.ntt.iam.pb.v1";
    12  
    13  // ServiceAccount Resource
    14  message ServiceAccount {
    15    option (google.api.resource) = {
    16      type : "iam.edgelq.com/ServiceAccount"
    17      pattern : "projects/{project}/regions/{region}/serviceAccounts/"
    18                "{service_account}"
    19    };
    20  
    21    // Name of ServiceAccount
    22    // When creating a new instance, this field is optional and if not provided,
    23    // it will be generated automatically. Last ID segment must conform to the
    24    // following regex: [a-z][a-z0-9\-_]{0,55}[a-z0-9]
    25    string name = 1;
    26  
    27    // Metadata is an object with information like create, update and delete time
    28    // (for async deleted resources), has user labels/annotations, sharding
    29    // information, multi-region syncing information and may have non-schema
    30    // owners (useful for taking ownership of resources belonging to lower level
    31    // services by higher ones).
    32    goten.types.Meta metadata = 3;
    33  
    34    // Display Name
    35    string display_name = 2;
    36  
    37    // Optional. Description of the account
    38    string description = 5;
    39  
    40    // Email
    41    string email = 4;
    42  
    43    // Agent kind and purpose. Cannot be changed.
    44    Kind kind = 6;
    45  
    46    // Kind indicates purpose of the service account.
    47    enum Kind {
    48      // Any purpose
    49      UNSPECIFIED = 0;
    50  
    51      // Agent indicates that ServiceAccount is associated with some single
    52      // specific resource, like devices.edgelq.com/Device. Agent Service Accounts
    53      // are automatically sharded and should ideally use dedicated server
    54      // instances holding their shard. Agent type accounts are allowed to have
    55      // only RoleBindings in their projects. They cannot have domain role
    56      // bindings. They can still benefit from AllUsers/AllAuthenticatedUsers role
    57      // bindings though.
    58      AGENT = 1;
    59    }
    60  }