Initial import
[samba] / docs / htmldocs / Samba3-HOWTO / rights.html
1 <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter 14. User Rights and Privileges</title><link rel="stylesheet" href="samba.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.68.1"><link rel="start" href="index.html" title="The Official Samba-3 HOWTO and Reference Guide"><link rel="up" href="optional.html" title="Part III. Advanced Configuration"><link rel="prev" href="idmapper.html" title="Chapter 13. Identity Mapping (IDMAP)"><link rel="next" href="AccessControls.html" title="Chapter 15. File, Directory, and Share Access Controls"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 14. User Rights and Privileges</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="idmapper.html">Prev</a> </td><th width="60%" align="center">Part III. Advanced Configuration</th><td width="20%" align="right"> <a accesskey="n" href="AccessControls.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="rights"></a>Chapter 14. User Rights and Privileges</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Gerald</span> <span class="othername">(Jerry)</span> <span class="surname">Carter</span></h3><div class="affiliation"><span class="orgname">Samba Team<br></span><div class="address"><p><code class="email">&lt;<a href="mailto:jerry@samba.org">jerry@samba.org</a>&gt;</code></p></div></div></div></div><div><div class="author"><h3 class="author"><span class="firstname">John</span> <span class="othername">H.</span> <span class="surname">Terpstra</span></h3><div class="affiliation"><span class="orgname">Samba Team<br></span><div class="address"><p><code class="email">&lt;<a href="mailto:jht@samba.org">jht@samba.org</a>&gt;</code></p></div></div></div></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="rights.html#id2576198">Rights Management Capabilities</a></span></dt><dd><dl><dt><span class="sect2"><a href="rights.html#id2576468">Using the &#8220;<span class="quote">net rpc rights</span>&#8221; Utility</a></span></dt><dt><span class="sect2"><a href="rights.html#id2576813">Description of Privileges</a></span></dt><dt><span class="sect2"><a href="rights.html#id2577125">Privileges Suppored by Windows 2000 Domain Controllers</a></span></dt></dl></dd><dt><span class="sect1"><a href="rights.html#id2577614">The Administrator Domain SID</a></span></dt><dt><span class="sect1"><a href="rights.html#id2577791">Common Errors</a></span></dt><dd><dl><dt><span class="sect2"><a href="rights.html#id2577797">What Rights and Privileges Will Permit Windows Client Administration?</a></span></dt></dl></dd></dl></div><p>
2 <a class="indexterm" name="id2575914"></a>
3 <a class="indexterm" name="id2575921"></a>
4 <a class="indexterm" name="id2575928"></a>
5 <a class="indexterm" name="id2575935"></a>
6 The administration of Windows user, group, and machine accounts in the Samba
7 domain-controlled network necessitates interfacing between the MS Windows
8 networking environment and the UNIX operating system environment. The right
9 (permission) to add machines to the Windows security domain can be assigned
10 (set) to non-administrative users both in Windows NT4 domains and
11 Active Directory domains.
12 </p><p>
13 <a class="indexterm" name="id2575952"></a>
14 <a class="indexterm" name="id2575959"></a>
15 <a class="indexterm" name="id2575966"></a>
16 <a class="indexterm" name="id2575972"></a>
17 The addition of Windows NT4/2kX/XPPro machines to the domain necessitates the
18 creation of a machine account for each machine added. The machine account is
19 a necessity that is used to validate that the machine can be trusted to permit
20 user logons.
21 </p><p>
22 <a class="indexterm" name="id2575987"></a>
23 <a class="indexterm" name="id2575994"></a>
24 <a class="indexterm" name="id2576001"></a>
25 <a class="indexterm" name="id2576008"></a>
26 <a class="indexterm" name="id2576014"></a>
27 <a class="indexterm" name="id2576021"></a>
28 Machine accounts are analogous to user accounts, and thus in implementing them on a UNIX machine that is
29 hosting Samba (i.e., on which Samba is running), it is necessary to create a special type of user account.
30 Machine accounts differ from  normal user accounts in that the account name (login ID) is terminated with a
31 <code class="literal">$</code> sign. An additional difference is that this type of account should not ever be able to
32 log into the UNIX environment as a system user and therefore is set to have a shell of
33 <span><strong class="command">/bin/false</strong></span> and a home directory of <span><strong class="command">/dev/null.</strong></span> The machine
34 account is used only to authenticate domain member machines during start-up. This security measure
35 is designed to block man-in-the-middle attempts to violate network integrity.
36 </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>
37 <a class="indexterm" name="id2576062"></a>
38 <a class="indexterm" name="id2576069"></a>
39 <a class="indexterm" name="id2576076"></a>
40 <a class="indexterm" name="id2576083"></a>
41 <a class="indexterm" name="id2576089"></a>
42 Machine (computer) accounts are used in the Windows NT OS family to store security
43 credentials for domain member servers and workstations. When the domain member
44 starts up, it goes through a validation process that includes an exchange of
45 credentials with a domain controller. If the domain member fails to authenticate
46 using the credentials known for it by domain controllers, the machine will be refused
47 all access by domain users. The computer account is essential to the way that MS 
48 Windows secures authentication.
49 </p></div><p>
50 <a class="indexterm" name="id2576108"></a>
51 <a class="indexterm" name="id2576116"></a>
52 <a class="indexterm" name="id2576123"></a>
53 <a class="indexterm" name="id2576129"></a>
54 The creation of UNIX system accounts has traditionally been the sole right of
55 the system administrator, better known as the <code class="constant">root</code> account.
56 It is possible in the UNIX environment to create multiple users who have the
57 same UID. Any UNIX user who has a UID=0 is inherently the same as the
58 <code class="constant">root</code> account user.
59 </p><p>
60 <a class="indexterm" name="id2576152"></a>
61 <a class="indexterm" name="id2576159"></a>
62 <a class="indexterm" name="id2576166"></a>
63 <a class="indexterm" name="id2576172"></a>
64 All versions of Samba call system interface scripts that permit CIFS function
65 calls that are used to manage users, groups, and machine accounts
66 in the UNIX environment. All versions of Samba up to and including version 3.0.10
67 required the use of a Windows administrator account that unambiguously maps to
68 the UNIX <code class="constant">root</code> account to permit the execution of these
69 interface scripts. The requirement to do this has understandably met with some
70 disdain and consternation among Samba administrators, particularly where it became
71 necessary to permit people who should not possess <code class="constant">root</code>-level
72 access to the UNIX host system.
73 </p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2576198"></a>Rights Management Capabilities</h2></div></div></div><p>
74 <a class="indexterm" name="id2576206"></a>
75 <a class="indexterm" name="id2576213"></a>
76 <a class="indexterm" name="id2576220"></a>
77 <a class="indexterm" name="id2576227"></a>
78 Samba 3.0.11 introduced support for the Windows privilege model.  This model
79 allows certain rights to be assigned to a user or group SID.  In order to enable
80 this feature, <a class="indexterm" name="id2576237"></a>enable privileges = yes
81 must be defined in the <em class="parameter"><code>global</code></em> section of the <code class="filename">smb.conf</code> file.
82 </p><p>
83 <a class="indexterm" name="id2576260"></a>
84 <a class="indexterm" name="id2576267"></a>
85 <a class="indexterm" name="id2576273"></a>
86 Currently, the rights supported in Samba-3 are listed in <a href="rights.html#rp-privs" title="Table 14.1. Current Privilege Capabilities">???</a>.
87 The remainder of this chapter explains how to manage and use these privileges on Samba servers.
88 </p><a class="indexterm" name="id2576290"></a><a class="indexterm" name="id2576297"></a><a class="indexterm" name="id2576304"></a><a class="indexterm" name="id2576311"></a><a class="indexterm" name="id2576318"></a><a class="indexterm" name="id2576325"></a><div class="table"><a name="rp-privs"></a><p class="title"><b>Table 14.1. Current Privilege Capabilities</b></p><table summary="Current Privilege Capabilities" border="1"><colgroup><col align="right"><col align="left"></colgroup><thead><tr><th align="left">Privilege</th><th align="left">Description</th></tr></thead><tbody><tr><td align="right"><p>SeMachineAccountPrivilege</p></td><td align="left"><p>Add machines to domain</p></td></tr><tr><td align="right"><p>SePrintOperatorPrivilege</p></td><td align="left"><p>Manage printers</p></td></tr><tr><td align="right"><p>SeAddUsersPrivilege</p></td><td align="left"><p>Add users and groups to the domain</p></td></tr><tr><td align="right"><p>SeRemoteShutdownPrivilege</p></td><td align="left"><p>Force shutdown from a remote system</p></td></tr><tr><td align="right"><p>SeDiskOperatorPrivilege</p></td><td align="left"><p>Manage disk share</p></td></tr><tr><td align="right"><p>SeTakeOwnershipPrivilege</p></td><td align="left"><p>Take ownership of files or other objects</p></td></tr></tbody></table></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2576468"></a>Using the &#8220;<span class="quote">net rpc rights</span>&#8221; Utility</h3></div></div></div><p>
89 <a class="indexterm" name="id2576479"></a>
90 <a class="indexterm" name="id2576486"></a>
91 <a class="indexterm" name="id2576493"></a>
92 <a class="indexterm" name="id2576500"></a>
93 <a class="indexterm" name="id2576507"></a>
94 There are two primary means of managing the rights assigned to users and groups
95 on a Samba server.  The <span><strong class="command">NT4 User Manager for Domains</strong></span> may be
96 used from any Windows NT4, 2000, or XP Professional domain member client to
97 connect to a Samba domain controller and view/modify the rights assignments.
98 This application, however, appears to have bugs when run on a client running
99 Windows 2000 or later; therefore, Samba provides a command-line utility for
100 performing the necessary administrative actions.
101 </p><p>
102 The <span><strong class="command">net rpc rights</strong></span> utility in Samba 3.0.11 has three new subcommands:
103 </p><div class="variablelist"><dl><dt><span class="term">list [name|accounts]</span></dt><dd><p>
104 <a class="indexterm" name="id2576550"></a>
105 <a class="indexterm" name="id2576561"></a>
106 <a class="indexterm" name="id2576568"></a>
107 <a class="indexterm" name="id2576575"></a>
108                 When called with no arguments, <span><strong class="command">net rpc list</strong></span>
109                 simply lists the available rights on the server.  When passed
110                 a specific user or group name, the tool lists the privileges
111                 currently assigned to the specified account.  When invoked using
112                 the special string <code class="constant">accounts</code>,
113                 <span><strong class="command">net rpc rights list</strong></span> returns a list of all
114                 privileged accounts on the server and the assigned rights.
115                 </p></dd><dt><span class="term">grant &lt;user&gt; &lt;right [right ...]&gt;</span></dt><dd><p>
116 <a class="indexterm" name="id2576614"></a>
117 <a class="indexterm" name="id2576621"></a>
118 <a class="indexterm" name="id2576628"></a>
119 <a class="indexterm" name="id2576635"></a>
120                 When called with no arguments, this function is used to assign
121                 a list of rights to a specified user or group.  For example,
122                 to grant the members of the Domain Admins group on a Samba domain controller,
123                 the capability to add client machines to the domain, one would run:
124 </p><pre class="screen">
125 <code class="prompt">root# </code> net -S server -U domadmin rpc rights grant \
126          'DOMAIN\Domain Admins' SeMachineAccountPrivilege
127 </pre><p>
128                 The following syntax has the same result:
129 <a class="indexterm" name="id2576660"></a>
130 </p><pre class="screen">
131 <code class="prompt">root# </code> net rpc rights grant 'DOMAIN\Domain Admins' \
132      SeMachineAccountPrivilege -S server -U domadmin
133 </pre><p>
134                 More than one privilege can be assigned by specifying a
135                 list of rights separated by spaces. The parameter 'Domain\Domain Admins'
136                 must be quoted with single ticks or using double-quotes to prevent
137                 the backslash and the space from being interpreted by the system shell.
138                 </p></dd><dt><span class="term">revoke &lt;user&gt; &lt;right [right ...]&gt;</span></dt><dd><p>
139                 This command is similar in format to <span><strong class="command">net rpc rights grant</strong></span>.  Its
140                 effect is to remove an assigned right (or list of rights) from a user or group.
141                 </p></dd></dl></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>
142 <a class="indexterm" name="id2576715"></a>
143 <a class="indexterm" name="id2576722"></a>
144 <a class="indexterm" name="id2576729"></a>
145 You must be connected as a member of the Domain Admins group to be able to grant or revoke privileges assigned
146 to an account.  This capability is inherent to the Domain Admins group and is not configurable. There are no
147 default rights and privileges, except the ability for a member of the Domain Admins group to assign them.
148 This means that all administrative rights and privileges (other than the ability to assign them) must be 
149 explicitly assigned, even for the Domain Admins group.
150 </p></div><p>
151 <a class="indexterm" name="id2576747"></a>
152 <a class="indexterm" name="id2576754"></a>
153 <a class="indexterm" name="id2576761"></a>
154 <a class="indexterm" name="id2576768"></a>
155 By default, no privileges are initially assigned to any account because certain actions will be performed as
156 root once smbd determines that a user has the necessary rights.  For example, when joining a client to a
157 Windows domain, <em class="parameter"><code>add machine script</code></em> must be executed with superuser rights in most 
158 cases.  For this reason, you should be very careful about handing out privileges to accounts.
159 </p><p>
160 <a class="indexterm" name="id2576789"></a>
161 <a class="indexterm" name="id2576796"></a>
162 <a class="indexterm" name="id2576803"></a>
163 Access as the root user (UID=0) bypasses all privilege checks.
164 </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2576813"></a>Description of Privileges</h3></div></div></div><p>
165 <a class="indexterm" name="id2576821"></a>
166 <a class="indexterm" name="id2576828"></a>
167 <a class="indexterm" name="id2576835"></a>
168 The privileges that have been implemented in Samba-3.0.11 are shown below.  It is possible, and likely, that
169 additional privileges may be implemented in later releases of Samba. It is also likely that any privileges
170 currently implemented but not used may be removed from future releases as a housekeeping matter, so it is
171 important that the successful as well as unsuccessful use of these facilities should be reported on the Samba
172 mailing lists.
173 </p><div class="variablelist"><dl><dt><span class="term">SeAddUsersPrivilege</span></dt><dd><p>
174 <a class="indexterm" name="id2576868"></a>
175 <a class="indexterm" name="id2576875"></a>
176 <a class="indexterm" name="id2576882"></a>
177                 This right determines whether or not smbd will allow the
178                 user to create new user or group accounts via such tools
179                 as <span><strong class="command">net rpc user add</strong></span> or 
180                 <span><strong class="command">NT4 User Manager for Domains.</strong></span>
181                 </p></dd><dt><span class="term">SeDiskOperatorPrivilege</span></dt><dd><p>
182 <a class="indexterm" name="id2576913"></a>
183 <a class="indexterm" name="id2576920"></a>
184 <a class="indexterm" name="id2576928"></a>
185                 Accounts that possess this right will be able to execute
186                 scripts defined by the <span><strong class="command">add/delete/change</strong></span>
187                 share command in <code class="filename">smb.conf</code> file as root.  Such users will
188                 also be able to modify the ACL associated with file shares
189                 on the Samba server.
190                 </p></dd><dt><span class="term">SeMachineAccountPrivilege</span></dt><dd><p>
191 <a class="indexterm" name="id2576960"></a>
192 <a class="indexterm" name="id2576967"></a>
193 <a class="indexterm" name="id2576974"></a>
194                 This right controls whether or not the user can join client
195                 machines to a Samba-controlled domain.
196                 </p></dd><dt><span class="term">SePrintOperatorPrivilege</span></dt><dd><p>
197 <a class="indexterm" name="id2576993"></a>
198 <a class="indexterm" name="id2577000"></a>
199 <a class="indexterm" name="id2577007"></a>
200 <a class="indexterm" name="id2577014"></a>
201 <a class="indexterm" name="id2577021"></a>
202                 This privilege operates identically to the <a class="indexterm" name="id2577029"></a>printer admin
203                 option in the <code class="filename">smb.conf</code> file (see section 5 man page for <code class="filename">smb.conf</code>)
204                 except that it is a global right (not on a per-printer basis). 
205                 Eventually the smb.conf option will be deprecated and administrative
206                 rights to printers will be controlled exclusively by this right and
207                 the security descriptor associated with the printer object in the
208                 <code class="filename">ntprinters.tdb</code> file.
209                 </p></dd><dt><span class="term">SeRemoteShutdownPrivilege</span></dt><dd><p>
210 <a class="indexterm" name="id2577070"></a>
211 <a class="indexterm" name="id2577077"></a>
212 <a class="indexterm" name="id2577084"></a>
213                 Samba provides two hooks for shutting down or rebooting
214                 the server and for aborting a previously issued shutdown
215                 command.  Since this is an operation normally limited by
216                 the operating system to the root user, an account must possess this
217                 right to be able to execute either of these hooks.
218                 </p></dd><dt><span class="term">SeTakeOwnershipPrivilege</span></dt><dd><p>
219 <a class="indexterm" name="id2577106"></a>
220 <a class="indexterm" name="id2577113"></a>
221                 This right permits users to take ownership of files and directories.
222                 </p></dd></dl></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2577125"></a>Privileges Suppored by Windows 2000 Domain Controllers</h3></div></div></div><p>
223     For reference purposes, a Windows NT4 Primary Domain Controller reports support for the following
224         privileges:
225 <a class="indexterm" name="id2577136"></a>
226 <a class="indexterm" name="id2577143"></a>
227 <a class="indexterm" name="id2577150"></a>
228 <a class="indexterm" name="id2577157"></a>
229 <a class="indexterm" name="id2577164"></a>
230 <a class="indexterm" name="id2577172"></a>
231 <a class="indexterm" name="id2577178"></a>
232 <a class="indexterm" name="id2577185"></a>
233 <a class="indexterm" name="id2577192"></a>
234 <a class="indexterm" name="id2577200"></a>
235 <a class="indexterm" name="id2577207"></a>
236 <a class="indexterm" name="id2577214"></a>
237 <a class="indexterm" name="id2577221"></a>
238 <a class="indexterm" name="id2577228"></a>
239 <a class="indexterm" name="id2577235"></a>
240 <a class="indexterm" name="id2577242"></a>
241 <a class="indexterm" name="id2577249"></a>
242 <a class="indexterm" name="id2577256"></a>
243 <a class="indexterm" name="id2577263"></a>
244 <a class="indexterm" name="id2577270"></a>
245 <a class="indexterm" name="id2577277"></a>
246 <a class="indexterm" name="id2577284"></a>
247 <a class="indexterm" name="id2577291"></a>
248 </p><pre class="screen">
249          SeCreateTokenPrivilege  Create a token object
250   SeAssignPrimaryTokenPrivilege  Replace a process level token
251           SeLockMemoryPrivilege  Lock pages in memory
252        SeIncreaseQuotaPrivilege  Increase quotas
253       SeMachineAccountPrivilege  Add workstations to domain
254                  SeTcbPrivilege  Act as part of the operating system
255             SeSecurityPrivilege  Manage auditing and security log
256        SeTakeOwnershipPrivilege  Take ownership of files or other objects
257           SeLoadDriverPrivilege  Load and unload device drivers
258        SeSystemProfilePrivilege  Profile system performance
259           SeSystemtimePrivilege  Change the system time
260 SeProfileSingleProcessPrivilege  Profile single process
261 SeIncreaseBasePriorityPrivilege  Increase scheduling priority
262       SeCreatePagefilePrivilege  Create a pagefile
263      SeCreatePermanentPrivilege  Create permanent shared objects
264               SeBackupPrivilege  Back up files and directories
265              SeRestorePrivilege  Restore files and directories
266             SeShutdownPrivilege  Shut down the system
267                SeDebugPrivilege  Debug programs
268                SeAuditPrivilege  Generate security audits
269    SeSystemEnvironmentPrivilege  Modify firmware environment values
270         SeChangeNotifyPrivilege  Bypass traverse checking
271       SeRemoteShutdownPrivilege  Force shutdown from a remote system
272 </pre><p>
273         And Windows 200x/XP Domain Controllers and workstations reports to support the following privileges:
274 <a class="indexterm" name="id2577329"></a>
275 <a class="indexterm" name="id2577336"></a>
276 <a class="indexterm" name="id2577343"></a>
277 <a class="indexterm" name="id2577350"></a>
278 <a class="indexterm" name="id2577357"></a>
279 <a class="indexterm" name="id2577364"></a>
280 <a class="indexterm" name="id2577371"></a>
281 <a class="indexterm" name="id2577378"></a>
282 <a class="indexterm" name="id2577385"></a>
283 <a class="indexterm" name="id2577392"></a>
284 <a class="indexterm" name="id2577399"></a>
285 <a class="indexterm" name="id2577406"></a>
286 <a class="indexterm" name="id2577414"></a>
287 <a class="indexterm" name="id2577421"></a>
288 <a class="indexterm" name="id2577428"></a>
289 <a class="indexterm" name="id2577435"></a>
290 <a class="indexterm" name="id2577442"></a>
291 <a class="indexterm" name="id2577449"></a>
292 <a class="indexterm" name="id2577456"></a>
293 <a class="indexterm" name="id2577463"></a>
294 <a class="indexterm" name="id2577470"></a>
295 <a class="indexterm" name="id2577477"></a>
296 <a class="indexterm" name="id2577484"></a>
297 <a class="indexterm" name="id2577491"></a>
298 <a class="indexterm" name="id2577498"></a>
299 <a class="indexterm" name="id2577505"></a>
300 <a class="indexterm" name="id2577512"></a>
301 <a class="indexterm" name="id2577519"></a>
302 <a class="indexterm" name="id2577526"></a>
303 </p><pre class="screen">
304          SeCreateTokenPrivilege  Create a token object
305   SeAssignPrimaryTokenPrivilege  Replace a process level token
306           SeLockMemoryPrivilege  Lock pages in memory
307        SeIncreaseQuotaPrivilege  Increase quotas
308       SeMachineAccountPrivilege  Add workstations to domain
309                  SeTcbPrivilege  Act as part of the operating system
310             SeSecurityPrivilege  Manage auditing and security log
311        SeTakeOwnershipPrivilege  Take ownership of files or other objects
312           SeLoadDriverPrivilege  Load and unload device drivers
313        SeSystemProfilePrivilege  Profile system performance
314           SeSystemtimePrivilege  Change the system time
315 SeProfileSingleProcessPrivilege  Profile single process
316 SeIncreaseBasePriorityPrivilege  Increase scheduling priority
317       SeCreatePagefilePrivilege  Create a pagefile
318      SeCreatePermanentPrivilege  Create permanent shared objects
319               SeBackupPrivilege  Back up files and directories
320              SeRestorePrivilege  Restore files and directories
321             SeShutdownPrivilege  Shut down the system
322                SeDebugPrivilege  Debug programs
323                SeAuditPrivilege  Generate security audits
324    SeSystemEnvironmentPrivilege  Modify firmware environment values
325         SeChangeNotifyPrivilege  Bypass traverse checking
326       SeRemoteShutdownPrivilege  Force shutdown from a remote system
327               SeUndockPrivilege  Remove computer from docking station
328            SeSyncAgentPrivilege  Synchronize directory service data
329     SeEnableDelegationPrivilege  Enable computer and user accounts to
330                                  be trusted for delegation
331         SeManageVolumePrivilege  Perform volume maintenance tasks
332          SeImpersonatePrivilege  Impersonate a client after authentication
333         SeCreateGlobalPrivilege  Create global objects
334 </pre><p>
335 <a class="indexterm" name="id2577601"></a>
336     The Samba Team is implementing only those privileges that are logical and useful in the UNIX/Linux
337     environment. Many of the Windows 200X/XP privileges have no direct equivalence in UNIX.
338     </p></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2577614"></a>The Administrator Domain SID</h2></div></div></div><p>
339 <a class="indexterm" name="id2577622"></a>
340 <a class="indexterm" name="id2577629"></a>
341 <a class="indexterm" name="id2577636"></a>
342 <a class="indexterm" name="id2577643"></a>
343 <a class="indexterm" name="id2577650"></a>
344 Please note that every Windows NT4 and later server requires a domain Administrator account. Samba versions
345 commencing with 3.0.11 permit Administrative duties to be performed via assigned rights and privileges
346 (see <a href="rights.html" title="Chapter 14. User Rights and Privileges">User Rights and Privileges</a>).  An account in the server's passdb backend can
347 be set to the well-known RID of the default administrator account.  To obtain the domain SID on a Samba domain
348 controller, run the following command:
349 </p><pre class="screen">
350 <code class="prompt">root# </code> net getlocalsid
351 SID for domain FOO is: S-1-5-21-4294955119-3368514841-2087710299
352 </pre><p>
353 <a class="indexterm" name="id2577684"></a>
354 You may assign the domain administrator RID to an account using the <span><strong class="command">pdbedit</strong></span>
355 command as shown here:
356 <a class="indexterm" name="id2577698"></a>
357 </p><pre class="screen">
358 <code class="prompt">root# </code> pdbedit -U S-1-5-21-4294955119-3368514841-2087710299-500 -u root -r
359 </pre><p>
360 </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>
361 <a class="indexterm" name="id2577722"></a>
362 <a class="indexterm" name="id2577728"></a>
363 <a class="indexterm" name="id2577735"></a>
364 <a class="indexterm" name="id2577742"></a>
365 The RID 500 is the well known standard value of the default Administrator account. It is the RID
366 that confers the rights and privileges that the Administrator account has on a Windows machine
367 or domain. Under UNIX/Linux the equivalent is UID=0 (the root account).
368 </p></div><p>
369 <a class="indexterm" name="id2577757"></a>
370 <a class="indexterm" name="id2577764"></a>
371 <a class="indexterm" name="id2577771"></a>
372 <a class="indexterm" name="id2577778"></a>
373 Releases of Samba version 3.0.11 and later make it possible to operate without an Administrator account
374 provided equivalent rights and privileges have been established for a Windows user or a Windows
375 group account. 
376 </p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2577791"></a>Common Errors</h2></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2577797"></a>What Rights and Privileges Will Permit Windows Client Administration?</h3></div></div></div><p>
377 <a class="indexterm" name="id2577806"></a>
378 <a class="indexterm" name="id2577813"></a>
379 <a class="indexterm" name="id2577819"></a>
380 <a class="indexterm" name="id2577826"></a>
381         When a Windows NT4 (or later) client joins a domain, the domain global <code class="literal">Domain Admins</code> group
382         is added to the membership of the local <code class="literal">Administrators</code> group on the client. Any user who is
383         a member of the domain global <code class="literal">Domain Admins</code> group will have administrative rights on the
384         Windows client.
385         </p><p>
386 <a class="indexterm" name="id2577859"></a>
387 <a class="indexterm" name="id2577866"></a>
388 <a class="indexterm" name="id2577873"></a>
389 <a class="indexterm" name="id2577880"></a>
390 <a class="indexterm" name="id2577887"></a>
391         This is often not the most desirable solution because it means that the user will have administrative
392         rights and privileges on domain servers also. The <code class="literal">Power Users</code> group on Windows client
393         workstations permits local administration of the workstation alone. Any domain global user or domain global
394         group can be added to the membership of the local workstation group <code class="literal">Power Users</code>.
395         </p><p>
396 <a class="indexterm" name="id2577915"></a>
397 <a class="indexterm" name="id2577922"></a>
398 <a class="indexterm" name="id2577929"></a>
399 <a class="indexterm" name="id2577936"></a>
400         See <a href="NetCommand.html#nestedgrpmgmgt" title="Nested Group Support">Nested Group Support</a> for an example of how to add domain users
401         and groups to a local group that is on a Windows workstation. The use of the <span><strong class="command">net</strong></span>
402         command permits this to be done from the Samba server.
403         </p><p>
404 <a class="indexterm" name="id2577964"></a>
405 <a class="indexterm" name="id2577970"></a>
406 <a class="indexterm" name="id2577977"></a>
407         Another way this can be done is to log onto the Windows workstation as the user
408         <code class="literal">Administrator</code>, then open a <span><strong class="command">cmd</strong></span> shell, then execute:
409 </p><pre class="screen">
410 <code class="prompt">C:\&gt; </code> net localgroup administrators /add <strong class="userinput"><code>domain_name\entity</code></strong>
411 </pre><p>
412         where <code class="literal">entity</code> is either a domain user or a domain group account name.
413         </p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="idmapper.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="optional.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="AccessControls.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 13. Identity Mapping (IDMAP) </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 15. File, Directory, and Share Access Controls</td></tr></table></div></body></html>