промежуточный. нашел еще несколько уязвимостей в редактировнии чужих объектов.

This commit is contained in:
2025-02-22 15:18:22 +03:00
parent 8701c8ba36
commit f7973e0991
13 changed files with 48 additions and 54 deletions

View File

@@ -1,8 +1,10 @@
package Common.Database.Objects;
public class riDBObject extends iDBObject {
//-
//todo int useraccount_id по объекту аккаунтов. сюда и права. и проверку их.
public String sender_name = "";
public String sender_address = "";
//---
public String description = "";
//-
@Override

View File

@@ -2,6 +2,7 @@ package Common.Visual;
import Common.CommonConstants;
import Common.Database.Objects.DBObject;
import Common.Database.Objects.Grid.TableVisualData;
import Common.Database.Objects.riDBObject;
import Common.Database.Tables.DBTable;
import Common.Database.Tables.DataSet;
import Common.Database.Tables.FKBehaviour;
@@ -14,6 +15,7 @@ import Common.Visual.Menus.TableMenu;
import Common.Visual.Tables.*;
import Common.Visual.Tables.Grid.GridAnchestor;
import Common.Visual.Windows.Dialog.DBObjectDialog;
import _VisualDVM.Global;
import javax.swing.*;
import javax.swing.table.TableColumn;
@@ -575,4 +577,9 @@ public abstract class DataSetControlForm<D extends DBObject> extends ControlForm
public Object getCurrentPK(Object nanValue){
return current==null? nanValue: current.getPK();
}
//todo временное решение ? ->>>
public boolean canModifyCurrent(TextLog Log){
return CheckCurrent(Log) && (
!(current instanceof riDBObject) || Global.mainModule.getAccount().CheckAuthorship(((riDBObject)current).sender_address,Log));
}
}