ConvertFrom-SddlString
Converte uma cadeia de caracteres SDDL em um objeto personalizado.
Sintaxe
Default (Predefinição)
ConvertFrom-SddlString
[-Sddl] <String>
[-Type <Object>]
[<CommonParameters>]
Description
O cmdlet ConvertFrom-SddlString converte uma cadeia de caracteres de linguagem de definição do descritor de segurança em um objeto de 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.
Este cmdlet foi introduzido no PowerShell 5.0.
Exemplos
Exemplo 1: Converter direitos de acesso ao sistema de arquivos SDDL em um PSCustomObject
$acl = Get-Acl -Path C:\Windows
ConvertFrom-SddlString -Sddl $acl.Sddl
O primeiro comando usa o cmdlet Get-Acl para obter o descritor de segurança para a pasta C:\Windows e o salva na variável.
O segundo comando usa o cmdlet ConvertFrom-SddlString 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 direitos de acesso ao Registro SDDL em um PSCustomObject
$acl = Get-Acl HKLM:\SOFTWARE\Microsoft\
ConvertFrom-SddlString -Sddl $acl.Sddl -Type RegistryRights
O primeiro comando usa o cmdlet Get-Acl para obter o descritor de segurança para a chave HKLM:\SOFTWARE\Microsoft\ e o salva na variável.
O segundo comando usa o cmdlet ConvertFrom-SddlString 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 -Type para especificar que a cadeia de caracteres SDDL representa um descritor de segurança do Registro.
Exemplo 3: Converter direitos de acesso ao Registro SDDL 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 cmdlet Get-Acl para obter o descritor de segurança para a chave HKLM:\SOFTWARE\Microsoft\ e o salva na variável.
O segundo comando usa o cmdlet ConvertFrom-SddlString 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 parâmetro -Type, portanto, os direitos de acesso mostrados são para o sistema de arquivos.
O terceiro comando usa o cmdlet ConvertFrom-SddlString com o parâmetro -Type, portanto, os direitos de acesso retornados são para o registro.
Exemplo 4: Converter direitos de acesso do Ative Directory SDDL 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 (Ative Directory Service Interfaces) para obter o objeto de usuário e o salva na variável.
O segundo comando usa o cmdlet ConvertFrom-SddlString para obter 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 -Type para especificar que a cadeia de caracteres SDDL representa um descritor de segurança do Ative Directory.
Parâmetros
-Sddl
Especifica a cadeia de caracteres que representa o descritor de segurança na sintaxe SDDL.
Propriedades dos parâmetros
| Tipo: | String |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Type
Especifica o tipo de direitos que a cadeia de caracteres SDDL representa.
Os valores aceitáveis para este parâmetro são:
- FileSystemRights
- Direitos de Registo
- Direitos do ActiveDirectory
- MutexRights
- SemaphoreRights
- CryptoKeyRights
- EventWaitHandleRights
Por padrão, o cmdlet usa direitos do sistema de arquivos.
CryptoKeyRights e ActiveDirectoryRights não são suportados no PowerShell v6 e superior.
Propriedades dos parâmetros
| Tipo: | Object |
| Default value: | None |
| Valores aceites: | FileSystemRights, RegistryRights, ActiveDirectoryRights, MutexRights, SemaphoreRights, CryptoKeyRights, EventWaitHandleRights |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Entradas
String
Você pode canalizar uma cadeia de caracteres SDDL para este cmdlet.