Set-AzDataLakeGen2ItemAclObject

Crea o Novedades un objeto ACL de elemento DataLake gen2, que se puede usar en el cmdlet Update-AzDataLakeGen2Item.

Syntax

Set-AzDataLakeGen2ItemAclObject
   [-EntityId <String>]
   [-DefaultScope]
   -Permission <String>
   [-InputObject <PSPathAccessControlEntry[]>]
   -AccessControlType <AccessControlType>
   [<CommonParameters>]

Description

El cmdlet Set-AzDataLakeGen2ItemAclObject crea o actualiza un objeto ACL de elemento DataLake gen2, que se puede usar en el cmdlet Update-AzDataLakeGen2Item. Si la nueva entrada de ACL con el mismo AccessControlType/EntityId/DefaultScope no existe en la ACL de entrada, creará una nueva entrada de ACL; de lo contrario, actualizará el permiso de entrada de ACL existente.

Ejemplos

Ejemplo 1: Creación de un objeto ACL con 3 entradas de ACL y actualización de ACL en un directorio

$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -Permission rwx -DefaultScope
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType group -Permission rw- -InputObject $acl 
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType other -Permission "rw-" -InputObject $acl
Update-AzDataLakeGen2Item -FileSystem "filesystem1" -Path "dir1/dir3" -ACL $acl

FileSystem Name: filesystem1

Path                 IsDirectory  Length          LastModified         Permissions  Owner                Group               
----                 -----------  ------          ------------         -----------  -----                -----               
dir1/dir3            True                         2020-03-23 09:34:31Z rwxrw-rw-+   $superuser           $superuser

Este comando crea un objeto ACL con 3 entradas de ACL (use el parámetro -InputObject para agregar la entrada acl al objeto acl existente) y actualice la ACL en un directorio.

Ejemplo 2: Creación de un objeto ACL con 4 entradas de ACL y permiso de actualización de una entrada de ACL existente

$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -Permission rwx -DefaultScope
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType group -Permission rw- -InputObject $acl 
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType other -Permission "rwt" -InputObject $acl
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -EntityId $id -Permission rwx -InputObject $acl 
$acl

DefaultScope AccessControlType EntityId                             Permissions
------------ ----------------- --------                             -----------
True         User                                                   rwx        
False        Group                                                  rw-        
False        Other                                                  rwt        
False        User              ********-****-****-****-************ rwx        

$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -EntityId $id -Permission r-x -InputObject $acl 
$acl  

DefaultScope AccessControlType EntityId                             Permissions
------------ ----------------- --------                             -----------
True         User                                                   rwx        
False        Group                                                  rw-        
False        Other                                                  rw-        
False        User              ********-****-****-****-************ r-x

Este comando crea primero un objeto ACL con 4 entradas de ACL y, a continuación, vuelve a ejecutar el cmdlet con permisos diferentes, pero con el mismo AccessControlType/EntityId/DefaultScope de una entrada de ACL existente. A continuación, se actualiza el permiso de la entrada de ACL, pero no se agrega ninguna nueva entrada de ACL.

Parámetros

-AccessControlType

Hay cuatro tipos: "usuario" concede derechos al propietario o a un usuario con nombre, "group" concede derechos al grupo propietario o a un grupo con nombre, "mask" restringe los derechos concedidos a los usuarios con nombre y a los miembros de los grupos, y "otros" concede derechos a todos los usuarios que no se encuentran en ninguna de las demás entradas.

Type:AccessControlType
Accepted values:User, Group, Mask, Other
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DefaultScope

Establezca este parámetro para indicar que la ACE pertenece a la ACL predeterminada para un directorio; de lo contrario, el ámbito es implícito y la ACE pertenece a la ACL de acceso.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EntityId

Identificador de usuario o grupo. Se omite para las entradas de AccessControlType "mask" y "other". El identificador de usuario o grupo también se omite para el propietario y el grupo propietario.

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

-InputObject

Si introduce el objeto PSPathAccessControlEntry[], agregará la nueva ACL como un nuevo elemento del objeto PSPathAccessControlEntry[].

Type:PSPathAccessControlEntry[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Permission

El campo de permiso es una secuencia de 3 caracteres donde el primer carácter es "r" para conceder acceso de lectura, el segundo carácter es "w" para conceder acceso de escritura y el tercer carácter es "x" para conceder permiso de ejecución. Si no se concede acceso, el carácter "-" se usa para indicar que se deniega el permiso. El bit pegajoso también se admite y su representado por la letra t o T en el carácter final en función de si el bit de ejecución de la categoría de otros se establece o no se establece respectivamente, la ausencia de t o T indica que el bit pegajoso no está establecido.

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

Entradas

None

Salidas

PSPathAccessControlEntry