docs:smbdotconf: remove swat-specific flags.
[Samba.git] / docs-xml / smbdotconf / winbind / idmapconfig.xml
blob434d379b0762c465a78cd928a1ac7e1056ab6ca4
1 <samba:parameter name="idmap config:OPTION"
2                  context="G"
3                  type="string"
4                  xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
5 <description>
7         <para>
8         ID mapping in Samba is the mapping between Windows SIDs and Unix user
9         and group IDs. This is performed by Winbindd with a configurable plugin
10         interface. Samba's ID mapping is configured by options starting with the
11         <smbconfoption name="idmap config"/> prefix.
12         An idmap option consists of the <smbconfoption name="idmap config"/>
13         prefix, followed by a domain name or the asterisk character (*),
14         a colon, and the name of an idmap setting for the chosen domain.
15         </para>
17         <para>
18         The idmap configuration is hence divided into groups, one group
19         for each domain to be configured, and one group with the
20         asterisk instead of a proper domain name, which specifies the
21         default configuration that is used to catch all domains that do
22         not have an explicit idmap configuration of their own.
23         </para>
25         <para>
26         There are three general options available:
27         </para>
29         <variablelist>
30                 <varlistentry>
31                 <term>backend = backend_name</term>
32                 <listitem><para>
33                 This specifies the name of the idmap plugin to use as the
34                 SID/uid/gid backend for this domain. The standard backends are
35                 tdb
36                 (<citerefentry><refentrytitle>idmap_tdb</refentrytitle> <manvolnum>8</manvolnum> </citerefentry>),
37                 tdb2
38                 (<citerefentry><refentrytitle>idmap_tdb2</refentrytitle> <manvolnum>8</manvolnum></citerefentry>),
39                 ldap
40                 (<citerefentry><refentrytitle>idmap_ldap</refentrytitle> <manvolnum>8</manvolnum></citerefentry>),
41                 ,
42                 rid
43                 (<citerefentry><refentrytitle>idmap_rid</refentrytitle> <manvolnum>8</manvolnum></citerefentry>),
44                 ,
45                 hash
46                 (<citerefentry><refentrytitle>idmap_hash</refentrytitle> <manvolnum>8</manvolnum></citerefentry>),
47                 ,
48                 autorid
49                 (<citerefentry><refentrytitle>idmap_autorid</refentrytitle> <manvolnum>8</manvolnum></citerefentry>),
50                 ,
51                 ad
52                 (<citerefentry><refentrytitle>idmap_ad</refentrytitle> <manvolnum>8</manvolnum></citerefentry>),
53                 ,
54                 and nss.
55                 (<citerefentry><refentrytitle>idmap_nss</refentrytitle> <manvolnum>8</manvolnum></citerefentry>),
56                 The corresponding manual pages contain the details, but
57                 here is a summary.
58                 </para>
59                 <para>
60                 The first three of these create mappings of their own using
61                 internal unixid counters and store the mappings in a database.
62                 These are suitable for use in the default idmap configuration.
63                 The rid and hash backends use a pure algorithmic calculation
64                 to determine the unixid for a SID. The autorid module is a
65                 mixture of the tdb and rid backend. It creates ranges for
66                 each domain encountered and then uses the rid algorithm for each
67                 of these automatically configured domains individually.
68                 The ad backend usees unix IDs stored in Active Directory via
69                 the standard schema extensions. The nss backend reverses
70                 the standard winbindd setup and gets the unixids via names
71                 from nsswitch which can be useful in an ldap setup.
72                 </para></listitem>
73                 </varlistentry>
75                 <varlistentry>
76                 <term>range = low - high</term>
77                 <listitem><para>
78                 Defines the available matching uid and gid range for which the
79                 backend is authoritative. For allocating backends, this also
80                 defines the start and the end of the range for allocating
81                 new unique IDs.
82                 </para>
83                 <para>
84                 winbind uses this parameter to find the backend that is
85                 authoritative for a unix ID to SID mapping, so it must be set
86                 for each individually configured domain and for the default
87                 configuration. The configured ranges must be mutually disjoint.
88                 </para></listitem>
89                 </varlistentry>
91                 <varlistentry>
92                 <term>read only = yes|no</term>
93                 <listitem><para>
94                 This option can be used to turn the writing backends
95                 tdb, tdb2, and ldap into read only mode. This can be useful
96                 e.g. in cases where a pre-filled database exists that should
97                 not be extended automatically.
98                 </para></listitem>
99                 </varlistentry>
100         </variablelist>
102         <para>
103         The following example illustrates how to configure the <citerefentry>
104         <refentrytitle>idmap_ad</refentrytitle> <manvolnum>8</manvolnum>
105         </citerefentry> backend for the CORP domain and the
106         <citerefentry><refentrytitle>idmap_tdb</refentrytitle>
107         <manvolnum>8</manvolnum></citerefentry> backend for all other
108         domains. This configuration assumes that the admin of CORP assigns
109         unix ids below 1000000 via the SFU extensions, and winbind is supposed
110         to use the next million entries for its own mappings from trusted
111         domains and for local groups for example.
112         </para>
114         <programlisting>
115         idmap config * : backend = tdb
116         idmap config * : range = 1000000-1999999
118         idmap config CORP : backend  = ad
119         idmap config CORP : range = 1000-999999
120         </programlisting>
121         
122 </description>
123 </samba:parameter>