github.com/treeverse/lakefs@v1.24.1-0.20240520134607-95648127bfb0/pkg/auth/model/model.proto (about)

     1  syntax = "proto3";
     2  option go_package = "github.com/treeverse/lakefs/auth/model";
     3  
     4  import "google/protobuf/timestamp.proto";
     5  
     6  package io.treeverse.lakefs.auth.model;
     7  
     8  // message data model for model.User struct
     9  message UserData {
    10      google.protobuf.Timestamp created_at = 1;
    11      string username = 2;
    12      string friendly_name = 3;
    13      string email = 4;
    14      bytes encrypted_password = 5;
    15      string source = 6;
    16      string external_id = 7;
    17  }
    18  
    19  // message data model for model.Group struct
    20  message GroupData {
    21      google.protobuf.Timestamp created_at = 1;
    22      string display_name = 2;
    23  }
    24  
    25  // message data model for model.ACL struct
    26  message ACLData {
    27      string permission = 1;
    28      bool all_repositories = 2 [deprecated = true];
    29      repeated string repositories = 3 [deprecated = true];
    30  }
    31  
    32  // message data model for model.Policy struct
    33  message PolicyData {
    34      google.protobuf.Timestamp created_at = 1;
    35      string display_name = 2;
    36      repeated StatementData statements = 3;
    37  
    38      ACLData acl = 4;
    39  }
    40  
    41  // message data model for model.Credential struct
    42  message CredentialData {
    43      string access_key_id = 1;
    44      bytes secret_access_key_encrypted_bytes = 2;
    45      google.protobuf.Timestamp issued_date = 3;
    46      bytes user_id = 4;
    47  }
    48  
    49  // message data model for model.Statement struct
    50  message StatementData {
    51      string effect = 1;
    52      repeated string action = 2;
    53      string resource = 3;
    54  }
    55  
    56  // message data model for rest password token
    57  message TokenData {
    58      string token_id = 1;
    59      google.protobuf.Timestamp expired_at = 2;
    60  }
    61  
    62  // message data model for repositories / all repositories in UI
    63  message RepositoriesData {
    64      bool all = 1;
    65      repeated string list = 2;
    66  }
    67  
    68  // message data model for UI structure
    69  message UIData {
    70      string permission = 1;
    71      RepositoriesData repositories = 2;
    72  }