2

Когда я вошел в систему как администратор в Windows 2008R2, я НИКОГДА не буду хотеть, чтобы разрешения были отклонены для любых изменений конфигурации доступа или изменений, которые я делаю. Если я удаляю принтер, я хочу его удалить. СРОК. Мне все равно, если я не его владелец. Мне все равно, если я не в группе операторов печати или что-то еще. Делай то, что я тебе говорю, и закрой Windows!

Я не хочу сталкиваться с какими-либо проблемами доступа. Есть ли способ заставить Windows 2008 R2 действовать таким образом? Я хочу, чтобы полные разрешения на все и вся концепция запрета доступа были отключены, когда я вошел в систему как администратор.

Я могу отключить UAC, но это не сработает. Мне нужно отключить всю концепцию разрешений, по крайней мере временно, чтобы я мог закончить работу и перестать гуглить неясные настройки реестра и пытаться угадать, в чем проблема.

3 ответа3

2

Не может быть сделано, ACL является неотъемлемой частью Windows и предназначен для «вашей защиты». Кроме того, они сделали это так, что 2008 не может быть установлен на FAT32 (избегая ACL в стиле NTFS).

В любом случае, лучшая альтернатива для файлов / папок - расширение оболочки правого клика.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\runas]
@="Take Ownership"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\*\shell\runas\command]
@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant *S-1-5-32-544:F"
"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant *S-1-5-32-544:F"

[HKEY_CLASSES_ROOT\Directory\shell\runas]
@="Take Ownership"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\shell\runas\command]
@="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant *S-1-5-32-544:F /t"
"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant *S-1-5-32-544:F /t" 

Но для регистрации вам нужно научиться брать права владения у powershell. Например, этот фрагмент позволит мне удалить LOCKEDKEY.

$key = "registry::HKCU\Software\Microsoft\LOCKEDKEY"

$acl = Get-Acl -Path $key
$permission = 'Administrators','FullControl','ContainerInherit, ObjectInherit','None','Allow'
$accessRule = New-Object System.Security.Accesscontrol.RegistryAccessRule $permission;$acl.SetAccessRule($accessRule)
$acl | Set-Acl -Path $key
Remove-ItemProperty -Path $key

Так работает последние 6 лет с TrustedInstaller.

В качестве альтернативы вы можете порождать свои regedit или пакетные скрипты через токен TrustedInstaller, используя стороннее приложение, такое как Devxexec.exe. Таким образом, вы можете избежать любых изменений разрешений, так как TrustedInstaller имеет доступ ко всему, что у вас нет (и наоборот)

@ECHO OFF

devxexec.exe /user:TrustedInstaller regedit.exe

PAUSE
2

Загрузка с компакт-диска с Linux, такое как partedmagic монтирование и доступ к файлам оттуда, обеспечивает большую гибкость доступа к файлам.

РЕГИСТРАЦИЯ:http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx

PsExec.exe -i -s regedit

Это запустит regedit как системную учетную запись. Который имеет больше доступа, чем учетная запись администратора.

Эти 2 метода обеспечат вам более легкий доступ к 2 частям вашей системы. Тем не менее, безопасность встроена и является неизбежной частью системы.

0

Если вы закрыли explorer.exe и с помощью psexec сделали

psexec -i -s explorer

Тогда Windows Explorer будет работать с привилегиями SYSTEM уровня. Это очень опасно, и я ДЕЙСТВИТЕЛЬНО не рекомендую это, но это вариант. Все действия, которые вы выполняете в Проводнике, и все программы, запускаемые изнутри exporer, будут выполняться как пользователь SYSTEM который имеет привилегии уровня "режима бога" в вашей системе.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .