Compartilhar via


ConvertFrom-SddlString

Converte uma cadeia de caracteres SDDL em um objeto personalizado.

Sintaxe

Default (Default)

ConvertFrom-SddlString
    [-Sddl] <String>
    [-Type <Object>]
    [<CommonParameters>]

Description

O cmdlet ConvertFrom-SddlString converte uma cadeia de caracteres de linguagem de definição de descritor de segurança em um objeto PSCustomObject personalizado com as seguintes propriedades: Proprietário, Grupo, 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 do sistema de arquivos 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 salva-o 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 o SDDL de direitos de acesso do Registro 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 salva-o 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 o SDDL de direitos de acesso do 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 cmdlet Get-Acl para obter o descritor de segurança para a chave HKLM:\SOFTWARE\Microsoft\ e salva-o 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 o 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 (Interfaces de Serviço do Active Directory) para obter o objeto de usuário e salva-o 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 Active Directory.

Parâmetros

-Sddl

Especifica a cadeia de caracteres que representa o descritor de segurança na sintaxe SDDL.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:0
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes: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 Registro
  • ActiveDirectoryRights
  • Direitos Mutex
  • SemáforoDireitos
  • Direitos de Chave Criptográfica
  • EventWaitHandleRights

Por padrão, o cmdlet usa direitos do sistema de arquivos.

CryptoKeyRights e ActiveDirectoryRights não têm suporte no PowerShell Core.

Propriedades do parâmetro

Tipo:Object
Valor padrão:None
Valores aceitos:FileSystemRights, RegistryRights, ActiveDirectoryRights, MutexRights, SemaphoreRights, CryptoKeyRights, EventWaitHandleRights
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes: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.