This commit is contained in:
122
proto/admin/admin-account.proto
Normal file
122
proto/admin/admin-account.proto
Normal file
@@ -0,0 +1,122 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package admin.account.v1;
|
||||
|
||||
option go_package = "git.lendry.ru/lendry-erp/proto.git/go;pb";
|
||||
|
||||
service AdminAccountService {
|
||||
rpc AdminResetPassword (AdminResetPasswordRequest) returns (AdminResetPasswordResponse);
|
||||
rpc CreateUser(CreateUserRequest) returns (CreateUserResponse);
|
||||
rpc DeleteUser(DeleteUserRequest) returns (DeleteUserResponse);
|
||||
rpc ChangeData(ChangeDataRequest) returns (ChangeDataResponse);
|
||||
rpc AssignRole (AssignRoleRequest) returns (AssignRoleResponse);
|
||||
rpc RevokeRole (RevokeRoleRequest) returns (RevokeRoleResponse);
|
||||
|
||||
rpc BlockUser(BlockUserRequest) returns (BlockUserResponse);
|
||||
rpc UnblockUser(UnblockUserRequest) returns (UnblockUserResponse);
|
||||
rpc BlockIp(BlockIpRequest) returns (BlockIpResponse);
|
||||
rpc UnblockIp(UnblockIpRequest) returns (UnblockIpResponse);
|
||||
|
||||
rpc SyncUsersToSearch (SyncUsersToSearchRequest) returns (SyncUsersToSearchResponse);
|
||||
}
|
||||
|
||||
message AdminResetPasswordRequest {
|
||||
string user_id = 1;
|
||||
string new_password = 2;
|
||||
}
|
||||
|
||||
message AdminResetPasswordResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
}
|
||||
|
||||
message CreateUserRequest {
|
||||
string username = 1;
|
||||
string password = 2;
|
||||
repeated string roles = 3;
|
||||
}
|
||||
|
||||
message CreateUserResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
}
|
||||
|
||||
message DeleteUserRequest {
|
||||
string user_id = 1;
|
||||
}
|
||||
|
||||
message DeleteUserResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
}
|
||||
|
||||
message ChangeDataRequest {
|
||||
string user_id = 1;
|
||||
string session_id = 2;
|
||||
optional string email = 3;
|
||||
optional string phone = 4;
|
||||
optional string full_name = 5;
|
||||
optional string avatar_url = 6;
|
||||
optional string custom_status_text = 7;
|
||||
optional string custom_status_emoji = 8;
|
||||
optional string timezone = 9;
|
||||
optional string language = 10;
|
||||
optional bool is_public = 11;
|
||||
}
|
||||
|
||||
message ChangeDataResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
}
|
||||
|
||||
message AssignRoleRequest {
|
||||
string user_id = 1;
|
||||
string role_id = 2; // В gRPC передаем как string, внутри преобразуем в Int
|
||||
}
|
||||
message AssignRoleResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
}
|
||||
message RevokeRoleRequest {
|
||||
string user_id = 1;
|
||||
string role_id = 2;
|
||||
}
|
||||
message RevokeRoleResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
}
|
||||
|
||||
message BlockUserRequest {
|
||||
string user_id = 1; // Кого блокируем
|
||||
string admin_id = 2; // Кто блокирует
|
||||
optional string reason = 3;
|
||||
}
|
||||
message BlockUserResponse { bool success = 1; string message = 2; }
|
||||
|
||||
message UnblockUserRequest {
|
||||
string user_id = 1;
|
||||
string admin_id = 2;
|
||||
}
|
||||
message UnblockUserResponse { bool success = 1; string message = 2; }
|
||||
|
||||
message BlockIpRequest {
|
||||
string ip_address = 1;
|
||||
string admin_id = 2;
|
||||
optional string reason = 3;
|
||||
}
|
||||
message BlockIpResponse { bool success = 1; string message = 2; }
|
||||
|
||||
message UnblockIpRequest {
|
||||
string ip_address = 1;
|
||||
string admin_id = 2;
|
||||
}
|
||||
message UnblockIpResponse { bool success = 1; string message = 2; }
|
||||
|
||||
message SyncUsersToSearchRequest {
|
||||
// Можно оставить пустым, так как нам не нужны входные данные
|
||||
}
|
||||
|
||||
message SyncUsersToSearchResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
}
|
||||
99
proto/admin/rbac.proto
Normal file
99
proto/admin/rbac.proto
Normal file
@@ -0,0 +1,99 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package rbac.v1;
|
||||
|
||||
option go_package = "git.lendry.ru/lendry-erp/proto.git/go;pb";
|
||||
|
||||
|
||||
|
||||
service RbacService {
|
||||
rpc CreateRole(CreateRoleRequest) returns (ModifyRoleResponse);
|
||||
rpc UpdateRole(UpdateRoleRequest) returns (ModifyRoleResponse);
|
||||
rpc DeleteRole(DeleteRoleRequest) returns (DeleteRoleResponse);
|
||||
|
||||
rpc CreatePermission(CreatePermissionRequest) returns (ModifyPermissionResponse);
|
||||
rpc UpdatePermission(UpdatePermissionRequest) returns (ModifyPermissionResponse);
|
||||
|
||||
rpc GetAllPermissions (GetAllPermissionsRequest) returns (GetAllPermissionsResponse);
|
||||
rpc GetAllRoles(GetAllRolesRequest) returns (GetAllRolesResponse);
|
||||
}
|
||||
|
||||
message GetAllPermissionsRequest {
|
||||
string user_id = 1;
|
||||
string session_id=2;
|
||||
}
|
||||
|
||||
message GetAllPermissionsResponse {
|
||||
repeated Permission permissions = 1;
|
||||
}
|
||||
|
||||
message Permission {
|
||||
string id = 1;
|
||||
string code = 2;
|
||||
string description = 3;
|
||||
string module = 4;
|
||||
repeated string roles = 5;
|
||||
}
|
||||
|
||||
message GetAllRolesRequest {
|
||||
string user_id = 1;
|
||||
string session_id=2;
|
||||
}
|
||||
|
||||
message GetAllRolesResponse {
|
||||
repeated Roles roles = 1;
|
||||
}
|
||||
|
||||
message CreateRoleRequest {
|
||||
string name = 1;
|
||||
int32 level = 2;
|
||||
repeated string permission_codes = 3;
|
||||
}
|
||||
|
||||
message UpdateRoleRequest {
|
||||
string id = 1;
|
||||
optional string name = 2;
|
||||
optional int32 level = 3;
|
||||
repeated string permission_codes = 4;
|
||||
}
|
||||
|
||||
message ModifyRoleResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
}
|
||||
|
||||
message DeleteRoleRequest {
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
message DeleteRoleResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
optional string fallback_role_name = 3;
|
||||
}
|
||||
|
||||
message CreatePermissionRequest {
|
||||
string code = 1;
|
||||
string description = 2;
|
||||
string module = 3;
|
||||
}
|
||||
|
||||
message UpdatePermissionRequest {
|
||||
string id = 1;
|
||||
repeated string role_ids = 2; // Привязка к конкретным ролям
|
||||
}
|
||||
|
||||
message ModifyPermissionResponse {
|
||||
bool success = 1;
|
||||
string message = 2;
|
||||
}
|
||||
|
||||
message Roles {
|
||||
string id = 1;
|
||||
string name = 2;
|
||||
int32 level = 3;
|
||||
repeated string permissions = 4;
|
||||
repeated string ldap_mapping = 5;
|
||||
repeated string accounts = 6;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user