Partilhar via


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.