windows xp Professional restore Descrittori di sicurezza dopo cacls / t / e / p


0

Qualcuno ha cambiato i permessi su un gruppo di macchine usando cacls che hanno risolto un problema ma ne hanno creato uno più grande. Sto cercando dei modi per ripristinarlo, ma non riesco a riportarlo com'era.

Ho replicato utilizzando una macchina di prova e l'output è inferiore. Ho usato subinacl per ottenere l'output.

Modifica effettuata utilizzando:

ECHO Y|CACLS C:\APPSYS      /t /e /p User1:F

Il motivo per cui le autorizzazioni sono state modificate è stato il fatto che alcuni file sono stati inseriti da qualcuno che ha effettuato l'accesso come amministratore e che anche gli utenti avevano bisogno di un accesso completo. Mi piacerebbe comunque sapere un modo sicuro per aggiungere il gruppo utenti1 a questi file anche se non si scherza con gli altri che non devono essere modificati. Non è un elenco statico di file, alcune macchine hanno solo 1 o 2 file, altre hanno 20-50 file in cui l'utente1 richiede il controllo completo ma non dispone di autorizzazioni.

Prima di eseguire ECHO "Y | CACLS C: \ APPSYS / t / e / p User1: F"

====================
+File C:\APPSYS\BIN
====================
/control=0x400
/owner             =PC1125230\ORGUSER
/primary group     =PC1125230\none
/audit ace count   =0
/perm. ace count   =8
/pace =PC1125230\USERGROUP1  Type=0x0 Flags=0x13 AccessMask=0x1f01ff
/pace =builtin\administrators  Type=0x0 Flags=0x13 AccessMask=0x1f01ff
/pace =system  Type=0x0 Flags=0x13 AccessMask=0x1f01ff
/pace =PC1125230\ORGUSER  Type=0x0 Flags=0x10 AccessMask=0x1f01ff
/pace =creator owner  Type=0x0 Flags=0x1b AccessMask=0x10000000
/pace =builtin\users  Type=0x0 Flags=0x13 AccessMask=0x1200a9
/pace =builtin\users  Type=0x0 Flags=0x12 AccessMask=0x4
/pace =builtin\users  Type=0x0 Flags=0x12 AccessMask=0x2


=============================
+File C:\APPSYS\ERROR.LOG
=============================
/control=0x0
/owner             =PC1125230\ORGUSER
/primary group     =PC1125230\none
/audit ace count   =0
/perm. ace count   =0

Dopo aver eseguito ECHO "Y | CACLS C: \ APPSYS / t / e / p User1: F"

====================
+File C:\APPSYS\BIN
====================
/control=0x0
/owner             =PC1125230\ORGUSER
/primary group     =PC1125230\none
/audit ace count   =0
/perm. ace count   =9
/pace =PC1125230\User1  Type=0x0 Flags=0x3 AccessMask=0x1f01ff
/pace =PC1125230\USERGROUP1  Type=0x0 Flags=0x13 AccessMask=0x1f01ff
/pace =builtin\administrators  Type=0x0 Flags=0x13 AccessMask=0x1f01ff
/pace =system  Type=0x0 Flags=0x13 AccessMask=0x1f01ff
/pace =PC1125230\ORGUSER  Type=0x0 Flags=0x10 AccessMask=0x1f01ff
/pace =creator owner  Type=0x0 Flags=0x1b AccessMask=0x10000000
/pace =builtin\users  Type=0x0 Flags=0x13 AccessMask=0x1200a9
/pace =builtin\users  Type=0x0 Flags=0x12 AccessMask=0x4
/pace =builtin\users  Type=0x0 Flags=0x12 AccessMask=0x2


=============================
+File C:\APPSYS\ERROR.LOG
=============================
/control=0x0
/owner             =PC1125230\ORGUSER
/primary group     =PC1125230\none
/audit ace count   =0
/perm. ace count   =1
/pace =PC1125230\User1  Type=0x0 Flags=0x0 AccessMask=0x1f01ff

Ci sono molti file e cartelle che diventano unici per le diverse macchine, quindi sto cercando di trovare un metodo che funzioni su tutti senza specificare ogni file esatto.

Ho usato subinacl per garantire ai gruppi di utenti a cui è negato l'accesso ad ERROR.LOG, ad esempio, e tutti i file e le cartelle nella cartella APPSYS perché c'erano molti problemi con il crash delle applicazioni. Ciò ha risolto il problema, ma sono preoccupato per l'effetto duraturo delle modifiche apportate rispetto alle impostazioni originali.

Prima di utilizzare il metodo subinacl per concedere le autorizzazioni, ho provato a rimuovere l'autorizzazione User1 ma, di nuovo, ERROR.LOG non ritorna a ciò che era saggio. Ho provato a sopprimere anche con lo stesso risultato senza differenze. Ho provato con il dispositivo di prova a fare un backup prima di eseguire il comando cacls e quindi ripristinare il backup con subinacl ma non è stato ripristinato correttamente da quello che posso vedere "," pace = builtin \ users Type = 0x0 Flags = 0x12 AccessMask = 0x4 "è stato rimosso dall'ACL.

Non ho esperienza con i descrittori di sicurezza, quindi mi dispiace se è dolorosamente ovvio o ho lasciato fuori i dettagli. Ho trascorso gli ultimi 5 giorni e notti a leggere cosa posso capire per capire cosa è andato storto e come risolverlo usando un processo batch.

Sono limitato agli script di base (windows xp pro) vb, batch posso usare strumenti dal kit di risorse e in una certa misura utilità di terze parti, ma ancora una volta dovrà essere l'uso di script in batch.

Risposte:


0

Sono riuscito a trovare una soluzione (ho dimenticato di pubblicarlo qui).

Utilizzo di xcacls.vbs con i seguenti argomenti utilizzati:

Filename = "c:\APPSYS\"
/F (All Files under current directory)
/S (All Sub Directories under current directory)
/T (Traverse Directories)
/E (Edit ACL leaving other users intact)
/I (Inheritance)
    ENABLE

Ciò ha ripristinato l'eredità dei file nella cartella a quello che erano e per il file che non aveva ACE (impostato per consentire a tutti) hanno ereditato i gruppi di utenti richiesti.

Spero che questo aiuti chiunque altro nella stessa posizione.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.