6
6
In contrast to read only backends like idmap_rid, it is an allocating
7
7
backend: This means that it needs to allocate new user and group IDs in
8
order to create new mappings. The allocator can be provided by the
9
idmap_tdb2 backend itself or by any other allocating backend like
10
idmap_tdb or idmap_ldap. This is configured with the
11
parameter <em class="parameter"><code>idmap alloc backend</code></em>.
13
Note that in order for this (or any other allocating) backend to
14
function at all, the default backend needs to be writeable.
15
The ranges used for uid and gid allocation are the default ranges
16
configured by "idmap uid" and "idmap gid".
18
Furthermore, since there is only one global allocating backend
19
responsible for all domains using writeable idmap backends,
20
any explicitly configured domain with idmap backend tdb2
21
should have the same range as the default range, since it needs
22
to use the global uid / gid allocator. See the example below.
23
</p></div><div class="refsect1" title="IDMAP OPTIONS"><a name="id266361"></a><h2>IDMAP OPTIONS</h2><div class="variablelist"><dl><dt><span class="term">range = low - high</span></dt><dd><p>
8
order to create new mappings.
9
</p></div><div class="refsect1" title="IDMAP OPTIONS"><a name="id266343"></a><h2>IDMAP OPTIONS</h2><div class="variablelist"><dl><dt><span class="term">range = low - high</span></dt><dd><p>
24
10
Defines the available matching uid and gid range for which the
25
11
backend is authoritative.
26
If the parameter is absent, Winbind fails over to use
27
the "idmap uid" and "idmap gid" options
29
</p></dd></dl></div></div><div class="refsect1" title="IDMAP SCRIPT"><a name="id266839"></a><h2>IDMAP SCRIPT</h2><p>
30
The tdb2 idmap backend supports a script for performing id mappings
31
through the smb.conf option <em class="parameter"><code>idmap : script</code></em>.
12
</p></dd><dt><span class="term">script</span></dt><dd><p>
13
This option can be used to configure an external program
14
for performing id mappings instead of using the tdb
15
counter. The mappings are then stored int tdb2 idmap
16
database. For details see the section on IDMAP SCRIPT below.
17
</p></dd></dl></div></div><div class="refsect1" title="IDMAP SCRIPT"><a name="id266833"></a><h2>IDMAP SCRIPT</h2><p>
18
The tdb2 idmap backend supports an external program for performing id mappings
19
through the smb.conf option <em class="parameter"><code>idmap config * : script</code></em> or
20
its deprecated legacy form <em class="parameter"><code>idmap : script</code></em>.
22
The mappings obtained by the script are then stored in the idmap tdb2
23
database instead of mappings created by the incrementing id counters.
24
It is therefore important that the script covers the complete range of
25
SIDs that can be passed in for SID to Unix ID mapping, since otherwise
26
SIDs unmapped by the script might get mapped to IDs that had
27
previously been mapped by the script.
32
29
The script should accept the following command line options.
33
30
</p><pre class="programlisting">
46
Note that the script should cover the complete range of SIDs
47
that can be passed in for SID to Unix ID mapping, since otherwise
48
SIDs unmapped by the script might get mapped to IDs that had
49
previously been mapped by the script.
50
</p></div><div class="refsect1" title="EXAMPLES"><a name="id266875"></a><h2>EXAMPLES</h2><p>
42
</pre></div><div class="refsect1" title="EXAMPLES"><a name="id266880"></a><h2>EXAMPLES</h2><p>
51
43
This example shows how tdb2 is used as a the default idmap backend.
52
It configures the idmap range through the global options for all
53
domains encountered. This same range is used for uid/gid allocation.
54
</p><pre class="programlisting">
57
idmap uid = 1000000-2000000
58
idmap gid = 1000000-2000000
59
</pre></div><div class="refsect1" title="AUTHOR"><a name="id266893"></a><h2>AUTHOR</h2><p>
44
</p><pre class="programlisting">
46
idmap config * : backend = tdb2
47
idmap config * : range = 1000000-2000000
49
This example shows how tdb2 is used as a the default idmap backend
50
using an external program via the script parameter:
51
</p><pre class="programlisting">
53
idmap config * : backend = tdb2
54
idmap config * : range = 1000000-2000000
55
idmap config * : script = /usr/local/samba/bin/idmap_script.sh
56
</pre></div><div class="refsect1" title="AUTHOR"><a name="id265703"></a><h2>AUTHOR</h2><p>
60
57
The original Samba software and related utilities
61
58
were created by Andrew Tridgell. Samba is now developed
62
59
by the Samba Team as an Open Source project similar