Soluții

OPERA PMS sau Charisma: drepturi de administrator

Pe anumite statii de lucru, aplicatii business precum OPERA PMS sau Charisma pot functiona corect doar atunci cand sunt pornite folosind optiunea:

Run as administrator

Acordarea permanenta a drepturilor de administrator local utilizatorului nu este recomandata. O metoda mai sigura este identificarea resursei pentru care aplicatia primeste Access Denied si acordarea doar a permisiunilor necesare.

Inainte de modificarea permisiunilor:

  • notam configuratia existenta;
  • realizam backup pentru fisierele de configurare ale aplicatiei, daca este cazul;
  • nu modificam permisiuni generale pentru C:\Program Files, C:\Windows sau intregul Registry.

Solutie

Pasul 1 – Reproducerea problemei

  • Ne autentificam cu utilizatorul standard.
  • Pornim OPERA PMS sau Charisma fara Run as administrator.
  • Reproducem eroarea si notam exact momentul in care apare.

Pasul 2 – Instalarea Process Monitor

Putem instala Microsoft Process Monitor folosind:

winget install Microsoft.Sysinternals.ProcessMonitor

Pornim Process Monitor cu drepturi administrative.

Pasul 3 – Filtrarea procesului

Din:

Filter -> Filter

adaugam un filtru pentru executabilul aplicatiei.

Exemplu:

Process Name is nume_aplicatie.exe

Alegem:

Include

Numele executabilului trebuie verificat in Task Manager sau in proprietatile shortcut-ului aplicatiei.

Pasul 4 – Cautarea operatiunilor Access Denied

  • Stergem evenimentele existente si pornim captura.
  • Pornim aplicatia si reproducem problema.

In Process Monitor cautam evenimente unde:

Result = ACCESS DENIED

Verificam coloana Path.

Problema poate fi legata de:

  • un folder in care aplicatia incearca sa scrie;
  • un fisier de configurare;
  • un folder TEMP;
  • o cheie Registry;
  • un fisier de log.

Pasul 5 – Corectarea permisiunii

Daca identificam, de exemplu, ca aplicatia are nevoie de acces de scriere intr-un folder propriu de date, acordam drepturi doar pe acel folder.

Click dreapta pe folder:

Properties -> Security -> Edit

Adaugam utilizatorul sau grupul necesar si acordam doar permisiunile de care aplicatia are nevoie, de exemplu:

Read & Execute

sau, daca aplicatia trebuie sa scrie:

Modify

Nu acordam Full Control daca nu este necesar.

Pasul 6 – Testare

Inchidem aplicatia.

Ne asiguram ca este pornita din nou fara:

Run as administrator

Repetam operatiunea care genera eroarea.

Daca aplicatia functioneaza, putem elimina necesitatea drepturilor de administrator local.

Nu trebuie acordate drepturi Modify sau Full Control pentru grupul Users pe:

C:\Windows

C:\Program Files

intregul C:\

sau pe zone extinse din Registry. Permisiunea trebuie aplicata numai resursei identificate si numai dupa validarea functionarii aplicatiei.

[mai mult...]

Backup Saga

SAGA contine date contabile importante, iar salvarea exclusiva pe calculatorul pe care ruleaza aplicatia reprezinta un risc in cazul unei defectiuni hardware, ransomware sau reinstalari Windows.

Putem configura o copie suplimentara automata a folderului SAGA catre un NAS sau un server din retea. Aceasta copie suplimentara nu inlocuieste functia de backup din SAGA. Inainte de configurare realizam un backup manual si verificam daca acesta poate fi accesat.Este recomandat ca scriptul sa ruleze intr-un interval in care niciun utilizator nu lucreaza in SAGA.

Pasul 1 – Identificarea folderului SAGA

Verificam proprietatile shortcut-ului SAGA pentru a identifica folderul aplicatiei.

Exemplu:

C:\SAGA C.3.0

Calea trebuie adaptata instalarii existente.

Pasul 2 – Crearea folderului de backup

Pe NAS sau server cream un folder dedicat:

\\NAS01\Backup\SAGA

Contul care va rula task-ul trebuie sa aiba drept de scriere in acest folder.

Pasul 3 – Crearea scriptului PowerShell

Cream folderul:

C:\Scripts

Cream fisierul:

C:\Scripts\Backup-SAGA.ps1

Introducem:

$Source = "C:\SAGA C.3.0"

$BackupRoot = "\\NAS01\Backup\SAGA"

$Date = Get-Date -Format "yyyy-MM-dd_HHmm"

$Destination = Join-Path $BackupRoot $Date

New-Item -ItemType Directory -Path $Destination -Force

robocopy $Source $Destination /E /COPY:DAT /R:2 /W:5 /XJ

if ($LASTEXITCODE -le 7) {

Write-Output "Backup SAGA finalizat cu succes."

} else {

Write-Error "Backup SAGA finalizat cu eroare. Robocopy exit code: $LASTEXITCODE"

}

Modificam valorile pentru $Source si $BackupRoot conform mediului existent.

Pasul 4 – Testarea scriptului

Deschidem PowerShell si rulam:

powershell.exe -ExecutionPolicy Bypass -File "C:\Scripts\Backup-SAGA.ps1"

Verificam folderul:

\\NAS01\Backup\SAGA

Ar trebui sa existe un director nou de forma:

2026-09-15_2200

Deschidem folderul si verificam existenta fisierelor.

Pasul 5 – Programarea cu Task Scheduler

Deschidem:

Task Scheduler

Selectam:

Create Task

Introducem numele:

Backup SAGA

Setam rularea zilnica dupa terminarea programului de lucru.

La:

Actions -> New -> Start a program

introducem:

powershell.exe

iar la Arguments:

-ExecutionPolicy Bypass -File "C:\Scripts\Backup-SAGA.ps1"

Salvam task-ul.

Pasul 6 – Verificarea task-ului

Click dreapta pe task:

Run

Verificam din nou folderul de backup.

In Task Scheduler verificam:

Last Run Result

si confirmam ca task-ul s-a executat.

Recomandari

Backup-ul trebuie pastrat intr-o locatie diferita de calculatorul pe care ruleaza SAGA. Ideal, destinatia trebuie sa fie un NAS sau un server protejat prin credentiale separate.Trebuie efectuat periodic si un test de restaurare. Pentru consistenta datelor, copia folderului trebuie programata atunci cand utilizatorii nu lucreaza in SAGA.

[mai mult...]