Set-AzDataLakeGen2ItemAclObject

Crée/Mises à jour un objet ACL d’élément DataLake gen2, qui peut être utilisé dans l’applet de commande Update-AzDataLakeGen2Item.

Syntax

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

Description

L’applet de commande Set-AzDataLakeGen2ItemAclObject crée/met à jour un objet ACL d’élément DataLake gen2, qui peut être utilisé dans l’applet de commande Update-AzDataLakeGen2Item. Si la nouvelle entrée ACL avec le même AccessControlType/EntityId/DefaultScope n’existe pas dans la liste de contrôle d’accès d’entrée, crée une entrée de liste de contrôle d’accès, sinon l’autorisation de mise à jour de l’entrée ACL existante.

Exemples

Exemple 1 : Créer un objet ACL avec 3 entrées de liste de contrôle d’accès et mettre à jour la liste de contrôle d’accès sur un répertoire

$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

Cette commande crée un objet ACL avec 3 entrées de liste de contrôle d’accès (utilisez le paramètre -InputObject pour ajouter une entrée acl à un objet acl existant) et met à jour la liste de contrôle d’accès sur un répertoire.

Exemple 2 : Créer un objet ACL avec 4 entrées de liste de contrôle d’accès et mettre à jour l’autorisation d’une entrée ACL existante

$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

Cette commande crée d’abord un objet ACL avec 4 entrées de liste de contrôle d’accès, puis réexécutez l’applet de commande avec une autorisation différente, mais le même AccessControlType/EntityId/DefaultScope d’une entrée ACL existante. Ensuite, l’autorisation de l’entrée ACL est mise à jour, mais aucune nouvelle entrée de liste de contrôle d’accès n’est ajoutée.

Paramètres

-AccessControlType

Il existe quatre types : « utilisateur » accorde des droits au propriétaire ou à un utilisateur nommé, « groupe » accorde des droits au groupe propriétaire ou à un groupe nommé, « mask » restreint les droits accordés aux utilisateurs nommés et aux membres des groupes, et « autres » accorde des droits à tous les utilisateurs introuvables dans l’une des autres entrées.

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

-DefaultScope

Définissez ce paramètre pour indiquer que l’ACE appartient à la liste de contrôle d’accès par défaut d’un répertoire ; sinon, l’étendue est implicite et l’ACE appartient à la liste de contrôle d’accès d’accès.

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

-EntityId

Identificateur d’utilisateur ou de groupe. Il est omis pour les entrées de AccessControlType « mask » et « other ». L’identificateur d’utilisateur ou de groupe est également omis pour le propriétaire et le groupe propriétaire.

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

-InputObject

Si l’entrée de l’objet PSPathAccessControlEntry[] ajoute la nouvelle liste de contrôle d’accès en tant qu’élément de l’objet PSPathAccessControlEntry[] d’entrée.

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

-Permission

Le champ d’autorisation est une séquence de 3 caractères où le premier caractère est « r » pour accorder l’accès en lecture, le deuxième caractère est « w » pour accorder l’accès en écriture et le troisième caractère est « x » pour accorder l’autorisation d’exécution. Si l’accès n’est pas accordé, le caractère « - » est utilisé pour indiquer que l’autorisation est refusée. Le bit collant est également pris en charge et est représenté par la lettre t ou T dans le caractère final, selon que le bit d’exécution pour les autres catégories est défini ou non défini respectivement, l’absence de t ou T indique que le bit collant n’est pas défini.

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

Entrées

None

Sorties

PSPathAccessControlEntry