source: npl/commonservers/openldap_conf/root/etc/openldap/schemas.d/upgrade/50-samba.schema

Last change on this file was c5c522c, checked in by Edwin Eefting <edwin@datux.nl>, 8 years ago

initial commit, transferred from cleaned syn3 svn tree

  • Property mode set to 100644
File size: 15.7 KB
Line 
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## ----- READ THIS WHEN ADDING A NEW ATTRIBUTE OR OBJECT CLASS ------
14##
15## Run the 'get_next_oid' bash script in this directory to find the
16## next available OID for attribute type and object classes.
17##
18##   $ ./get_next_oid
19##   attributetype ( 1.3.6.1.4.1.7165.2.1.XX NAME ....
20##   objectclass ( 1.3.6.1.4.1.7165.2.2.XX NAME ....
21##
22## Also ensure that new entries adhere to the declaration style
23## used throughout this file
24##
25##    <attributetype|objectclass> ( 1.3.6.1.4.1.7165.2.XX.XX NAME ....
26##                               ^ ^                        ^
27##
28## The spaces are required for the get_next_oid script (and for
29## readability).
30##
31## ------------------------------------------------------------------
32
33########################################################################
34##                            HISTORICAL                              ##
35########################################################################
36
37##
38## Password hashes
39##
40#attributetype ( 1.3.6.1.4.1.7165.2.1.1 NAME 'lmPassword'
41#       DESC 'LanManager Passwd'
42#       EQUALITY caseIgnoreIA5Match
43#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
44
45#attributetype ( 1.3.6.1.4.1.7165.2.1.2 NAME 'ntPassword'
46#       DESC 'NT Passwd'
47#       EQUALITY caseIgnoreIA5Match
48#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
49
50##
51## Account flags in string format ([UWDX     ])
52##
53#attributetype ( 1.3.6.1.4.1.7165.2.1.4 NAME 'acctFlags'
54#       DESC 'Account Flags'
55#       EQUALITY caseIgnoreIA5Match
56#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{16} SINGLE-VALUE )
57
58##
59## Password timestamps & policies
60##
61#attributetype ( 1.3.6.1.4.1.7165.2.1.3 NAME 'pwdLastSet'
62#       DESC 'NT pwdLastSet'
63#       EQUALITY integerMatch
64#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
65
66#attributetype ( 1.3.6.1.4.1.7165.2.1.5 NAME 'logonTime'
67#       DESC 'NT logonTime'
68#       EQUALITY integerMatch
69#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
70
71#attributetype ( 1.3.6.1.4.1.7165.2.1.6 NAME 'logoffTime'
72#       DESC 'NT logoffTime'
73#       EQUALITY integerMatch
74#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
75
76#attributetype ( 1.3.6.1.4.1.7165.2.1.7 NAME 'kickoffTime'
77#       DESC 'NT kickoffTime'
78#       EQUALITY integerMatch
79#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
80
81#attributetype ( 1.3.6.1.4.1.7165.2.1.8 NAME 'pwdCanChange'
82#       DESC 'NT pwdCanChange'
83#       EQUALITY integerMatch
84#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
85
86#attributetype ( 1.3.6.1.4.1.7165.2.1.9 NAME 'pwdMustChange'
87#       DESC 'NT pwdMustChange'
88#       EQUALITY integerMatch
89#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
90
91##
92## string settings
93##
94#attributetype ( 1.3.6.1.4.1.7165.2.1.10 NAME 'homeDrive'
95#       DESC 'NT homeDrive'
96#       EQUALITY caseIgnoreIA5Match
97#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{4} SINGLE-VALUE )
98
99#attributetype ( 1.3.6.1.4.1.7165.2.1.11 NAME 'scriptPath'
100#       DESC 'NT scriptPath'
101#       EQUALITY caseIgnoreIA5Match
102#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE )
103
104#attributetype ( 1.3.6.1.4.1.7165.2.1.12 NAME 'profilePath'
105#       DESC 'NT profilePath'
106#       EQUALITY caseIgnoreIA5Match
107#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE )
108
109#attributetype ( 1.3.6.1.4.1.7165.2.1.13 NAME 'userWorkstations'
110#       DESC 'userWorkstations'
111#       EQUALITY caseIgnoreIA5Match
112#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{255} SINGLE-VALUE )
113
114#attributetype ( 1.3.6.1.4.1.7165.2.1.17 NAME 'smbHome'
115#       DESC 'smbHome'
116#       EQUALITY caseIgnoreIA5Match
117#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
118
119#attributetype ( 1.3.6.1.4.1.7165.2.1.18 NAME 'domain'
120#       DESC 'Windows NT domain to which the user belongs'
121#       EQUALITY caseIgnoreIA5Match
122#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
123
124##
125## user and group RID
126##
127#attributetype ( 1.3.6.1.4.1.7165.2.1.14 NAME 'rid'
128#       DESC 'NT rid'
129#       EQUALITY integerMatch
130#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
131
132#attributetype ( 1.3.6.1.4.1.7165.2.1.15 NAME 'primaryGroupID'
133#       DESC 'NT Group RID'
134#       EQUALITY integerMatch
135#       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
136
137##
138## The smbPasswordEntry objectclass has been depreciated in favor of the
139## sambaAccount objectclass
140##
141#objectclass ( 1.3.6.1.4.1.7165.2.2.1 NAME 'smbPasswordEntry' SUP top AUXILIARY
142#        DESC 'Samba smbpasswd entry'
143#        MUST ( uid $ uidNumber )
144#        MAY  ( lmPassword $ ntPassword $ pwdLastSet $ acctFlags ))
145
146#objectclass ( 1.3.6.1.4.1.7165.2.2.2 NAME 'sambaAccount' SUP top STRUCTURAL
147#       DESC 'Samba Account'
148#       MUST ( uid $ rid )
149#       MAY  ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $
150#               logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $
151#               displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $
152#               description $ userWorkstations $ primaryGroupID $ domain ))
153
154#objectclass ( 1.3.6.1.4.1.7165.2.2.3 NAME 'sambaAccount' SUP top AUXILIARY
155#       DESC 'Samba Auxiliary Account'
156#       MUST ( uid $ rid )
157#       MAY  ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $
158#              logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $
159#              displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $
160#              description $ userWorkstations $ primaryGroupID $ domain ))
161
162########################################################################
163##                        END OF HISTORICAL                           ##
164########################################################################
165
166#######################################################################
167##                Attributes used by Samba 3.0 schema                ##
168#######################################################################
169
170##
171## Password hashes
172##
173attributetype ( 1.3.6.1.4.1.7165.2.1.24 NAME 'sambaLMPassword'
174        DESC 'LanManager Password'
175        EQUALITY caseIgnoreIA5Match
176        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
177
178attributetype ( 1.3.6.1.4.1.7165.2.1.25 NAME 'sambaNTPassword'
179        DESC 'MD4 hash of the unicode password'
180        EQUALITY caseIgnoreIA5Match
181        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} SINGLE-VALUE )
182
183##
184## Account flags in string format ([UWDX     ])
185##
186attributetype ( 1.3.6.1.4.1.7165.2.1.26 NAME 'sambaAcctFlags'
187        DESC 'Account Flags'
188        EQUALITY caseIgnoreIA5Match
189        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{16} SINGLE-VALUE )
190
191##
192## Password timestamps & policies
193##
194attributetype ( 1.3.6.1.4.1.7165.2.1.27 NAME 'sambaPwdLastSet'
195        DESC 'Timestamp of the last password update'
196        EQUALITY integerMatch
197        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
198
199attributetype ( 1.3.6.1.4.1.7165.2.1.28 NAME 'sambaPwdCanChange'
200        DESC 'Timestamp of when the user is allowed to update the password'
201        EQUALITY integerMatch
202        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
203
204attributetype ( 1.3.6.1.4.1.7165.2.1.29 NAME 'sambaPwdMustChange'
205        DESC 'Timestamp of when the password will expire'
206        EQUALITY integerMatch
207        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
208
209attributetype ( 1.3.6.1.4.1.7165.2.1.30 NAME 'sambaLogonTime'
210        DESC 'Timestamp of last logon'
211        EQUALITY integerMatch
212        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
213
214attributetype ( 1.3.6.1.4.1.7165.2.1.31 NAME 'sambaLogoffTime'
215        DESC 'Timestamp of last logoff'
216        EQUALITY integerMatch
217        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
218
219attributetype ( 1.3.6.1.4.1.7165.2.1.32 NAME 'sambaKickoffTime'
220        DESC 'Timestamp of when the user will be logged off automatically'
221        EQUALITY integerMatch
222        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
223
224attributetype ( 1.3.6.1.4.1.7165.2.1.48 NAME 'sambaBadPasswordCount'
225        DESC 'Bad password attempt count'
226        EQUALITY integerMatch
227        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
228
229attributetype ( 1.3.6.1.4.1.7165.2.1.49 NAME 'sambaBadPasswordTime'
230        DESC 'Time of the last bad password attempt'
231        EQUALITY integerMatch
232        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
233
234attributetype ( 1.3.6.1.4.1.7165.2.1.55 NAME 'sambaLogonHours'
235        DESC 'Logon Hours'
236        EQUALITY caseIgnoreIA5Match
237        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{42} SINGLE-VALUE )
238
239##
240## string settings
241##
242attributetype ( 1.3.6.1.4.1.7165.2.1.33 NAME 'sambaHomeDrive'
243        DESC 'Driver letter of home directory mapping'
244        EQUALITY caseIgnoreIA5Match
245        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{4} SINGLE-VALUE )
246
247attributetype ( 1.3.6.1.4.1.7165.2.1.34 NAME 'sambaLogonScript'
248        DESC 'Logon script path'
249        EQUALITY caseIgnoreMatch
250        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE )
251
252attributetype ( 1.3.6.1.4.1.7165.2.1.35 NAME 'sambaProfilePath'
253        DESC 'Roaming profile path'
254        EQUALITY caseIgnoreMatch
255        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE )
256
257attributetype ( 1.3.6.1.4.1.7165.2.1.36 NAME 'sambaUserWorkstations'
258        DESC 'List of user workstations the user is allowed to logon to'
259        EQUALITY caseIgnoreMatch
260        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} SINGLE-VALUE )
261
262attributetype ( 1.3.6.1.4.1.7165.2.1.37 NAME 'sambaHomePath'
263        DESC 'Home directory UNC path'
264        EQUALITY caseIgnoreMatch
265        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
266
267attributetype ( 1.3.6.1.4.1.7165.2.1.38 NAME 'sambaDomainName'
268        DESC 'Windows NT domain to which the user belongs'
269        EQUALITY caseIgnoreMatch
270        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
271
272attributetype ( 1.3.6.1.4.1.7165.2.1.47 NAME 'sambaMungedDial'
273        DESC ''
274        EQUALITY caseExactMatch
275        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1050} )
276
277attributetype ( 1.3.6.1.4.1.7165.2.1.54 NAME 'sambaPasswordHistory'
278        DESC 'Concatenated MD4 hashes of the unicode passwords used on this account'
279        EQUALITY caseIgnoreIA5Match
280        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32} )
281
282##
283## SID, of any type
284##
285
286attributetype ( 1.3.6.1.4.1.7165.2.1.20 NAME 'sambaSID'
287        DESC 'Security ID'
288        EQUALITY caseIgnoreIA5Match
289        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE )
290
291
292##
293## Primary group SID, compatible with ntSid
294##
295
296attributetype ( 1.3.6.1.4.1.7165.2.1.23 NAME 'sambaPrimaryGroupSID'
297        DESC 'Primary Group Security ID'
298        EQUALITY caseIgnoreIA5Match
299        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} SINGLE-VALUE )
300
301attributetype ( 1.3.6.1.4.1.7165.2.1.51 NAME 'sambaSIDList'
302        DESC 'Security ID List'
303        EQUALITY caseIgnoreIA5Match
304        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} )
305
306##
307## group mapping attributes
308##
309attributetype ( 1.3.6.1.4.1.7165.2.1.19 NAME 'sambaGroupType'
310        DESC 'NT Group Type'
311        EQUALITY integerMatch
312        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
313
314##
315## Store info on the domain
316##
317
318attributetype ( 1.3.6.1.4.1.7165.2.1.21 NAME 'sambaNextUserRid'
319        DESC 'Next NT rid to give our for users'
320        EQUALITY integerMatch
321        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
322
323attributetype ( 1.3.6.1.4.1.7165.2.1.22 NAME 'sambaNextGroupRid'
324        DESC 'Next NT rid to give out for groups'
325        EQUALITY integerMatch
326        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
327
328attributetype ( 1.3.6.1.4.1.7165.2.1.39 NAME 'sambaNextRid'
329        DESC 'Next NT rid to give out for anything'
330        EQUALITY integerMatch
331        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
332
333attributetype ( 1.3.6.1.4.1.7165.2.1.40 NAME 'sambaAlgorithmicRidBase'
334        DESC 'Base at which the samba RID generation algorithm should operate'
335        EQUALITY integerMatch
336        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
337
338attributetype ( 1.3.6.1.4.1.7165.2.1.41 NAME 'sambaShareName'
339        DESC 'Share Name'
340        EQUALITY caseIgnoreMatch
341        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
342
343attributetype ( 1.3.6.1.4.1.7165.2.1.42 NAME 'sambaOptionName'
344        DESC 'Option Name'
345        EQUALITY caseIgnoreMatch
346        SUBSTR caseIgnoreSubstringsMatch
347        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
348
349attributetype ( 1.3.6.1.4.1.7165.2.1.43 NAME 'sambaBoolOption'
350        DESC 'A boolean option'
351        EQUALITY booleanMatch
352        SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
353
354attributetype ( 1.3.6.1.4.1.7165.2.1.44 NAME 'sambaIntegerOption'
355        DESC 'An integer option'
356        EQUALITY integerMatch
357        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
358
359attributetype ( 1.3.6.1.4.1.7165.2.1.45 NAME 'sambaStringOption'
360        DESC 'A string option'
361        EQUALITY caseExactIA5Match
362        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
363
364attributetype ( 1.3.6.1.4.1.7165.2.1.46 NAME 'sambaStringListOption'
365        DESC 'A string list option'
366        EQUALITY caseIgnoreMatch
367        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
368
369
370attributetype ( 1.3.6.1.4.1.7165.2.1.50 NAME 'sambaPrivName'
371        SUP name )
372
373attributetype ( 1.3.6.1.4.1.7165.2.1.52 NAME 'sambaPrivilegeList'
374        DESC 'Privileges List'
375        EQUALITY caseIgnoreIA5Match
376        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{64} )
377
378attributetype ( 1.3.6.1.4.1.7165.2.1.53 NAME 'sambaTrustFlags'
379        DESC 'Trust Password Flags'
380        EQUALITY caseIgnoreIA5Match
381        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
382
383
384#######################################################################
385##              objectClasses used by Samba 3.0 schema               ##
386#######################################################################
387
388## The X.500 data model (and therefore LDAPv3) says that each entry can
389## only have one structural objectclass.  OpenLDAP 2.0 does not enforce
390## this currently but will in v2.1
391
392##
393## added new objectclass (and OID) for 3.0 to help us deal with backwards
394## compatibility with 2.2 installations (e.g. ldapsam_compat)  --jerry
395##
396objectclass ( 1.3.6.1.4.1.7165.2.2.6 NAME 'sambaSamAccount' SUP top AUXILIARY
397        DESC 'Samba 3.0 Auxilary SAM Account'
398        MUST ( uid $ sambaSID )
399        MAY  ( cn $ sambaLMPassword $ sambaNTPassword $ sambaPwdLastSet $
400               sambaLogonTime $ sambaLogoffTime $ sambaKickoffTime $
401               sambaPwdCanChange $ sambaPwdMustChange $ sambaAcctFlags $
402               displayName $ sambaHomePath $ sambaHomeDrive $ sambaLogonScript $
403               sambaProfilePath $ description $ sambaUserWorkstations $
404               sambaPrimaryGroupSID $ sambaDomainName $ sambaMungedDial $
405               sambaBadPasswordCount $ sambaBadPasswordTime $
406               sambaPasswordHistory $ sambaLogonHours))
407
408##
409## Group mapping info
410##
411objectclass ( 1.3.6.1.4.1.7165.2.2.4 NAME 'sambaGroupMapping' SUP top AUXILIARY
412        DESC 'Samba Group Mapping'
413        MUST ( gidNumber $ sambaSID $ sambaGroupType )
414        MAY  ( displayName $ description $ sambaSIDList ))
415
416##
417## Trust password for trust relationships (any kind)
418##
419objectclass ( 1.3.6.1.4.1.7165.2.2.14 NAME 'sambaTrustPassword' SUP top STRUCTURAL
420        DESC 'Samba Trust Password'
421        MUST ( sambaDomainName $ sambaNTPassword $ sambaTrustFlags )
422        MAY ( sambaSID $ sambaPwdLastSet ))
423
424##
425## Whole-of-domain info
426##
427objectclass ( 1.3.6.1.4.1.7165.2.2.5 NAME 'sambaDomain' SUP top STRUCTURAL
428        DESC 'Samba Domain Information'
429        MUST ( sambaDomainName $
430               sambaSID )
431        MAY ( sambaNextRid $ sambaNextGroupRid $ sambaNextUserRid $
432              sambaAlgorithmicRidBase ) )
433
434##
435## used for idmap_ldap module
436##
437objectclass ( 1.3.6.1.4.1.7165.2.2.7 NAME 'sambaUnixIdPool' SUP top AUXILIARY
438        DESC 'Pool for allocating UNIX uids/gids'
439        MUST ( uidNumber $ gidNumber ) )
440
441
442objectclass ( 1.3.6.1.4.1.7165.2.2.8 NAME 'sambaIdmapEntry' SUP top AUXILIARY
443        DESC 'Mapping from a SID to an ID'
444        MUST ( sambaSID )
445        MAY ( uidNumber $ gidNumber ) )
446
447objectclass ( 1.3.6.1.4.1.7165.2.2.9 NAME 'sambaSidEntry' SUP top STRUCTURAL
448        DESC 'Structural Class for a SID'
449        MUST ( sambaSID ) )
450
451objectclass ( 1.3.6.1.4.1.7165.1.2.2.10 NAME 'sambaConfig' SUP top AUXILIARY
452        DESC 'Samba Configuration Section'
453        MAY ( description ) )
454
455objectclass ( 1.3.6.1.4.1.7165.2.2.11 NAME 'sambaShare' SUP top STRUCTURAL
456        DESC 'Samba Share Section'
457        MUST ( sambaShareName )
458        MAY ( description ) )
459
460objectclass ( 1.3.6.1.4.1.7165.2.2.12 NAME 'sambaConfigOption' SUP top STRUCTURAL
461        DESC 'Samba Configuration Option'
462        MUST ( sambaOptionName )
463        MAY ( sambaBoolOption $ sambaIntegerOption $ sambaStringOption $
464              sambaStringListoption $ description ) )
465
466
467objectclass ( 1.3.6.1.4.1.7165.2.2.13 NAME 'sambaPrivilege' SUP top AUXILIARY
468        DESC 'Samba Privilege'
469        MUST ( sambaSID )
470        MAY ( sambaPrivilegeList ) )
471
Note: See TracBrowser for help on using the repository browser.