add admin rbac methods
All checks were successful
Publish / Publish Job (push) Successful in 2m22s

This commit is contained in:
Дмитрий
2026-04-11 22:48:32 +03:00
parent a3b0d416f9
commit 60b1643a52
2 changed files with 90 additions and 1 deletions

View File

@@ -26,6 +26,16 @@ service AdminService {
// Синхронизация с поисковым движком (Elasticsearch)
rpc SyncUsersToSearch (SyncUsersToSearchRequest) returns (SyncUsersToSearchResponse);
// RBAC
rpc GetAllPermissions (GetAllPermissionsAdminRequest) returns (GetAllPermissionsAdminResponse);
rpc GetAllRoles(GetAllRolesAdminRequest) returns (GetAllRolesAdminResponse);
rpc CreateRole(CreateRoleAdminRequest) returns (ModifyRoleAdminResponse);
rpc UpdateRole(UpdateRoleAdminRequest) returns (ModifyRoleAdminResponse);
rpc DeleteRole(DeleteRoleAdminRequest) returns (DeleteRoleAdminResponse);
rpc CreatePermission(CreatePermissionAdminRequest) returns (ModifyPermissionAdminResponse);
rpc UpdatePermission(UpdatePermissionAdminRequest) returns (ModifyPermissionAdminResponse);
}
// --- DTO для управления учетными записями ---
@@ -156,4 +166,83 @@ message SyncUsersToSearchRequest {
message SyncUsersToSearchResponse {
bool success = 1;
string message = 2;
}
message GetAllPermissionsAdminRequest {
string user_id = 1;
string session_id = 2;
}
message PermissionAdmin {
string id = 1;
string code = 2;
string description = 3;
string module = 4;
repeated string roles = 5;
}
message GetAllPermissionsAdminResponse {
repeated PermissionAdmin permissions = 1;
}
message GetAllRolesAdminRequest {
string user_id = 1;
string session_id = 2;
}
message RolesAdmin {
string id = 1;
string name = 2;
int32 level = 3;
repeated string permissions = 4;
repeated string ldap_mapping = 5;
repeated string accounts = 6;
}
message GetAllRolesAdminResponse {
repeated RolesAdmin roles = 1;
}
message CreateRoleAdminRequest {
string name = 1;
int32 level = 2;
repeated string permission_codes = 3;
}
message UpdateRoleAdminRequest {
string id = 1;
optional string name = 2;
optional int32 level = 3;
repeated string permission_codes = 4;
}
message ModifyRoleAdminResponse {
bool success = 1;
string message = 2;
}
message DeleteRoleAdminRequest {
string id = 1;
}
message DeleteRoleAdminResponse {
bool success = 1;
string message = 2;
optional string fallback_role_name = 3;
}
message CreatePermissionAdminRequest {
string code = 1;
string description = 2;
string module = 3;
}
message UpdatePermissionAdminRequest {
string id = 1;
repeated string role_ids = 2;
}
message ModifyPermissionAdminResponse {
bool success = 1;
string message = 2;
}