Avatar billede azerty Juniormester
31. juli 2019 - 14:43 Der er 3 kommentarer og
1 løsning

cacls vs. icacls

Jeg har siden Windows XP-dagene brugt følgende kommandoer til henholdvis at nægte og give en bruger adgang til en mappe:

cacls c:\somefolder /e /c /d %username%

cacls c:\somefolder /e /c /g %username%:f

Det hedder sig nu i Windows 10, at "the command cacls has been deprecated. Please use icacls instead."

Mit spørgsmål er tvedelt:

1) Når Microsoft "deprecater" en kommando, er der så en risiko for, at filen "cacls" eller dens kommandoer ikke vil virke i fremtidige versioner af Windows 10 - fx at filen "cacls" bliver udeladt/fjernet fra "System32" ??

2) Hvordan bruger jeg "icacls" til at køre kommandoer mage til ovennævnte kommandoer ??

På forhånd tak.
Avatar billede INK Ekspert
31. juli 2019 - 16:09 #1
Avatar billede claes57 Ekspert
01. august 2019 - 14:37 #2
den gamle vil typisk bliver fjernet helt - rutiner, der bruger den i scripts vil få en fejlmelding, og så er det bare at rette den til det nye kald.
Når det har noget med brugeradgang til mapper, så er det typisk fordi m$ laver om pga sikkerhedsproblemer i gammel kode, og de vælger at starte helt forfra med for at rydde op.
Avatar billede azerty Juniormester
01. august 2019 - 22:26 #3
Takker for input.

Jeg har leget lidt med “icacls” for at finde noget, der ligner de ældre “cacls”-kommandoer, men enten findes de ikke, eller også kan jeg bare ikke finde ud af det.

En pudsighed: Jeg har to Windows 10-computere. Begge indeholder den gamle fil “cacls.exe”. På den ene computer virker mine cacls-kommandoer helt fint. På den anden computer ignoreres kommandoerne.

Jeg lader spørgsmålet hænge lidt endnu.
Avatar billede azerty Juniormester
04. august 2019 - 19:56 #4
For at lukke spørgsmålet:

Jeg sad et par aftener i træk og prøvede mig frem med icacls. Pludselig var løsningen der:

cacls c:\somefolder /e /c /d %username%
modsvares med icacls således:
icacls "c:\somefolder" /deny "%USERDOMAIN%\%USERNAME%":(F)

---

cacls c:\somefolder /e /c /g %username%:f
modsvares med icacls således:
icacls "c:\somefolder" /grant "%USERDOMAIN%\%USERNAME%":(F)

---

Tricket er, at %USERDOMAIN% skal med i kommandoen.

Jeg lukker spørgsmålet og takker for input.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester