Set-AzDataLakeGen2ItemAclObject
Vytvoří nebo aktualizuje objekt ACL položky DataLake Gen2, který lze použít v rutině Update-AzDataLakeGen2Item.
Syntaxe
Set-AzDataLakeGen2ItemAclObject
[-EntityId <String>]
[-DefaultScope]
-Permission <String>
[-InputObject <PSPathAccessControlEntry[]>]
-AccessControlType <AccessControlType>
[<CommonParameters>]
Description
Rutina Set-AzDataLakeGen2ItemAclObject vytvoří nebo aktualizuje objekt ACL položky DataLake gen2, který lze použít v rutině Update-AzDataLakeGen2Item. Pokud nová položka seznamu ACL se stejnou položkou AccessControlType/EntityId/DefaultScope ve vstupním seznamu ACL neexistuje, vytvoří novou položku seznamu ACL, jinak aktualizuje oprávnění existující položky seznamu ACL.
Příklady
Příklad 1: Vytvoření objektu ACL se 3 položkou seznamu ACL a aktualizací seznamu ACL v adresáři
$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
Tento příkaz vytvoří objekt ACL se 3 položkami seznamu ACL (pomocí parametru -InputObject přidat položku acl do existujícího objektu acl) a aktualizuje seznam ACL v adresáři.
Příklad 2: Vytvoření objektu ACL se 4 položkami seznamu ACL a aktualizace oprávnění existující položky seznamu ACL
$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
Tento příkaz nejprve vytvoří objekt ACL se 4 položkami seznamu ACL a pak znovu spustí rutinu s jiným oprávněním, ale stejným AccessControlType/EntityId/DefaultScope existující položky seznamu ACL. Pak se aktualizuje oprávnění položky seznamu ACL, ale nepřidá se žádná nová položka seznamu ACL.
Parametry
-AccessControlType
Existují čtyři typy: "uživatel" uděluje práva vlastníkovi nebo pojmenovaného uživatele, "skupina" uděluje práva vlastnící skupině nebo pojmenované skupině, "maska" omezuje práva udělená pojmenovaným uživatelům a členům skupin a "ostatní" uděluje práva všem uživatelům, kteří nejsou nalezeni v žádné z ostatních položek.
Typ: | AccessControlType |
Přípustné hodnoty: | User, Group, Mask, Other |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-DefaultScope
Nastavte tento parametr tak, aby označil, že ACE patří do výchozího seznamu ACL pro adresář; jinak je obor implicitní a ACE patří do přístupového seznamu ACL.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-EntityId
Identifikátor uživatele nebo skupiny. Pro položky AccessControlType "mask" a "other" se vynechá. Identifikátor uživatele nebo skupiny je také vynechán pro vlastníka a vlastnící skupinu.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-InputObject
Pokud zadáte objekt PSPathAccessControlEntry[], přidá nový seznam ACL jako nový prvek vstupního objektu PSPathAccessControlEntry[].
Typ: | PSPathAccessControlEntry[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Permission
Pole oprávnění je 3znaková sekvence, kde první znak je r pro udělení přístupu pro čtení, druhý znak je w pro udělení přístupu k zápisu a třetí znak je x pro udělení oprávnění ke spuštění. Pokud přístup není udělen, znak -se použije k označení, že oprávnění je odepřeno. Bit sticky je také podporován a jeho znázornění písmenem t nebo T v konečném znaku v závislosti na tom, zda je spouštěcí bit pro ostatní kategorie nastaven nebo je nenastavený, absence t nebo T indikuje nenastavený bit.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
None
Výstupy
Azure PowerShell