ConvertFrom-SddlString

Преобразует строку SDDL в пользовательский объект.

Синтаксис

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

Описание

Этот командлет доступен только на платформе Windows.

Командлет ConvertFrom-SddlString преобразует строку языка определения дескриптора безопасности в пользовательский объект PSCustomObject со следующими свойствами: Owner, Group, CustomaryAcl, SystemAcl и RawDescriptor.

Владелец, группа, дискреционные свойстваAcl и SystemAcl содержат доступное для чтения текстовое представление прав доступа, указанных в строке SDDL.

Этот командлет появился в PowerShell 5.0.

Примеры

Пример 1. Преобразование SDDL прав доступа к файловой системе в PSCustomObject

$acl = Get-Acl -Path C:\Windows
ConvertFrom-SddlString -Sddl $acl.Sddl

Первая команда использует Get-Acl командлет для получения дескриптора безопасности для папки C:\Windows и сохраняет его в переменной.

Вторая команда использует ConvertFrom-SddlString командлет для получения текстового представления строки SDDL, содержащейся в свойстве Sddl объекта, представляющего дескриптор безопасности.

Пример 2. Преобразование SDDL прав доступа реестра в PSCustomObject

$acl = Get-Acl HKLM:\SOFTWARE\Microsoft\
ConvertFrom-SddlString -Sddl $acl.Sddl -Type RegistryRights

Первая команда использует Get-Acl командлет для получения дескриптора безопасности для ключа HKLM:\SOFTWARE\Microsoft\ и сохраняет его в переменной.

Вторая команда использует ConvertFrom-SddlString командлет для получения текстового представления строки SDDL, содержащейся в свойстве Sddl объекта, представляющего дескриптор безопасности.

Он использует -Type параметр, чтобы указать, что строка SDDL представляет дескриптор безопасности реестра.

Пример 3. Преобразование SDDL прав доступа реестра в PSCustomObject с помощью ConvertFrom-SddlString с параметром -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)

Первая команда использует Get-Acl командлет для получения дескриптора безопасности для ключа HKLM:\SOFTWARE\Microsoft\ и сохраняет его в переменной.

Вторая команда использует ConvertFrom-SddlString командлет для получения текстового представления строки SDDL, содержащейся в свойстве Sddl объекта, представляющего дескриптор безопасности.

Этот параметр не используется -Type , поэтому для файловой системы отображаются права доступа.

Третья команда использует командлет с параметром ConvertFrom-SddlString-Type , поэтому возвращенные права доступа предназначены для реестра.

Параметры

-Sddl

Указывает строку, представляющую дескриптор безопасности в синтаксисе SDDL.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Type

Указывает тип прав, которые представляет строка SDDL.

Допустимые значения для этого параметра:

  • FileSystemRights
  • RegistryRights
  • ActiveDirectoryRights
  • МьютексРайтс
  • SemaphoreRights
  • CryptoKeyRights
  • EventWaitHandleRights

По умолчанию командлет использует права файловой системы.

CryptoKeyRights и ActiveDirectoryRights не поддерживаются в PowerShell версии 6 и выше.

Type:Microsoft.PowerShell.Commands.ConvertFromSddlStringCommand+AccessRightTypeNames
Accepted values:FileSystemRights, RegistryRights, ActiveDirectoryRights, MutexRights, SemaphoreRights, CryptoKeyRights, EventWaitHandleRights
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

String

Вы можете передать строку SDDL в этот командлет.

Примечания

Этот командлет доступен только на платформах Windows.