Reserve an OID space for external projects
[mat/samba.git] / examples / LDAP / samba.schema
1 ##
2 ## schema file for OpenLDAP 2.x
3 ## Schema for storing Samba user accounts and group maps in LDAP
4 ## OIDs are owned by the Samba Team
5 ##
6 ## Prerequisite schemas - uid         (cosine.schema)
7 ##                      - displayName (inetorgperson.schema)
8 ##                      - gidNumber   (nis.schema)
9 ##
10 ## 1.3.6.1.4.1.7165.2.1.x - attributetypes
11 ## 1.3.6.1.4.1.7165.2.2.x - objectclasses
12 ##
13 ## Printer support
14 ## 1.3.6.1.4.1.7165.2.3.1.x - attributetypes
15 ## 1.3.6.1.4.1.7165.2.3.2.x - objectclasses
16 ##
17 ## Samba4
18 ## 1.3.6.1.4.1.7165.4.1.x - attributetypes
19 ## 1.3.6.1.4.1.7165.4.2.x - objectclasses
20 ## 1.3.6.1.4.1.7165.4.3.x - LDB/LDAP Controls
21 ## 1.3.6.1.4.1.7165.4.4.x - LDB/LDAP Extended Operations
22 ## 1.3.6.1.4.1.7165.4.255.x - mapped OIDs due to conflicts between AD and standards-track
23 ##
24 ## External projects
25 ## 1.3.6.1.4.1.7165.655.x
26 ## 1.3.6.1.4.1.7165.655.1.x - GSS-NTLMSSP
27 ##
28 ## ----- READ THIS WHEN ADDING A NEW ATTRIBUTE OR OBJECT CLASS ------
29 ##
30 ## Run the 'get_next_oid' bash script in this directory to find the 
31 ## next available OID for attribute type and object classes.
32 ##
33 ##   $ ./get_next_oid
34 ##   attributetype ( 1.3.6.1.4.1.7165.2.1.XX NAME ....
35 ##   objectclass ( 1.3.6.1.4.1.7165.2.2.XX NAME ....
36 ##
37 ## Also ensure that new entries adhere to the declaration style
38 ## used throughout this file
39 ##
40 ##    <attributetype|objectclass> ( 1.3.6.1.4.1.7165.2.XX.XX NAME ....
41 ##                               ^ ^                        ^
42 ##
43 ## The spaces are required for the get_next_oid script (and for 
44 ## readability).
45 ##
46 ## ------------------------------------------------------------------
47
48 # objectIdentifier SambaRoot 1.3.6.1.4.1.7165
49 # objectIdentifier Samba3 SambaRoot:2
50 # objectIdentifier Samba3Attrib Samba3:1
51 # objectIdentifier Samba3ObjectClass Samba3:2
52 # objectIdentifier Samba4 SambaRoot:4
53
54 ########################################################################
55 ##                            HISTORICAL                              ##
56 ########################################################################
57
58 ##
59 ## Password hashes
60 ##
61 #attributetype ( 1.3.6.1.4.1.7165.2.1.1 NAME 'lmPassword'
62 #       DESC 'LanManager Passwd'
63 #       EQUALITY caseIgnoreIA5Match
64 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
65
66 #attributetype ( 1.3.6.1.4.1.7165.2.1.2 NAME 'ntPassword'
67 #       DESC 'NT Passwd'
68 #       EQUALITY caseIgnoreIA5Match
69 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
70
71 ##
72 ## Account flags in string format ([UWDX     ])
73 ##
74 #attributetype ( 1.3.6.1.4.1.7165.2.1.4 NAME 'acctFlags'
75 #       DESC 'Account Flags'
76 #       EQUALITY caseIgnoreIA5Match
77 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{16} SINGLE-VALUE )
78
79 ##
80 ## Password timestamps & policies
81 ##
82 #attributetype ( 1.3.6.1.4.1.7165.2.1.3 NAME 'pwdLastSet'
83 #       DESC 'NT pwdLastSet'
84 #       EQUALITY integerMatch
85 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
86
87 #attributetype ( 1.3.6.1.4.1.7165.2.1.5 NAME 'logonTime'
88 #       DESC 'NT logonTime'
89 #       EQUALITY integerMatch
90 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
91
92 #attributetype ( 1.3.6.1.4.1.7165.2.1.6 NAME 'logoffTime'
93 #       DESC 'NT logoffTime'
94 #       EQUALITY integerMatch
95 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
96
97 #attributetype ( 1.3.6.1.4.1.7165.2.1.7 NAME 'kickoffTime'
98 #       DESC 'NT kickoffTime'
99 #       EQUALITY integerMatch
100 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
101
102 #attributetype ( 1.3.6.1.4.1.7165.2.1.8 NAME 'pwdCanChange'
103 #       DESC 'NT pwdCanChange'
104 #       EQUALITY integerMatch
105 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
106
107 #attributetype ( 1.3.6.1.4.1.7165.2.1.9 NAME 'pwdMustChange'
108 #       DESC 'NT pwdMustChange'
109 #       EQUALITY integerMatch
110 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
111
112 ##
113 ## string settings
114 ##
115 #attributetype ( 1.3.6.1.4.1.7165.2.1.10 NAME 'homeDrive'
116 #       DESC 'NT homeDrive'
117 #       EQUALITY caseIgnoreIA5Match
118 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{4} SINGLE-VALUE )
119
120 #attributetype ( 1.3.6.1.4.1.7165.2.1.11 NAME 'scriptPath'
121 #       DESC 'NT scriptPath'
122 #       EQUALITY caseIgnoreIA5Match
123 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE )
124
125 #attributetype ( 1.3.6.1.4.1.7165.2.1.12 NAME 'profilePath'
126 #       DESC 'NT profilePath'
127 #       EQUALITY caseIgnoreIA5Match
128 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE )
129
130 #attributetype ( 1.3.6.1.4.1.7165.2.1.13 NAME 'userWorkstations'
131 #       DESC 'userWorkstations'
132 #       EQUALITY caseIgnoreIA5Match
133 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE )
134
135 #attributetype ( 1.3.6.1.4.1.7165.2.1.17 NAME 'smbHome'
136 #       DESC 'smbHome'
137 #       EQUALITY caseIgnoreIA5Match
138 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
139
140 #attributetype ( 1.3.6.1.4.1.7165.2.1.18 NAME 'domain'
141 #       DESC 'Windows NT domain to which the user belongs'
142 #       EQUALITY caseIgnoreIA5Match
143 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
144
145 ##
146 ## user and group RID
147 ##
148 #attributetype ( 1.3.6.1.4.1.7165.2.1.14 NAME 'rid'
149 #       DESC 'NT rid'
150 #       EQUALITY integerMatch
151 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
152
153 #attributetype ( 1.3.6.1.4.1.7165.2.1.15 NAME 'primaryGroupID'
154 #       DESC 'NT Group RID'
155 #       EQUALITY integerMatch
156 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
157
158 ##
159 ## The smbPasswordEntry objectclass has been depreciated in favor of the
160 ## sambaAccount objectclass
161 ##
162 #objectclass ( 1.3.6.1.4.1.7165.2.2.1 NAME 'smbPasswordEntry' SUP top AUXILIARY
163 #        DESC 'Samba smbpasswd entry'
164 #        MUST ( uid $ uidNumber )
165 #        MAY  ( lmPassword $ ntPassword $ pwdLastSet $ acctFlags ))
166
167 #objectclass ( 1.3.6.1.4.1.7165.2.2.2 NAME 'sambaAccount' SUP top STRUCTURAL
168 #       DESC 'Samba Account'
169 #       MUST ( uid $ rid )
170 #       MAY  ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $
171 #               logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $
172 #               displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $
173 #               description $ userWorkstations $ primaryGroupID $ domain ))
174
175 #objectclass ( 1.3.6.1.4.1.7165.2.2.3 NAME 'sambaAccount' SUP top AUXILIARY
176 #       DESC 'Samba Auxiliary Account'
177 #       MUST ( uid $ rid )
178 #       MAY  ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $
179 #              logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $
180 #              displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $
181 #              description $ userWorkstations $ primaryGroupID $ domain ))
182
183 ########################################################################
184 ##                        END OF HISTORICAL                           ##
185 ########################################################################
186
187 #######################################################################
188 ##                Attributes used by Samba 3.0 schema                ##
189 #######################################################################
190
191 ##
192 ## Password hashes
193 ##
194 attributetype ( 1.3.6.1.4.1.7165.2.1.24 NAME 'sambaLMPassword'
195         DESC 'LanManager Password'
196         EQUALITY caseIgnoreIA5Match
197         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
198
199 attributetype ( 1.3.6.1.4.1.7165.2.1.25 NAME 'sambaNTPassword'
200         DESC 'MD4 hash of the unicode password'
201         EQUALITY caseIgnoreIA5Match
202         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
203
204 ##
205 ## Account flags in string format ([UWDX     ])
206 ##
207 attributetype ( 1.3.6.1.4.1.7165.2.1.26 NAME 'sambaAcctFlags'
208         DESC 'Account Flags'
209         EQUALITY caseIgnoreIA5Match
210         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{16} SINGLE-VALUE )
211
212 ##
213 ## Password timestamps & policies
214 ##
215 attributetype ( 1.3.6.1.4.1.7165.2.1.27 NAME 'sambaPwdLastSet'
216         DESC 'Timestamp of the last password update'
217         EQUALITY integerMatch
218         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
219
220 attributetype ( 1.3.6.1.4.1.7165.2.1.28 NAME 'sambaPwdCanChange'
221         DESC 'Timestamp of when the user is allowed to update the password'
222         EQUALITY integerMatch
223         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
224
225 attributetype ( 1.3.6.1.4.1.7165.2.1.29 NAME 'sambaPwdMustChange'
226         DESC 'Timestamp of when the password will expire'
227         EQUALITY integerMatch
228         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
229
230 attributetype ( 1.3.6.1.4.1.7165.2.1.30 NAME 'sambaLogonTime'
231         DESC 'Timestamp of last logon'
232         EQUALITY integerMatch
233         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
234
235 attributetype ( 1.3.6.1.4.1.7165.2.1.31 NAME 'sambaLogoffTime'
236         DESC 'Timestamp of last logoff'
237         EQUALITY integerMatch
238         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
239
240 attributetype ( 1.3.6.1.4.1.7165.2.1.32 NAME 'sambaKickoffTime'
241         DESC 'Timestamp of when the user will be logged off automatically'
242         EQUALITY integerMatch
243         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
244
245 attributetype ( 1.3.6.1.4.1.7165.2.1.48 NAME 'sambaBadPasswordCount'
246         DESC 'Bad password attempt count'
247         EQUALITY integerMatch
248         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
249
250 attributetype ( 1.3.6.1.4.1.7165.2.1.49 NAME 'sambaBadPasswordTime'
251         DESC 'Time of the last bad password attempt'
252         EQUALITY integerMatch
253         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
254
255 attributetype ( 1.3.6.1.4.1.7165.2.1.55 NAME 'sambaLogonHours'
256         DESC 'Logon Hours'
257         EQUALITY caseIgnoreIA5Match
258         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{42} SINGLE-VALUE )
259
260 ##
261 ## string settings
262 ##
263 attributetype ( 1.3.6.1.4.1.7165.2.1.33 NAME 'sambaHomeDrive'
264         DESC 'Driver letter of home directory mapping'
265         EQUALITY caseIgnoreIA5Match
266         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{4} SINGLE-VALUE )
267
268 attributetype ( 1.3.6.1.4.1.7165.2.1.34 NAME 'sambaLogonScript'
269         DESC 'Logon script path'
270         EQUALITY caseIgnoreMatch
271         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE )
272
273 attributetype ( 1.3.6.1.4.1.7165.2.1.35 NAME 'sambaProfilePath'
274         DESC 'Roaming profile path'
275         EQUALITY caseIgnoreMatch
276         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE )
277
278 attributetype ( 1.3.6.1.4.1.7165.2.1.36 NAME 'sambaUserWorkstations'
279         DESC 'List of user workstations the user is allowed to logon to'
280         EQUALITY caseIgnoreMatch
281         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE )
282
283 attributetype ( 1.3.6.1.4.1.7165.2.1.37 NAME 'sambaHomePath'
284         DESC 'Home directory UNC path'
285         EQUALITY caseIgnoreMatch
286         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
287
288 attributetype ( 1.3.6.1.4.1.7165.2.1.38 NAME 'sambaDomainName'
289         DESC 'Windows NT domain to which the user belongs'
290         EQUALITY caseIgnoreMatch
291         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
292
293 attributetype ( 1.3.6.1.4.1.7165.2.1.47 NAME 'sambaMungedDial'
294         DESC 'Base64 encoded user parameter string'
295         EQUALITY caseExactMatch
296         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1050} )
297
298 attributetype ( 1.3.6.1.4.1.7165.2.1.54 NAME 'sambaPasswordHistory'
299         DESC 'Concatenated MD5 hashes of the salted NT passwords used on this account'
300         EQUALITY caseIgnoreIA5Match
301         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} )
302
303 ##
304 ## SID, of any type
305 ##
306
307 attributetype ( 1.3.6.1.4.1.7165.2.1.20 NAME 'sambaSID'
308         DESC 'Security ID'
309         EQUALITY caseIgnoreIA5Match
310         SUBSTR caseExactIA5SubstringsMatch
311         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE )
312
313 ##
314 ## Primary group SID, compatible with ntSid
315 ##
316
317 attributetype ( 1.3.6.1.4.1.7165.2.1.23 NAME 'sambaPrimaryGroupSID'
318         DESC 'Primary Group Security ID'
319         EQUALITY caseIgnoreIA5Match
320         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE )
321
322 attributetype ( 1.3.6.1.4.1.7165.2.1.51 NAME 'sambaSIDList'
323         DESC 'Security ID List'
324         EQUALITY caseIgnoreIA5Match
325         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} )
326
327 ##
328 ## group mapping attributes
329 ##
330 attributetype ( 1.3.6.1.4.1.7165.2.1.19 NAME 'sambaGroupType'
331         DESC 'NT Group Type'
332         EQUALITY integerMatch
333         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
334
335 ##
336 ## Store info on the domain
337 ##
338
339 attributetype ( 1.3.6.1.4.1.7165.2.1.21 NAME 'sambaNextUserRid'
340         DESC 'Next NT rid to give our for users'
341         EQUALITY integerMatch
342         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
343
344 attributetype ( 1.3.6.1.4.1.7165.2.1.22 NAME 'sambaNextGroupRid'
345         DESC 'Next NT rid to give out for groups'
346         EQUALITY integerMatch
347         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
348
349 attributetype ( 1.3.6.1.4.1.7165.2.1.39 NAME 'sambaNextRid'
350         DESC 'Next NT rid to give out for anything'
351         EQUALITY integerMatch
352         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
353
354 attributetype ( 1.3.6.1.4.1.7165.2.1.40 NAME 'sambaAlgorithmicRidBase'
355         DESC 'Base at which the samba RID generation algorithm should operate'
356         EQUALITY integerMatch
357         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
358
359 attributetype ( 1.3.6.1.4.1.7165.2.1.41 NAME 'sambaShareName'
360         DESC 'Share Name'
361         EQUALITY caseIgnoreMatch
362         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
363
364 attributetype ( 1.3.6.1.4.1.7165.2.1.42 NAME 'sambaOptionName'
365         DESC 'Option Name'
366         EQUALITY caseIgnoreMatch
367         SUBSTR caseIgnoreSubstringsMatch
368         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
369
370 attributetype ( 1.3.6.1.4.1.7165.2.1.43 NAME 'sambaBoolOption'
371         DESC 'A boolean option'
372         EQUALITY booleanMatch
373         SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
374
375 attributetype ( 1.3.6.1.4.1.7165.2.1.44 NAME 'sambaIntegerOption'
376         DESC 'An integer option'
377         EQUALITY integerMatch
378         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
379
380 attributetype ( 1.3.6.1.4.1.7165.2.1.45 NAME 'sambaStringOption'
381         DESC 'A string option'
382         EQUALITY caseExactIA5Match
383         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
384
385 attributetype ( 1.3.6.1.4.1.7165.2.1.46 NAME 'sambaStringListOption'
386         DESC 'A string list option'
387         EQUALITY caseIgnoreMatch
388         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
389
390
391 ##attributetype ( 1.3.6.1.4.1.7165.2.1.50 NAME 'sambaPrivName' 
392 ##      SUP name )
393
394 ##attributetype ( 1.3.6.1.4.1.7165.2.1.52 NAME 'sambaPrivilegeList'
395 ##      DESC 'Privileges List'
396 ##      EQUALITY caseIgnoreIA5Match
397 ##      SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} )
398
399 attributetype ( 1.3.6.1.4.1.7165.2.1.53 NAME 'sambaTrustFlags'
400         DESC 'Trust Password Flags'
401         EQUALITY caseIgnoreIA5Match
402         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
403
404 # "min password length"
405 attributetype ( 1.3.6.1.4.1.7165.2.1.58 NAME 'sambaMinPwdLength'
406         DESC 'Minimal password length (default: 5)'
407         EQUALITY integerMatch
408         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
409
410 # "password history"
411 attributetype ( 1.3.6.1.4.1.7165.2.1.59 NAME 'sambaPwdHistoryLength'
412         DESC 'Length of Password History Entries (default: 0 => off)'
413         EQUALITY integerMatch
414         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
415
416 # "user must logon to change password"
417 attributetype ( 1.3.6.1.4.1.7165.2.1.60 NAME 'sambaLogonToChgPwd'
418         DESC 'Force Users to logon for password change (default: 0 => off, 2 => on)'
419         EQUALITY integerMatch
420         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
421
422 # "maximum password age"
423 attributetype ( 1.3.6.1.4.1.7165.2.1.61 NAME 'sambaMaxPwdAge'
424         DESC 'Maximum password age, in seconds (default: -1 => never expire passwords)'
425         EQUALITY integerMatch
426         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
427
428 # "minimum password age"
429 attributetype ( 1.3.6.1.4.1.7165.2.1.62 NAME 'sambaMinPwdAge'
430         DESC 'Minimum password age, in seconds (default: 0 => allow immediate password change)'
431         EQUALITY integerMatch
432         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
433
434 # "lockout duration"
435 attributetype ( 1.3.6.1.4.1.7165.2.1.63 NAME 'sambaLockoutDuration'
436         DESC 'Lockout duration in minutes (default: 30, -1 => forever)'
437         EQUALITY integerMatch
438         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
439
440 # "reset count minutes"
441 attributetype ( 1.3.6.1.4.1.7165.2.1.64 NAME 'sambaLockoutObservationWindow'
442         DESC 'Reset time after lockout in minutes (default: 30)'
443         EQUALITY integerMatch
444         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
445
446 # "bad lockout attempt"
447 attributetype ( 1.3.6.1.4.1.7165.2.1.65 NAME 'sambaLockoutThreshold'
448         DESC 'Lockout users after bad logon attempts (default: 0 => off)'
449         EQUALITY integerMatch
450         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
451
452 # "disconnect time"
453 attributetype ( 1.3.6.1.4.1.7165.2.1.66 NAME 'sambaForceLogoff'
454         DESC 'Disconnect Users outside logon hours (default: -1 => off, 0 => on)'
455         EQUALITY integerMatch
456         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
457
458 # "refuse machine password change"
459 attributetype ( 1.3.6.1.4.1.7165.2.1.67 NAME 'sambaRefuseMachinePwdChange'
460         DESC 'Allow Machine Password changes (default: 0 => off)'
461         EQUALITY integerMatch
462         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
463
464 #
465 attributetype ( 1.3.6.1.4.1.7165.2.1.68 NAME 'sambaClearTextPassword'
466         DESC 'Clear text password (used for trusted domain passwords)'
467         EQUALITY octetStringMatch
468         SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
469
470 #
471 attributetype ( 1.3.6.1.4.1.7165.2.1.69 NAME 'sambaPreviousClearTextPassword'
472         DESC 'Previous clear text password (used for trusted domain passwords)'
473         EQUALITY octetStringMatch
474         SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
475
476 attributetype ( 1.3.6.1.4.1.7165.2.1.70 NAME 'sambaTrustType'
477         DESC 'Type of trust'
478         EQUALITY integerMatch
479         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
480
481 attributetype ( 1.3.6.1.4.1.7165.2.1.71 NAME 'sambaTrustAttributes'
482         DESC 'Trust attributes for a trusted domain'
483         EQUALITY integerMatch
484         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
485
486 attributetype ( 1.3.6.1.4.1.7165.2.1.72 NAME 'sambaTrustDirection'
487         DESC 'Direction of a trust'
488         EQUALITY integerMatch
489         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
490
491 attributetype ( 1.3.6.1.4.1.7165.2.1.73 NAME 'sambaTrustPartner'
492         DESC 'Fully qualified name of the domain with which a trust exists'
493         EQUALITY caseIgnoreMatch
494         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
495
496 attributetype ( 1.3.6.1.4.1.7165.2.1.74 NAME 'sambaFlatName'
497         DESC 'NetBIOS name of a domain'
498         EQUALITY caseIgnoreMatch
499         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
500
501 attributetype ( 1.3.6.1.4.1.7165.2.1.75 NAME 'sambaTrustAuthOutgoing'
502         DESC 'Authentication information for the outgoing portion of a trust'
503         EQUALITY caseExactMatch
504         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1050} )
505
506 attributetype ( 1.3.6.1.4.1.7165.2.1.76 NAME 'sambaTrustAuthIncoming'
507         DESC 'Authentication information for the incoming portion of a trust'
508         EQUALITY caseExactMatch
509         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1050} )
510
511 attributetype ( 1.3.6.1.4.1.7165.2.1.77 NAME 'sambaSecurityIdentifier'
512         DESC 'SID of a trusted domain'
513         EQUALITY caseIgnoreIA5Match SUBSTR caseExactIA5SubstringsMatch
514         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE )
515
516 attributetype ( 1.3.6.1.4.1.7165.2.1.78 NAME 'sambaTrustForestTrustInfo'
517         DESC 'Forest trust information for a trusted domain object'
518         EQUALITY caseExactMatch
519         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1050} )
520
521 attributetype ( 1.3.6.1.4.1.7165.2.1.79 NAME 'sambaTrustPosixOffset'
522         DESC 'POSIX offset of a trust'
523         EQUALITY integerMatch
524         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
525
526 attributetype ( 1.3.6.1.4.1.7165.2.1.80 NAME 'sambaSupportedEncryptionTypes'
527         DESC 'Supported encryption types of a trust'
528         EQUALITY integerMatch
529         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
530
531 #######################################################################
532 ##              objectClasses used by Samba 3.0 schema               ##
533 #######################################################################
534
535 ## The X.500 data model (and therefore LDAPv3) says that each entry can
536 ## only have one structural objectclass.  OpenLDAP 2.0 does not enforce
537 ## this currently but will in v2.1
538
539 ##
540 ## added new objectclass (and OID) for 3.0 to help us deal with backwards
541 ## compatibility with 2.2 installations (e.g. ldapsam_compat)  --jerry
542 ##
543 objectclass ( 1.3.6.1.4.1.7165.2.2.6 NAME 'sambaSamAccount' SUP top AUXILIARY
544         DESC 'Samba 3.0 Auxilary SAM Account'
545         MUST ( uid $ sambaSID )
546         MAY  ( cn $ sambaLMPassword $ sambaNTPassword $ sambaPwdLastSet $
547                sambaLogonTime $ sambaLogoffTime $ sambaKickoffTime $
548                sambaPwdCanChange $ sambaPwdMustChange $ sambaAcctFlags $
549                displayName $ sambaHomePath $ sambaHomeDrive $ sambaLogonScript $
550                sambaProfilePath $ description $ sambaUserWorkstations $
551                sambaPrimaryGroupSID $ sambaDomainName $ sambaMungedDial $
552                sambaBadPasswordCount $ sambaBadPasswordTime $
553                sambaPasswordHistory $ sambaLogonHours))
554
555 ##
556 ## Group mapping info
557 ##
558 objectclass ( 1.3.6.1.4.1.7165.2.2.4 NAME 'sambaGroupMapping' SUP top AUXILIARY
559         DESC 'Samba Group Mapping'
560         MUST ( gidNumber $ sambaSID $ sambaGroupType )
561         MAY  ( displayName $ description $ sambaSIDList ))
562
563 ##
564 ## Trust password for trust relationships (any kind)
565 ##
566 objectclass ( 1.3.6.1.4.1.7165.2.2.14 NAME 'sambaTrustPassword' SUP top STRUCTURAL
567         DESC 'Samba Trust Password'
568         MUST ( sambaDomainName $ sambaNTPassword $ sambaTrustFlags )
569         MAY ( sambaSID $ sambaPwdLastSet ))
570
571 ##
572 ## Trust password for trusted domains
573 ## (to be stored beneath the trusting sambaDomain object in the DIT)
574 ##
575 objectclass ( 1.3.6.1.4.1.7165.2.2.15 NAME 'sambaTrustedDomainPassword' SUP top STRUCTURAL
576         DESC 'Samba Trusted Domain Password'
577         MUST ( sambaDomainName $ sambaSID $
578                sambaClearTextPassword $ sambaPwdLastSet )
579         MAY  ( sambaPreviousClearTextPassword ))
580
581 ##
582 ## Whole-of-domain info
583 ##
584 objectclass ( 1.3.6.1.4.1.7165.2.2.5 NAME 'sambaDomain' SUP top STRUCTURAL
585         DESC 'Samba Domain Information'
586         MUST ( sambaDomainName $ 
587                sambaSID ) 
588         MAY ( sambaNextRid $ sambaNextGroupRid $ sambaNextUserRid $
589               sambaAlgorithmicRidBase $ 
590               sambaMinPwdLength $ sambaPwdHistoryLength $ sambaLogonToChgPwd $
591               sambaMaxPwdAge $ sambaMinPwdAge $
592               sambaLockoutDuration $ sambaLockoutObservationWindow $ sambaLockoutThreshold $
593               sambaForceLogoff $ sambaRefuseMachinePwdChange ))
594
595 ##
596 ## used for idmap_ldap module
597 ##
598 objectclass ( 1.3.6.1.4.1.7165.2.2.7 NAME 'sambaUnixIdPool' SUP top AUXILIARY
599         DESC 'Pool for allocating UNIX uids/gids'
600         MUST ( uidNumber $ gidNumber ) )
601
602
603 objectclass ( 1.3.6.1.4.1.7165.2.2.8 NAME 'sambaIdmapEntry' SUP top AUXILIARY
604         DESC 'Mapping from a SID to an ID'
605         MUST ( sambaSID )
606         MAY ( uidNumber $ gidNumber ) )
607
608 objectclass ( 1.3.6.1.4.1.7165.2.2.9 NAME 'sambaSidEntry' SUP top STRUCTURAL
609         DESC 'Structural Class for a SID'
610         MUST ( sambaSID ) )
611
612 objectclass ( 1.3.6.1.4.1.7165.2.2.10 NAME 'sambaConfig' SUP top AUXILIARY
613         DESC 'Samba Configuration Section'
614         MAY ( description ) )
615
616 objectclass ( 1.3.6.1.4.1.7165.2.2.11 NAME 'sambaShare' SUP top STRUCTURAL
617         DESC 'Samba Share Section'
618         MUST ( sambaShareName )
619         MAY ( description ) )
620
621 objectclass ( 1.3.6.1.4.1.7165.2.2.12 NAME 'sambaConfigOption' SUP top STRUCTURAL
622         DESC 'Samba Configuration Option'
623         MUST ( sambaOptionName )
624         MAY ( sambaBoolOption $ sambaIntegerOption $ sambaStringOption $ 
625               sambaStringListoption $ description ) )
626
627
628 ## retired during privilege rewrite
629 ##objectclass ( 1.3.6.1.4.1.7165.2.2.13 NAME 'sambaPrivilege' SUP top AUXILIARY
630 ##      DESC 'Samba Privilege'
631 ##      MUST ( sambaSID )
632 ##      MAY ( sambaPrivilegeList ) )
633
634 ##
635 ## used for IPA_ldapsam
636 ##
637 objectclass ( 1.3.6.1.4.1.7165.2.2.16 NAME 'sambaTrustedDomain' SUP top STRUCTURAL
638         DESC 'Samba Trusted Domain Object'
639         MUST ( cn )
640         MAY ( sambaTrustType $ sambaTrustAttributes $ sambaTrustDirection $
641               sambaTrustPartner $ sambaFlatName $ sambaTrustAuthOutgoing $
642               sambaTrustAuthIncoming $ sambaSecurityIdentifier $
643               sambaTrustForestTrustInfo $ sambaTrustPosixOffset $
644               sambaSupportedEncryptionTypes) )