ConvertFrom-SddlString
Konvertiert eine SDDL-Zeichenfolge in ein benutzerdefiniertes Objekt.
Syntax
ConvertFrom-SddlString
[-Sddl] <String>
[-Type <Object>]
[<CommonParameters>]
Beschreibung
Das ConvertFrom-SddlString
Cmdlet konvertiert eine Security Descriptor Definition Language-Zeichenfolge in ein benutzerdefiniertes PSCustomObject-Objekt mit den folgenden Eigenschaften: Owner, Group, DiscretionaryAcl, SystemAcl und RawDescriptor.
Die Eigenschaften "Owner", "Group", "DiscretionaryAcl" und "SystemAcl" enthalten eine lesbare Textdarstellung der in einer SDDL-Zeichenfolge angegebenen Zugriffsrechte.
Dieses Cmdlet wurde in PowerShell 5.0 eingeführt.
Beispiele
Beispiel 1: Konvertieren der Dateisystemzugriffsrechte SDDL in ein PSCustomObject
$acl = Get-Acl -Path C:\Windows
ConvertFrom-SddlString -Sddl $acl.Sddl
Der erste Befehl verwendet das Get-Acl
Cmdlet, um den Sicherheitsdeskriptor für den Ordner C:\Windows abzurufen und in der Variablen zu speichern.
Der zweite Befehl verwendet das ConvertFrom-SddlString
Cmdlet, um die Textdarstellung der SDDL-Zeichenfolge abzurufen, die in der Sddl-Eigenschaft des Objekts enthalten ist, das die Sicherheitsbeschreibung darstellt.
Beispiel 2: Konvertieren der Registrierungszugriffsrechte SDDL in ein PSCustomObject
$acl = Get-Acl HKLM:\SOFTWARE\Microsoft\
ConvertFrom-SddlString -Sddl $acl.Sddl -Type RegistryRights
Der erste Befehl verwendet das Get-Acl
Cmdlet, um den Sicherheitsdeskriptor für den SCHLÜSSEL HKLM:\SOFTWARE\Microsoft\ abzurufen und in der Variablen zu speichern.
Der zweite Befehl verwendet das ConvertFrom-SddlString
Cmdlet, um die Textdarstellung der SDDL-Zeichenfolge abzurufen, die in der Sddl-Eigenschaft des Objekts enthalten ist, das die Sicherheitsbeschreibung darstellt.
Er verwendet den -Type
-Parameter, um anzugeben, dass die SDDL-Zeichenfolge einen Registrierungssicherheitsdeskriptor darstellt.
Beispiel 3: Konvertieren der Registrierungszugriffsrechte SDDL in ein PSCustomObject mithilfe von ConvertFrom-SddlString mit und ohne den Parameter "-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)
Der erste Befehl verwendet das Get-Acl
Cmdlet, um den Sicherheitsdeskriptor für den SCHLÜSSEL HKLM:\SOFTWARE\Microsoft\ abzurufen und in der Variablen zu speichern.
Der zweite Befehl verwendet das ConvertFrom-SddlString
Cmdlet, um die Textdarstellung der SDDL-Zeichenfolge abzurufen, die in der Sddl-Eigenschaft des Objekts enthalten ist, das die Sicherheitsbeschreibung darstellt.
Der Parameter wird nicht verwendet -Type
, sodass die angezeigten Zugriffsrechte für das Dateisystem gelten.
Der dritte Befehl verwendet das ConvertFrom-SddlString
Cmdlet mit dem -Type
Parameter, sodass die zurückgegebenen Zugriffsrechte für die Registrierung gelten.
Beispiel 4: Konvertieren der Active Directory-Zugriffsrechte SDDL in ein PSCustomObject
$user = [ADSI]"LDAP://CN=username,CN=Users,DC=domain,DC=com"
ConvertFrom-SddlString $user.psbase.ObjectSecurity.Sddl -Type ActiveDirectoryRights
Der erste Befehl verwendet Active Directory Service Interfaces (ADSI), um das Benutzerobjekt abzurufen und in der Variablen zu speichern.
Der zweite Befehl verwendet das ConvertFrom-SddlString
Cmdlet, um eine Textdarstellung der SDDL-Zeichenfolge abzurufen, die in der Sddl-Eigenschaft des Objekts enthalten ist, das die Sicherheitsbeschreibung darstellt.
Er verwendet den -Type
-Parameter, um anzugeben, dass die SDDL-Zeichenfolge einen Active Directory-Sicherheitsdeskriptor darstellt.
Parameter
-Sddl
Gibt die Zeichenfolge an, die den Sicherheitsdeskriptor in der SDDL-Syntax darstellt.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Type
Gibt den Typ der Rechte an, die die SDDL-Zeichenfolge darstellt.
Zulässige Werte für diesen Parameter:
- Filesystemrights
- Registryrights
- Activedirectoryrights
- Mutexrights
- Semaphorerights
- Cryptokeyrights
- Eventwaithandlerights
Standardmäßig verwendet das Cmdlet Dateisystemrechte.
CryptoKeyRights und ActiveDirectoryRights werden in PowerShell Core nicht unterstützt.
Type: | Object |
Accepted values: | FileSystemRights, RegistryRights, ActiveDirectoryRights, MutexRights, SemaphoreRights, CryptoKeyRights, EventWaitHandleRights |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |