Puncte:0

Eroare la transferul permisiunilor fișierului

drapel cn

Am întâmpinat o problemă, am scris un script care comprimă fișierele pdf printr-un program și transferă drepturi la un fișier nou prin copiere din cel vechi pentru a diferenția accesul la fișiere noi. Aici este partea din cod pe care o am este problema

$owner = $origFile.GetAccessControl().GetOwner([System.Security.Principal.SecurityIdentifier])
             $newFile = Get-Item -Path $PathoutFile
             $FileSecurity = obiect nou System.Security.AccessControl.FileSecurity
             $FileSecurity.SetOwner($proprietar)
             [System.IO.File]::SetAccessControl($newFile, $FileSecurity)
             Get-Acl -Path $origFile | Set-Acl -Path $newFile

Problema mea este aceasta: Execut scriptul folosind privilegii de administrator de domeniu, totul funcționează bine. Dacă folosesc un cont de utilizator de domeniu și acord drepturi maxime directorului, în el se salvează un fișier comprimat, iar în acest caz primesc eroarea âÎncercare de a efectua o operațiune neautorizată. Nu vreau să rulez scriptul sub contul de administrator dintr-un motiv simplu, cred că astfel de drepturi sunt redundante pentru a efectua această operațiune. Învăț și fac greșeli, dar vreau să învăț cum să scriu scripturi bune și să gestionez competent regulile de acces necesare pentru munca lor, așa că vă rog să mă ajutați să îmi dau seama ce trebuie să fac pentru ca drepturile să fie atribuite atunci când folosesc scenariul. Am căutat pe google informații despre această problemă, dar nu am găsit informații complete. Am găsit informații pe care nu le puteți face fără drepturi de administrator pentru a schimba proprietarul, dar nu înțeleg de ce nu pot transfera drepturile la un fișier nou în acest caz. Va rog sa ma ajutati in rezolvarea acestei probleme. Setarea proprietarului de la fișierul vechi la fișierul nou este o sarcină opțională. Acțiunile P.s sunt efectuate pe o partajare de rețea, iar utilizatorul sub care rulează scriptul are acces complet.Dosarul de rețea se află pe Win Serv 2008 SP2 și scriptul este rulat pe Windows 10 Pro. Mulțumesc anticipat.

Puncte:0
drapel cn

Eu însumi am găsit o soluție la problema mea principală folosind modulul NTFSSecurity PowerShell. Transferul drepturilor de acces a fost efectuat folosind Get-NTFSAccess $filein | Adaugă-NTFSAccess $fileout

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.