Alterar permissões na chave do Registro via linha de comando

11

Estou tentando editar essa chave do Registro por meio da linha de comando - estou pesquisando há séculos, mas não consigo encontrar nada.

Realmente preso no momento, então qualquer ajuda seria muito apreciada. Não me importo de usar o PowerShell ou qualquer coisa que chame uma ferramenta de terceiros - só quero alterá-lo pela linha de comando.

O motivo é que os administradores locais têm direitos somente leitura por padrão. Eu quero mudar isso para Controle total. Eu posso fazer isso na GUI em 2 segundos, mas a linha de comando é outra questão.

HKEY_CLASSES_ROOT\CLSID\{323CA680-C24D-4099-B94D-446DD2D7249E}\ShellFolder
lara400
fonte

Respostas:

7

Há um excelente resumo de como fazer isso no PowerShell aqui .

Essencialmente, você pode usar Get-Acle Set-Aclno PowerShell como faria em qualquer outro caminho.

$acl = Get-Acl HKLM:\SOFTWARE\stuff
$rule = New-Object System.Security.AccessControl.RegistryAccessRule ("Domain\user","FullControl","Allow")
$acl.SetAccessRule($rule)
$acl |Set-Acl -Path HKLM:\SOFTWARE\stuff
MDMarra
fonte
obrigado por isso - o problema que enfrento é que, se eu sou um administrador e quero alterar as permissões de uma chave que tenha Administradores como LIDO - ele dirá acesso negado ... realmente irritante. Vou tentar a coisa do PowerShell e voltar. O sistema também é Read, portanto, não é possível usar o psexec para fazer isso.
lara400
1
@ lara400 Então você precisa se apropriar da chave antes de poder atribuir writepermissões. Nada no mundo permitirá que alguém com apenas readfaça modificações. Isso anula o objetivo do readACE. Sugiro que você abra uma nova pergunta solicitando a propriedade de uma chave do Registro no PowerShell.
MDMarra
4

O RegIni.exe atende às suas necessidades? Você pode escrever um script RegIni que altera as permissões e, em seguida, chamar RegIni com o script como parâmetro.

Por exemplo, se você desejasse que apenas administradores tivessem acesso total a essa chave, o script teria a seguinte aparência:

HKEY_CLASSES_ROOT\CLSID{323CA680-C24D-4099-B94D-446DD2D7249E}\ShellFolder [1]

Embora, presumivelmente, você também queira conceder ao sistema acesso à chave e, talvez, acesso somente leitura a todos os outros; nesse caso, o sufixo de segurança seria

[1 8 17]

Você pode encontrar os números de sufixo de segurança nesta tabela:

1  - Administrators Full Access
2  - Administrators Read Access
3  - Administrators Read and Write Access
4  - Administrators Read, Write and Delete Access
5  - Creator Full Access
6  - Creator Read and Write Access
7  - World Full Access
8  - World Read Access
9  - World Read and Write Access
10 - World Read, Write and Delete Access
11 - Power Users Full Access
12 - Power Users Read and Write Access
13 - Power Users Read, Write and Delete Access
14 - System Operators Full Access
15 - System Operators Read and Write Access
16 - System Operators Read, Write and Delete Access
17 - System Full Access
18 - System Read and Write Access
19 - System Read Access
20 - Administrators Read, Write and Execute Access
21 - Interactive User Full Access
22 - Interactive User Read and Write Access
23 - Interactive User Read, Write and Delete Access

E nem é preciso dizer que você deve ter um bom backup antes de jogar com ele pela primeira vez e talvez praticar em uma chave de registro fictícia para evitar acidentes infelizes.

dsolimano
fonte