Dostęp Subinacl Odmowa dostępu przy użyciu subkeyreg

4

Mam system Windows 7 x86, jestem jedynym użytkownikiem i administratorem mojego komputera. Chcę móc przejąć na własność klucz (poniżej), ale subinacl na to nie zezwoli.

HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ Enum \ USBSTOR

Błąd to: RegSetKeySecurity Błąd: 5 Odmowa dostępu.

Próbowałem uruchomić go z podwyższonym wierszem poleceń i nadal pojawia się błąd 5.

Dwa pytanie: dlaczego to robi? Jak przejąć na własność ten klucz? Chciałbym użyć subinacl, jeśli to możliwe. Ale jestem otwarty na inne narzędzia, o ile można ich używać z wiersza poleceń.

TwirlMandarin
źródło
Dlaczego musisz przejąć na własność ten klucz?
@Randolph West Chcę usunąć każdy podklucz w nim, ale mi na to nie pozwala. Poza tym chcę wiedzieć, dlaczego to nie działa. Działa, jeśli ręcznie ustawisz uprawnienia z regedit.
TwirlMandarin
@AlexanderCeed, czy działałeś subinaclz wiersza polecenia administratora?
Synetech
@Synetech Tak.
Klikam

Odpowiedzi:

0

Musisz przejąć na własność klucz rejestru, zanim będziesz mógł zmienić jego uprawnienia (powinieneś później przywrócić własność).

Hmm, mógłbym przysiąc, że możesz użyć takeownpolecenia, aby przejąć na własność klucz rejestru, ale wygląda na to, że nie możesz.

Zamiast tego, w zależności od używanej wersji systemu Windows, możesz użyć caclspolecenia icaclslub xcalcs(zaktualizuj za pomocą skryptu VB ), a nawet narzędzia innej firmy, takie jak RegDACL .

( caclsi icaclspochodzą z Windows 7)

Synetech
źródło
0

Użyj poniższych poleceń w przypadku SetACL z uprawnieniami administracyjnymi:

set X="HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USBSTOR"
SetACL.exe -on %X% -ot reg -rec cont_obj -actn setowner -ownr "n:Everyone"
SetACL.exe -on %X% -ot reg -rec cont_obj -actn ace -ace "n:Everyone;p:full"
Biswapriyo
źródło