========== setcifsacl ========== ------------------------------------------------------------------------------------------------ Userspace helper to alter an ACL in a security descriptor for Common Internet File System (CIFS) ------------------------------------------------------------------------------------------------ :Manual section: 1 ******** SYNOPSIS ******** setcifsacl [-v|-a|-D|-M|-S] "{one or more ACEs}" {file system object} *********** DESCRIPTION *********** This tool is part of the cifs-utils suite. \ **setcifsacl**\ is a userspace helper program for the Linux CIFS client file system. It is intended to alter an ACL of a security descriptor for a file system object. Whether a security descriptor to be set is applied or not is determined by the CIFS/SMB server. This program uses a plugin to handle the mapping of user and group names to SIDs. ``@pluginpath@`` should be a symlink that points to the correct plugin to use. ******* OPTIONS ******* \ **-h**\ Print usage message and exit. \ **-v**\ Print version number and exit. \ **-a**\ Add one or more ACEs to an ACL of a security descriptor. An ACE is added even if the same ACE exists in the ACL. \ **-D**\ Delete one or more ACEs from an ACL of a security descriptor. Entire ACE has to match in an existing ACL for the listed ACEs to be deleted. \ **-M**\ Modify one or more ACEs from an ACL of a security descriptor. SID and type are used to match for existing ACEs to be modified with the list of ACEs specified. \ **-S**\ Set an ACL of security descriptor with the list of ACEs Existing ACL is replaced entirely with the specified ACEs. Every ACE entry starts with "ACL:" One or more ACEs are specified within double quotes. Multiple ACEs are separated by a comma. Following fields of an ACE can be modified with possible values: \ **SID**\ - Either a name or a raw SID value. \ **type**\ - ALLOWED (0x0), DENIED (0x1), OBJECT_ALLOWED (0x5), OBJECT_DENIED (0x6) \ **flags**\ - OBJECT_INHERIT_FLAG (OI or 0x1), CONTAINER_INHERIT_FLAG (CI or 0x2), NO_PROPAGATE_INHERIT_FLAG (NI or 0x4), INHERIT_ONLY_FLAG (IO or 0x8), INHERITED_ACE_FLAG (IA or 0x10) or a combination/OR of these values. \ **mask**\ - Either one of FULL, CHANGE, READ, a combination of R W X D P O, or a hex value ******** EXAMPLES ******** Add an ACE ========== .. code-block:: perl setcifsacl -a "ACL:CIFSTESTDOM\user2:DENIED/0x1/D" setcifsacl -a "ACL:CIFSTESTDOM\user1:ALLOWED/OI|CI|NI/D" Delete an ACE ============= .. code-block:: perl setcifsacl -D "ACL:S-1-1-0:0x1/OI/0x1201ff" Modify an ACE ============= .. code-block:: perl setcifsacl -M "ACL:CIFSTESTDOM\user1:ALLOWED/0x1f/CHANGE" Set an ACL ========== .. code-block:: perl setcifsacl -S "ACL:CIFSTESTDOM\Administrator:0x0/0x0/FULL,ACL:CIFSTESTDOM\user2:0x0/0x0/FULL" ***** NOTES ***** Kernel support for getcifsacl/setcifsacl utilities was initially introduced in the 2.6.37 kernel. ******** SEE ALSO ******** mount.cifs(8), getcifsacl(1) ****** AUTHOR ****** Shirish Pargaonkar wrote the setcifsacl program. The Linux CIFS Mailing list is the preferred place to ask questions regarding these programs.