Set-AzDataLakeGen2ItemAclObject
Создает или обновляет объект ACL элемента DataLake 2-го поколения, который можно использовать в командлете Update-AzDataLakeGen2Item.
Синтаксис
Set-AzDataLakeGen2ItemAclObject
[-EntityId <String>]
[-DefaultScope]
-Permission <String>
[-InputObject <PSPathAccessControlEntry[]>]
-AccessControlType <AccessControlType>
[<CommonParameters>]
Описание
Командлет Set-AzDataLakeGen2ItemAclObject создает/обновляет объект ACL элемента DataLake 2-го поколения, который можно использовать в командлете Update-AzDataLakeGen2Item. Если новая запись ACL с тем же AccessControlType/EntityId/DefaultScope не существует в входном ACL, создадит новую запись ACL, в противном случае измените разрешение существующей записи ACL.
Примеры
Пример 1. Создание объекта ACL с записью 3 ACL и обновление ACL в каталоге
$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
Эта команда создает объект ACL с 3 записями ACL (используйте параметр -InputObject для добавления записи acl в существующий объект acl) и обновляет ACL в каталоге.
Пример 2. Создание объекта ACL с 4 записями ACL и обновление разрешения существующей записи 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
Эта команда сначала создает объект ACL с 4 записями ACL, а затем снова запустите командлет с разными разрешениями, но одинаковыми разрешениями AccessControlType/EntityId/DefaultScope существующей записи ACL. Затем обновляется разрешение записи ACL, но новая запись ACL не добавляется.
Параметры
-AccessControlType
Существует четыре типа: "пользователь" предоставляет права владельца или именованного пользователя, "группа" предоставляет права на владение группе или именованной группе, "маска" ограничивает права, предоставленные именованным пользователям и членам групп, и "другие" предоставляют права всем пользователям, не найденным в других записях.
Тип: | AccessControlType |
Допустимые значения: | User, Group, Mask, Other |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-DefaultScope
Задайте этот параметр, чтобы указать, что ACE принадлежит ACL по умолчанию для каталога; в противном случае область неявна, а ACE принадлежит доступу к ACL.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-EntityId
Идентификатор пользователя или группы. Он опущен для записей AccessControlType "mask" и "other". Идентификатор пользователя или группы также опущен для владельца и группы владельца.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-InputObject
Если входной объект PSPathAccessControlEntry[] добавит новый ACL в качестве нового элемента входного объекта PSPathAccessControlEntry[].
Тип: | PSPathAccessControlEntry[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Permission
Поле разрешений — это 3-символьная последовательность, в которой первый символ — R для предоставления доступа на чтение, второй символ — W для предоставления доступа на запись, а третий символ — x для предоставления разрешения на выполнение. Если доступ не предоставлен, символ "-" используется для обозначения того, что разрешение запрещено. Липкий бит также поддерживается и его представлен буквой t или T в последнем месте символа в зависимости от того, установлен ли бит выполнения для другой категории или не задан соответственно, отсутствие t или T указывает, что липкий бит не задан.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
None