- Windows PowerShell - Utilización de WPS - Configuración de seguridad -Agregar un registro de derecho en una lista de derechos de acceso -

Objetos del tipo "FileSystemAccessRule" requieren:
- Objeto cuenta (objeto NTAccount o SecurityIdentifier)
- los derechos a otorgar (valores de FileSystemRights)
- objetivo a heredar (valor de la InheritanceFlags)
- tipo de herencia (valor de la PropagationFlags)
- tipo de regla: permite o prohíbe (valor de AccessControlType)
El siguiente script, le concede derechos de lectura sobre una carpeta a un usuario:

# escribir ACL: establecer derecho de lectura y escritura

# datos
$DIR = "d:\datos\clientes"
$usuario = "af"

# ACL
$ACL = Get-Acl $DIR

"ACL anterior:"
$acl | format-list

# definir ACE
$Rights = [System.Security.AccessControl.FileSystemRights] "ReadData,
ReadExtendedAttributes, ReadAttributes, ReadPermissions"
$Access=[System.Security.AccessControl.AccessControlType]::Allow
$Inherit=[System.Security.AccessControl.InheritanceFlags]::ContainerInherit '
-bor [System.Security.AccessControl.InheritanceFlags]::ObjectInherit
$Prop=[System.Security.AccessControl.PropagationFlags]::InheritOnly
$AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule '
($usuario,$Rights,$Inherit,$Prop,$Access)

# agregar ACE a ACL
$ACL.AddAccessRule($AccessRule)

# guardar ACL
Set-Acl –AclObject $ACL –Path $DIR

# control
$ACL = Get-Acl $DIR
"ACL posterior:"
$acl | format-list

Cuando deban establecerse varios Flags en un parámetro, estos deben ser combinados con un o binario (operador –bor en WPS)

$Rights = [System.Security.AccessControl.FileSystemRights]::Read
-bor [System.Security.AccessControl.FileSystemRights]::ReadExtendedAttibutes
-bor [System.Security.AccessControl.FileSystemRights]::ReadAttributes
-bor [System.Security.AccessControl.FileSystemRights]::ReadPermissions

o

$Rights = [System.Security.AccessControl.FileSystemRights] "ReadData, ReadExtendedAttributes, ReadAttributes, ReadPermissions"

previo
Imprimir..
Ultima actualisación: Tue, 24 ▪ May ▪ 2011
próximo