Set-AzDataLakeGen2ItemAclObject

Crea/Aggiornamenti un oggetto ACL dell'elemento DataLake Gen2, che può essere usato nel cmdlet Update-AzDataLakeGen2Item.

Sintassi

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

Descrizione

Il cmdlet Set-AzDataLakeGen2ItemAclObject crea/aggiorna un oggetto ACL dell'elemento DataLake Gen2, che può essere usato nel cmdlet Update-AzDataLakeGen2Item. Se la nuova voce ACL con la stessa voce AccessControlType/EntityId/DefaultScope non esiste nell'ACL di input, creerà una nuova voce ACL, altrimenti aggiornerà l'autorizzazione dell'ACL esistente.

Esempio

Esempio 1: Creare un oggetto ACL con 3 voci ACL e aggiornare ACL in una directory

$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

Questo comando crea un oggetto ACL con 3 voci ACL (usare il parametro -InputObject per aggiungere una voce acl all'oggetto acl esistente) e aggiorna ACL in una directory.

Esempio 2: Creare un oggetto ACL con 4 voci ACL e aggiornare l'autorizzazione di una voce ACL esistente

$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

Questo comando crea innanzitutto un oggetto ACL con 4 voci ACL, quindi esegue di nuovo il cmdlet con autorizzazioni diverse, ma lo stesso AccessControlType/EntityId/DefaultScope di una voce ACL esistente. Viene quindi aggiornata l'autorizzazione della voce ACL, ma non viene aggiunta alcuna nuova voce ACL.

Parametri

-AccessControlType

Esistono quattro tipi: "utente" concede diritti al proprietario o a un utente denominato, "gruppo" concede diritti al gruppo proprietario o a un gruppo denominato, "mask" limita i diritti concessi agli utenti denominati e ai membri dei gruppi e "altri" concede diritti a tutti gli utenti non trovati in nessuna delle altre voci.

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

-DefaultScope

Impostare questo parametro per indicare che ace appartiene all'ACL predefinito per una directory; in caso contrario, l'ambito è implicito e l'ace appartiene all'ACL di accesso.

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

-EntityId

Identificatore dell'utente o del gruppo. Viene omesso per le voci di AccessControlType "mask" e "other". L'identificatore utente o gruppo viene omesso anche per il proprietario e il gruppo proprietario.

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

-InputObject

Se si immette l'oggetto PSPathAccessControlEntry[] , verrà aggiunto il nuovo ACL come nuovo elemento dell'oggetto PSPathAccessControlEntry[].

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

-Permission

Il campo autorizzazione è una sequenza di 3 caratteri in cui il primo carattere è 'r' per concedere l'accesso in lettura, il secondo carattere è 'w' per concedere l'accesso in scrittura e il terzo carattere è 'x' per concedere l'autorizzazione di esecuzione. Se l'accesso non viene concesso, il carattere '-' viene usato per indicare che l'autorizzazione viene negata. Il bit sticky è supportato anche e il relativo rappresentato dalla lettera t o T nel punto finale a seconda che il bit di esecuzione per la categoria altre sia impostato o non impostato rispettivamente, l'assenza di t o T indica un bit sticky non impostato.

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

Input

None

Output

PSPathAccessControlEntry