ConvertFrom-SddlString
Converte uma cadeia de caracteres SDDL em um objeto personalizado.
Sintaxe
ConvertFrom-SddlString
[-Sddl] <String>
[-Type <Object>]
[<CommonParameters>]
Description
O ConvertFrom-SddlString
cmdlet converte uma cadeia de caracteres de Linguagem de Definição do Descritor de Segurança em um objeto PSCustomObject personalizado com as seguintes propriedades: Owner, Group, DiscretionaryAcl, SystemAcl e RawDescriptor.
As propriedades Owner, Group, DiscretionaryAcl e SystemAcl contêm uma representação de texto legível dos direitos de acesso especificados em uma cadeia de caracteres SDDL.
Esse cmdlet foi introduzido no PowerShell 5.0.
Exemplos
Exemplo 1: converter SDDL de direitos de acesso ao sistema de arquivos em um PSCustomObject
$acl = Get-Acl -Path C:\Windows
ConvertFrom-SddlString -Sddl $acl.Sddl
O primeiro comando usa o Get-Acl
cmdlet para obter o descritor de segurança para a pasta C:\Windows e o salva na variável.
O segundo comando usa o ConvertFrom-SddlString
cmdlet para obter a representação de texto da cadeia de caracteres SDDL, contida na propriedade Sddl do objeto que representa o descritor de segurança.
Exemplo 2: Converter SDDL de direitos de acesso ao Registro em um PSCustomObject
$acl = Get-Acl HKLM:\SOFTWARE\Microsoft\
ConvertFrom-SddlString -Sddl $acl.Sddl -Type RegistryRights
O primeiro comando usa o Get-Acl
cmdlet para obter o descritor de segurança para a chave HKLM:\SOFTWARE\Microsoft\ e o salva na variável.
O segundo comando usa o ConvertFrom-SddlString
cmdlet para obter a representação de texto da cadeia de caracteres SDDL, contida na propriedade Sddl do objeto que representa o descritor de segurança.
Ele usa o parâmetro para especificar que a -Type
cadeia de caracteres SDDL representa um descritor de segurança do Registro.
Exemplo 3: Converter SDDL de direitos de acesso ao Registro em um PSCustomObject usando ConvertFrom-SddlString com e sem o parâmetro '-Type'
$acl = Get-Acl -Path HKLM:\SOFTWARE\Microsoft\
ConvertFrom-SddlString -Sddl $acl.Sddl | Foreach-Object {$_.DiscretionaryAcl[0]}
BUILTIN\Administrators: AccessAllowed (ChangePermissions, CreateDirectories, Delete, ExecuteKey, FullControl, GenericExecute, GenericWrite, ListDirectory, ReadExtendedAttributes, ReadPermissions, TakeOwnership, Traverse, WriteData, WriteExtendedAttributes, WriteKey)
ConvertFrom-SddlString -Sddl $acl.Sddl -Type RegistryRights | Foreach-Object {$_.DiscretionaryAcl[0]}
BUILTIN\Administrators: AccessAllowed (ChangePermissions, CreateLink, CreateSubKey, Delete, EnumerateSubKeys, ExecuteKey, FullControl, GenericExecute, GenericWrite, Notify, QueryValues, ReadPermissions, SetValue, TakeOwnership, WriteKey)
O primeiro comando usa o Get-Acl
cmdlet para obter o descritor de segurança para a chave HKLM:\SOFTWARE\Microsoft\ e o salva na variável.
O segundo comando usa o ConvertFrom-SddlString
cmdlet para obter a representação de texto da cadeia de caracteres SDDL, contida na propriedade Sddl do objeto que representa o descritor de segurança.
Ele não usa o -Type
parâmetro, portanto, os direitos de acesso mostrados são para o sistema de arquivos.
O terceiro comando usa o ConvertFrom-SddlString
cmdlet com o parâmetro, portanto, os direitos de acesso retornados são para o -Type
registro.
Exemplo 4: Converter SDDL de direitos de acesso do Active Directory em um PSCustomObject
$user = [ADSI]"LDAP://CN=username,CN=Users,DC=domain,DC=com"
ConvertFrom-SddlString $user.psbase.ObjectSecurity.Sddl -Type ActiveDirectoryRights
O primeiro comando usa ADSI (Active Directory Service Interfaces) para obter o objeto de usuário e salvá-lo na variável.
O segundo comando usa o cmdlet para obter a ConvertFrom-SddlString
representação de texto da cadeia de caracteres SDDL, contida na propriedade Sddl do objeto que representa o descritor de segurança.
Ele usa o parâmetro para especificar que a -Type
cadeia de caracteres SDDL representa um descritor de segurança do Active Directory.
Parâmetros
-Sddl
Especifica a cadeia de caracteres que representa o descritor de segurança na sintaxe SDDL.
Tipo: | String |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Type
Especifica o tipo de direitos que a cadeia de caracteres SDDL representa.
Os valores aceitáveis para esse parâmetro são:
- Direitos do Sistema de Arquivos
- Direitos de Registro
- ActiveDirectoryRights
- Direitos Mutex
- SemáforoDireitos
- Direitos de Chave Criptográfica
- EventWaitHandleRights
Por padrão, o cmdlet usa direitos do sistema de arquivos.
Não há suporte para CryptoKeyRights e ActiveDirectoryRights no PowerShell v6 e superior.
Tipo: | Object |
Valores aceitos: | FileSystemRights, RegistryRights, ActiveDirectoryRights, MutexRights, SemaphoreRights, CryptoKeyRights, EventWaitHandleRights |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
Você pode canalizar uma cadeia de caracteres SDDL para esse cmdlet.