498ef68fb3446491ba647a647ede2d7311ff4c17
[kai/samba.git] / docs-xml / manpages / idmap_autorid.8.xml
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="idmap_autorid.8">
4
5 <refmeta>
6         <refentrytitle>idmap_autorid</refentrytitle>
7         <manvolnum>8</manvolnum>
8         <refmiscinfo class="source">Samba</refmiscinfo>
9         <refmiscinfo class="manual">System Administration tools</refmiscinfo>
10         <refmiscinfo class="version">3.6</refmiscinfo>
11 </refmeta>
12
13
14 <refnamediv>
15         <refname>idmap_autorid</refname>
16         <refpurpose>Samba's idmap_autorid Backend for Winbind</refpurpose>
17 </refnamediv>
18
19 <refsynopsisdiv>
20         <title>DESCRIPTION</title>
21         <para>The idmap_autorid backend provides a way to use an algorithmic
22         mapping scheme to map UIDs/GIDs and SIDs that is more deterministic
23         than idmap_tdb and easier to configure than idmap_rid.</para>
24         <para>The module works similar to idmap_rid, but it automatically
25         configures the range to be used for each domain, so there is no need
26         to specify a specific range for each domain in the forest, the only
27         configuration that is needed is the range of uid/gids that shall
28         be used for user/group mappings and an optional size of the ranges
29         to be used.</para>
30         <para>The mappings of which domain is mapped to which range is stored
31         in autorid.tdb, thus you should backup this database regularly.</para>
32         <para>Due to the algorithm being used, it is the module that is
33         most easy to use as it only requires a minimal configuration.</para>
34 </refsynopsisdiv>
35
36 <refsect1>
37         <title>IDMAP OPTIONS</title>
38
39         <variablelist>
40                 <varlistentry>
41                 <term>rangesize = numberofidsperdomain</term>
42                 <listitem><para>
43                         Defines the available number of uids/gids per domain. The
44                         minimum needed value is 2000. SIDs with RIDs larger than this
45                         value cannot be mapped, are ignored and the corresponding map
46                         is discarded. Choose this value carefully, as this should
47                         not be changed after the first ranges for domains have been
48                         defined, otherwise mappings between domains will get intermixed
49                         leading to unpredictable results. Please note that RIDs in Windows
50                         Domains usually start with 500 for builtin users and 1000
51                         for regular users. As the parameter cannot be changed later, please
52                         plan accordingly for your expected number of users in a domain
53                         with safety margins.
54                         </para>
55                         <para>One range will be used for local users and groups and for
56                         non-domain well-known SIDs like Everyone (S-1-1-0) or Creator Owner (S-1-3-0).
57                         A chosen list of well-known SIDs will be preallocated on first start
58                         to create deterministic mappings for those.</para>
59                         <para>
60                         Thus the number of local users and groups that can be created is
61                         limited by this option as well. If you plan to create a large amount
62                         of local users or groups, you will need set this parameter accordingly.
63                         </para>
64                 <para>The default value is 100000.</para>
65                 </listitem>
66                 </varlistentry>
67                 <varlistentry>
68                 <term>read only = [ yes | no ]</term>
69                 <listitem><para>Turn the module into read-only mode. No new ranges will be allocated
70                         nor will new mappings be created in the idmap pool. Defaults to no.</para>
71                 </listitem>
72                 </varlistentry>
73                 <varlistentry>
74                 <term>ignore builtin = [ yes | no ]</term>
75                 <listitem><para>Ignore any mapping requests for the BUILTIN domain.
76                         Defaults to no.</para>
77                 </listitem>
78                 </varlistentry>
79         </variablelist>
80 </refsect1>
81
82 <refsect1>
83         <title>THE MAPPING FORMULAS</title>
84         <para>
85                 The Unix ID for a RID is calculated this way:
86                 <programlisting>
87                         ID = IDMAP UID LOW VALUE + DOMAINRANGENUMBER * RANGESIZE + RID
88                 </programlisting>
89         </para>
90         <para>
91                 Correspondingly, the formula for calculating the RID for a
92                 given Unix ID is this:
93                 <programlisting>
94                         RID = ID - IDMAP UID LOW VALUE - DOMAINRANGENUMBER * RANGESIZE
95                 </programlisting>
96         </para>
97 </refsect1>
98
99 <refsect1>
100         <title>EXAMPLES</title>
101         <para>
102                 This example shows you the minimal configuration that will
103                 work for the principial domain and 19 trusted domains.
104         </para>
105
106         <programlisting>
107         [global]
108         security = ads
109         workgroup = CUSTOMER
110         realm = CUSTOMER.COM
111
112         idmap config * : backend = autorid
113         idmap config * : range = 1000000-1999999
114
115         </programlisting>
116
117         <para>
118                 This example shows how to configure idmap_autorid as default
119                 for all domains with a potentially large amount of users
120                 plus a specific configuration for a trusted domain
121                 that uses the SFU mapping scheme. Please note that idmap 
122                 ranges and sfu ranges are not allowed to overlap.
123         </para>
124
125         <programlisting>
126         [global]
127         security = ads
128         workgroup = CUSTOMER
129         realm = CUSTOMER.COM
130
131         idmap config * : backend = autorid
132         idmap config * : range = 1000000-19999999
133         idmap config * : rangesize = 1000000
134
135         idmap config TRUSTED : backend  = ad
136         idmap config TRUSTED : range    = 50000 - 99999
137         idmap config TRUSTED : schema_mode = sfu
138         </programlisting>
139
140 </refsect1>
141
142 <refsect1>
143         <title>AUTHOR</title>
144
145         <para>
146         The original Samba software and related utilities
147         were created by Andrew Tridgell. Samba is now developed
148         by the Samba Team as an Open Source project similar
149         to the way the Linux kernel is developed.
150         </para>
151 </refsect1>
152
153 </refentry>