Describe implication of upstream ICU-22610
[samba.git] / docs-xml / manpages / vfs_acl_xattr.8.xml
blobbb72f3facc6e1c9917fa7f1a13b60ad174b54853
1 <?xml version="1.0" encoding="iso-8859-1"?>
2 <!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
3 <refentry id="vfs_acl_xattr.8">
5 <refmeta>
6         <refentrytitle>vfs_acl_xattr</refentrytitle>
7         <manvolnum>8</manvolnum>
8         <refmiscinfo class="source">Samba</refmiscinfo>
9         <refmiscinfo class="manual">System Administration tools</refmiscinfo>
10         <refmiscinfo class="version">&doc.version;</refmiscinfo>
11 </refmeta>
14 <refnamediv>
15         <refname>vfs_acl_xattr</refname>
16         <refpurpose>Save NTFS-ACLs in Extended Attributes (EAs)</refpurpose>
17 </refnamediv>
19 <refsynopsisdiv>
20         <cmdsynopsis>
21                 <command>vfs objects = acl_xattr</command>
22         </cmdsynopsis>
23 </refsynopsisdiv>
25 <refsect1>
26         <title>DESCRIPTION</title>
28         <para>This VFS module is part of the
29         <citerefentry><refentrytitle>samba</refentrytitle>
30         <manvolnum>7</manvolnum></citerefentry> suite.</para>
32         <para>This module is made for systems which do not support
33         standardized NFS4 ACLs but only a deprecated POSIX ACL
34         draft implementation. This is usually the case on Linux systems.
35         Systems that do support just use NFSv4 ACLs directly instead
36         of this module. Such support is usually provided by the filesystem
37         VFS module specific to the underlying filesystem that supports
38         NFS4 ACLs
39         </para>
41         <para>The <command>vfs_acl_xattr</command> VFS module stores
42         NTFS Access Control Lists (ACLs) in Extended Attributes (EAs).
43         This enables the full mapping of Windows ACLs on Samba
44         servers even if the ACL implementation is not capable of
45         doing so.
46         </para>
48         <para>The NT ACLs are stored in the
49         <parameter>security.NTACL</parameter> extended attribute of files and
50         directories in a form containing the Windows SID representing the users
51         and groups in the ACL.
52         This is different from the uid and gids stored in local filesystem ACLs
53         and the mapping from users and groups to Windows SIDs must be
54         consistent in order to maintain the meaning of the stored NT ACL
55         That extended attribute is <emphasis>not</emphasis> listed by the Linux
56         command <command>getfattr -d <filename>filename</filename></command>.
57         To show the current value, the name of the EA must be specified
58         (e.g. <command>getfattr -n security.NTACL <filename>filename</filename>
59         </command>).
60         </para>
62         <para>
63         This module forces the following parameters:
64         <itemizedlist>
65         <listitem><para>inherit acls = true</para></listitem>
66         <listitem><para>dos filemode = true</para></listitem>
67         <listitem><para>force unknown acl user = true</para></listitem>
68         </itemizedlist>
69         </para>
71         <para>This module is stackable.</para>
72 </refsect1>
74 <refsect1>
75         <title>OPTIONS</title>
77         <variablelist>
78                 <!-- please keep in sync with the other acl vfs modules that provide the same options -->
79                 <varlistentry>
80                 <term>acl_xattr:security_acl_name = NAME</term>
81                 <listitem>
82                 <para>
83                 This option allows to redefine the default location for the
84                 NTACL extended attribute (xattr). If not set, NTACL xattrs are
85                 written to security.NTACL which is a protected location, which
86                 means the content of the security.NTACL attribute is not
87                 accessible from normal users outside of Samba. When this option
88                 is set to use a user-defined value, e.g. user.NTACL then any
89                 user can potentially access and overwrite this information. The
90                 module prevents access to this xattr over SMB, but the xattr may
91                 still be accessed by other means (eg local access, SSH, NFS). This option must only be used
92                 when this consequence is clearly understood and when specific precautions
93                 are taken to avoid compromising the ACL content.
94                 </para>
95                 </listitem>
96                 </varlistentry>
98                 <varlistentry>
99                 <term>acl_xattr:ignore system acls = [yes|no]</term>
100                 <listitem>
101                 <para>
102                 When set to <emphasis>yes</emphasis>, a best effort mapping
103                 from/to the POSIX draft ACL layer will <emphasis>not</emphasis> be
104                 done by this module. The default is <emphasis>no</emphasis>,
105                 which means that Samba keeps setting and evaluating both the
106                 system ACLs and the NT ACLs. This is better if you need your
107                 system ACLs be set for local or NFS file access, too. If you only
108                 access the data via Samba you might set this to yes to achieve
109                 better NT ACL compatibility.
110                 </para>
112                 <para>
113                 If <emphasis>acl_xattr:ignore system acls</emphasis>
114                 is set to <emphasis>yes</emphasis>, the following
115                 additional settings will be enforced:
116                 <itemizedlist>
117                 <listitem><para>create mask = 0666</para></listitem>
118                 <listitem><para>directory mask = 0777</para></listitem>
119                 <listitem><para>map archive = no</para></listitem>
120                 <listitem><para>map hidden = no</para></listitem>
121                 <listitem><para>map readonly = no</para></listitem>
122                 <listitem><para>map system = no</para></listitem>
123                 <listitem><para>store dos attributes = yes</para></listitem>
124                 </itemizedlist>
125                 </para>
126                 </listitem>
127                 </varlistentry>
129                 <varlistentry>
130                 <term>acl_xattr:default acl style = [posix|windows|everyone]</term>
131                 <listitem>
132                 <para>
133                 This parameter determines the type of ACL that is synthesized in
134                 case a file or directory lacks an
135                 <emphasis>security.NTACL</emphasis> xattr.
136                 </para>
137                 <para>
138                 When set to <emphasis>posix</emphasis>, an ACL will be
139                 synthesized based on the POSIX mode permissions for user, group
140                 and others, with an additional ACE for <emphasis>NT
141                 Authority\SYSTEM</emphasis> will full rights.
142                 </para>
143                 <para>
144                 When set to <emphasis>windows</emphasis>, an ACL is synthesized
145                 the same way Windows does it, only including permissions for the
146                 owner and <emphasis>NT Authority\SYSTEM</emphasis>.
147                 </para>
148                 <para>
149                 When set to <emphasis>everyone</emphasis>, an ACL is synthesized
150                 giving full permissions to everyone (S-1-1-0).
151                 </para>
152                 <para>
153                 The default for this option is <emphasis>posix</emphasis>.
154                 </para>
155                 </listitem>
156                 </varlistentry>
157         </variablelist>
159 </refsect1>
161 <refsect1>
162         <title>AUTHOR</title>
164         <para>The original Samba software and related utilities
165         were created by Andrew Tridgell. Samba is now developed
166         by the Samba Team as an Open Source project similar
167         to the way the Linux kernel is developed.</para>
168 </refsect1>
170 </refentry>