]> git.sur5r.net Git - openldap/blob - servers/slapd/schema/core.schema
8d6d402c6c95ca60689cb708a0016807bc9a7574
[openldap] / servers / slapd / schema / core.schema
1
2 # Standard schema from RFC2251-RFC2256
3
4 # Standard X.501(93) Operational Attribute Types from RFC2252
5
6 attribute ( 2.5.18.1 NAME 'createTimestamp' EQUALITY generalizedTimeMatch
7       ORDERING generalizedTimeOrderingMatch
8       SYNTAX 1.3.6.1.4.1.1466.115.121.1.24
9       SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
10
11 attribute ( 2.5.18.2 NAME 'modifyTimestamp' EQUALITY generalizedTimeMatch
12       ORDERING generalizedTimeOrderingMatch
13       SYNTAX 1.3.6.1.4.1.1466.115.121.1.24
14       SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
15
16 attribute ( 2.5.18.3 NAME 'creatorsName' EQUALITY distinguishedNameMatch
17       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
18       SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
19
20 attribute ( 2.5.18.4 NAME 'modifiersName' EQUALITY distinguishedNameMatch
21       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
22       SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
23
24 attribute ( 2.5.18.10 NAME 'subschemaSubentry'
25       EQUALITY distinguishedNameMatch
26       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 NO-USER-MODIFICATION
27       SINGLE-VALUE USAGE directoryOperation )
28
29 attribute ( 2.5.21.5 NAME 'attributeTypes'
30       EQUALITY objectIdentifierFirstComponentMatch
31       SYNTAX 1.3.6.1.4.1.1466.115.121.1.3 USAGE directoryOperation )
32
33 attribute ( 2.5.21.6 NAME 'objectClasses'
34       EQUALITY objectIdentifierFirstComponentMatch
35       SYNTAX 1.3.6.1.4.1.1466.115.121.1.37 USAGE directoryOperation )
36
37 attribute ( 2.5.21.4 NAME 'matchingRules'
38       EQUALITY objectIdentifierFirstComponentMatch
39       SYNTAX 1.3.6.1.4.1.1466.115.121.1.30 USAGE directoryOperation )
40
41 attribute ( 2.5.21.8 NAME 'matchingRuleUse'
42       EQUALITY objectIdentifierFirstComponentMatch
43       SYNTAX 1.3.6.1.4.1.1466.115.121.1.31 USAGE directoryOperation )
44
45 # LDAP Operational Attributes from RFC2252
46
47 attribute ( 1.3.6.1.4.1.1466.101.120.5 NAME 'namingContexts'
48      SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 USAGE dSAOperation )
49
50 attribute ( 1.3.6.1.4.1.1466.101.120.6 NAME 'altServer'
51      SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 USAGE dSAOperation )
52
53 attribute ( 1.3.6.1.4.1.1466.101.120.7 NAME 'supportedExtension'
54      SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 USAGE dSAOperation )
55
56 attribute ( 1.3.6.1.4.1.1466.101.120.13 NAME 'supportedControl'
57      SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 USAGE dSAOperation )
58
59 attribute ( 1.3.6.1.4.1.1466.101.120.14 NAME 'supportedSASLMechanisms'
60      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 USAGE dSAOperation )
61
62 attribute ( 1.3.6.1.4.1.1466.101.120.15 NAME 'supportedLDAPVersion'
63      SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 USAGE dSAOperation )
64
65 # LDAP Subschema Atrribute from RFC2252
66
67 attribute ( 1.3.6.1.4.1.1466.101.120.16 NAME 'ldapSyntaxes'
68       EQUALITY objectIdentifierFirstComponentMatch
69       SYNTAX 1.3.6.1.4.1.1466.115.121.1.54 USAGE directoryOperation )
70
71 # X.500 Subschema attributes from RFC2252
72
73 attribute ( 2.5.21.1 NAME 'dITStructureRules' EQUALITY integerFirstComponentMatch
74    SYNTAX 1.3.6.1.4.1.1466.115.121.1.17 USAGE directoryOperation )
75
76 attribute ( 2.5.21.7 NAME 'nameForms'
77       EQUALITY objectIdentifierFirstComponentMatch
78       SYNTAX 1.3.6.1.4.1.1466.115.121.1.35 USAGE directoryOperation )
79
80 attribute ( 2.5.21.2 NAME 'dITContentRules'
81       EQUALITY objectIdentifierFirstComponentMatch
82       SYNTAX 1.3.6.1.4.1.1466.115.121.1.16 USAGE directoryOperation )
83
84 # Object Classes from RFC2252
85
86 objectclass ( 1.3.6.1.4.1.1466.101.120.111 NAME 'extensibleObject'
87       SUP top AUXILIARY )
88
89 # ldapSyntaxes (operational) is admissible in next:
90
91 objectclass ( 2.5.20.1 NAME 'subschema' AUXILIARY
92       MAY ( dITStructureRules $ nameForms $ ditContentRules $
93       objectClasses $ attributeTypes $ matchingRules $
94       matchingRuleUse ) )
95
96 # Standard attribute types from RFC2256
97
98 attribute ( 2.5.4.0 NAME 'objectClass' EQUALITY objectIdentifierMatch
99       SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 )
100
101 attribute ( 2.5.4.1 NAME 'aliasedObjectName' EQUALITY distinguishedNameMatch
102       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE )
103
104 # Defined, but no longer used
105
106 attribute ( 2.5.4.2 NAME 'knowledgeInformation' EQUALITY caseIgnoreMatch
107       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
108
109 attribute ( 2.5.4.3 NAME ( 'cn' 'commonName' ) SUP name )
110
111 attribute ( 2.5.4.4 NAME ( 'sn' 'surname' ) SUP name )
112
113 attribute ( 2.5.4.5 NAME 'serialNumber' EQUALITY caseIgnoreMatch
114       SUBSTR caseIgnoreSubstringsMatch
115       SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{64} )
116
117 # (2-letter code from ISO 3166)
118
119 attribute ( 2.5.4.6 NAME ( 'c' 'countryName' ) SUP name SINGLE-VALUE )
120
121 attribute ( 2.5.4.7 NAME ( 'l' 'localityName' ) SUP name )
122
123 attribute ( 2.5.4.8 NAME ( 'st' 'stateOrProvinceName' ) SUP name )
124
125 attribute ( 2.5.4.9 NAME ( 'street' 'streetAddress' ) EQUALITY caseIgnoreMatch
126       SUBSTR caseIgnoreSubstringsMatch
127       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
128
129 attribute ( 2.5.4.10 NAME ( 'o' 'organizationName' ) SUP name )
130
131 attribute ( 2.5.4.11 NAME ( 'ou' 'organizationalUnitName' ) SUP name )
132
133 attribute ( 2.5.4.12 NAME 'title' SUP name )
134
135 attribute ( 2.5.4.13 NAME 'description' EQUALITY caseIgnoreMatch
136       SUBSTR caseIgnoreSubstringsMatch
137       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1024} )
138
139 # Obsoleted by enhancedSearchGuide
140
141 attribute ( 2.5.4.14 NAME 'searchGuide'
142       SYNTAX 1.3.6.1.4.1.1466.115.121.1.25 )
143
144 attribute ( 2.5.4.15 NAME 'businessCategory' EQUALITY caseIgnoreMatch
145      SUBSTR caseIgnoreSubstringsMatch
146      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
147
148 attribute ( 2.5.4.16 NAME 'postalAddress' EQUALITY caseIgnoreListMatch
149      SUBSTR caseIgnoreListSubstringsMatch
150      SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
151
152 attribute ( 2.5.4.17 NAME 'postalCode' EQUALITY caseIgnoreMatch
153      SUBSTR caseIgnoreSubstringsMatch
154      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{40} )
155
156 attribute ( 2.5.4.18 NAME 'postOfficeBox' EQUALITY caseIgnoreMatch
157      SUBSTR caseIgnoreSubstringsMatch
158      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{40} )
159
160 attribute ( 2.5.4.19 NAME 'physicalDeliveryOfficeName' EQUALITY caseIgnoreMatch
161      SUBSTR caseIgnoreSubstringsMatch
162      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
163
164 attribute ( 2.5.4.20 NAME 'telephoneNumber' EQUALITY telephoneNumberMatch
165      SUBSTR telephoneNumberSubstringsMatch
166      SYNTAX 1.3.6.1.4.1.1466.115.121.1.50{32} )
167
168 attribute ( 2.5.4.21 NAME 'telexNumber'
169      SYNTAX 1.3.6.1.4.1.1466.115.121.1.52 )
170
171 attribute ( 2.5.4.22 NAME 'teletexTerminalIdentifier'
172      SYNTAX 1.3.6.1.4.1.1466.115.121.1.51 )
173
174 attribute ( 2.5.4.23 NAME ( 'facsimileTelephoneNumber' 'fax' )
175      SYNTAX 1.3.6.1.4.1.1466.115.121.1.22 )
176
177 attribute ( 2.5.4.24 NAME 'x121Address' EQUALITY numericStringMatch
178      SUBSTR numericStringSubstringsMatch
179      SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{15} )
180
181 attribute ( 2.5.4.25 NAME 'internationaliSDNNumber' EQUALITY numericStringMatch
182      SUBSTR numericStringSubstringsMatch
183      SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{16} )
184
185 attribute ( 2.5.4.26 NAME 'registeredAddress' SUP postalAddress
186       SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
187
188 attribute ( 2.5.4.27 NAME 'destinationIndicator' EQUALITY caseIgnoreMatch
189       SUBSTR caseIgnoreSubstringsMatch
190       SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{128} )
191
192 attribute ( 2.5.4.28 NAME 'preferredDeliveryMethod'
193       SYNTAX 1.3.6.1.4.1.1466.115.121.1.14
194       SINGLE-VALUE )
195
196 attribute ( 2.5.4.29 NAME 'presentationAddress'
197       EQUALITY presentationAddressMatch
198       SYNTAX 1.3.6.1.4.1.1466.115.121.1.43
199       SINGLE-VALUE )
200
201 attribute ( 2.5.4.30 NAME 'supportedApplicationContext'
202       EQUALITY objectIdentifierMatch
203       SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 )
204
205 # SUP comes later
206
207 attribute ( 2.5.4.31 NAME 'member' SUP distinguishedName )
208
209 attribute ( 2.5.4.32 NAME 'owner' SUP distinguishedName )
210
211 attribute ( 2.5.4.33 NAME 'roleOccupant' SUP distinguishedName )
212
213 attribute ( 2.5.4.34 NAME 'seeAlso' SUP distinguishedName )
214
215 attribute ( 2.5.4.35 NAME 'userPassword' EQUALITY octetStringMatch
216       SYNTAX 1.3.6.1.4.1.1466.115.121.1.40{128} )
217
218 # Must be stored and requested in the binary form, as
219 # userCertificate;binary
220
221 attribute ( 2.5.4.36 NAME 'userCertificate'
222       SYNTAX 1.3.6.1.4.1.1466.115.121.1.8 )
223
224 # As above
225
226 attribute ( 2.5.4.37 NAME 'cACertificate'
227       SYNTAX 1.3.6.1.4.1.1466.115.121.1.8 )
228
229 # As above
230
231 attribute ( 2.5.4.38 NAME 'authorityRevocationList'
232       SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
233
234 # As above
235
236 attribute ( 2.5.4.39 NAME 'certificateRevocationList'
237       SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
238
239 # As above
240
241 attribute ( 2.5.4.40 NAME 'crossCertificatePair'
242       SYNTAX 1.3.6.1.4.1.1466.115.121.1.10 )
243
244 # Out of order!!!
245
246 attribute ( 2.5.4.41 NAME 'name' EQUALITY caseIgnoreMatch
247       SUBSTR caseIgnoreSubstringsMatch
248       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
249
250 attribute ( 2.5.4.42 NAME 'givenName' SUP name )
251
252 attribute ( 2.5.4.43 NAME 'initials' SUP name )
253
254 attribute ( 2.5.4.45 NAME 'x500UniqueIdentifier' EQUALITY bitStringMatch
255       SYNTAX 1.3.6.1.4.1.1466.115.121.1.6 )
256
257 attribute ( 2.5.4.46 NAME 'dnQualifier' EQUALITY caseIgnoreMatch
258       ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringsMatch
259       SYNTAX 1.3.6.1.4.1.1466.115.121.1.44 )
260
261 attribute ( 2.5.4.47 NAME 'enhancedSearchGuide'
262       SYNTAX 1.3.6.1.4.1.1466.115.121.1.21 )
263
264 attribute ( 2.5.4.48 NAME 'protocolInformation'
265       EQUALITY protocolInformationMatch
266       SYNTAX 1.3.6.1.4.1.1466.115.121.1.42 )
267
268 # Out of order!!!
269 # We had a dn definition in slapd.at.conf and Netscape lists both
270 # names for that OID
271
272 attribute ( 2.5.4.49 NAME ( 'distinguishedName' 'dn' ) EQUALITY distinguishedNameMatch
273       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
274
275 attribute ( 2.5.4.50 NAME 'uniqueMember' EQUALITY uniqueMemberMatch
276       SYNTAX 1.3.6.1.4.1.1466.115.121.1.34 )
277
278 attribute ( 2.5.4.51 NAME 'houseIdentifier' EQUALITY caseIgnoreMatch
279       SUBSTR caseIgnoreSubstringsMatch
280       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
281
282 # This attribute is to be stored and requested in the binary form, as
283 # 'supportedAlgorithms;binary'.
284
285 attribute ( 2.5.4.52 NAME 'supportedAlgorithms'
286       SYNTAX 1.3.6.1.4.1.1466.115.121.1.49 )
287
288 # This attribute is to be stored and requested in the binary form, as
289 # 'deltaRevocationList;binary'.
290
291 attribute ( 2.5.4.53 NAME 'deltaRevocationList'
292       SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
293
294 attribute ( 2.5.4.54 NAME 'dmdName' SUP name )
295
296 # Standard object classes from RFC2256
297
298 objectclass ( 2.5.6.0 NAME 'top' ABSTRACT MUST objectClass )
299
300 objectclass ( 2.5.6.1 NAME 'alias' SUP top STRUCTURAL MUST aliasedObjectName )
301
302 objectclass ( 2.5.6.2 NAME 'country' SUP top STRUCTURAL MUST c
303      MAY ( searchGuide $ description ) )
304
305 objectclass ( 2.5.6.3 NAME 'locality' SUP top STRUCTURAL
306      MAY ( street $ seeAlso $ searchGuide $ st $ l $ description ) )
307
308 objectclass ( 2.5.6.4 NAME 'organization' SUP top STRUCTURAL MUST o
309      MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
310      x121Address $ registeredAddress $ destinationIndicator $
311      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
312      telephoneNumber $ internationaliSDNNumber $
313      facsimileTelephoneNumber $
314      street $ postOfficeBox $ postalCode $ postalAddress $
315      physicalDeliveryOfficeName $ st $ l $ description ) )
316
317 objectclass ( 2.5.6.5 NAME 'organizationalUnit' SUP top STRUCTURAL MUST ou
318      MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
319      x121Address $ registeredAddress $ destinationIndicator $
320      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
321      telephoneNumber $ internationaliSDNNumber $
322      facsimileTelephoneNumber $
323      street $ postOfficeBox $ postalCode $ postalAddress $
324      physicalDeliveryOfficeName $ st $ l $ description ) )
325
326 objectclass ( 2.5.6.6 NAME 'person' SUP top STRUCTURAL MUST ( sn $ cn )
327      MAY ( userPassword $ telephoneNumber $ seeAlso $ description ) )
328
329 objectclass ( 2.5.6.7 NAME 'organizationalPerson' SUP person STRUCTURAL
330      MAY ( title $ x121Address $ registeredAddress $
331      destinationIndicator $
332      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
333      telephoneNumber $ internationaliSDNNumber $
334      facsimileTelephoneNumber $
335      street $ postOfficeBox $ postalCode $ postalAddress $
336      physicalDeliveryOfficeName $ ou $ st $ l ) )
337
338 # Notice that preferredDeliveryMethod is duplicate
339
340 objectclass ( 2.5.6.8 NAME 'organizationalRole' SUP top STRUCTURAL MUST cn
341      MAY ( x121Address $ registeredAddress $ destinationIndicator $
342      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
343      telephoneNumber $ internationaliSDNNumber $
344      facsimileTelephoneNumber $
345      seeAlso $ roleOccupant $ preferredDeliveryMethod $ street $
346      postOfficeBox $ postalCode $ postalAddress $
347      physicalDeliveryOfficeName $ ou $ st $ l $ description ) )
348
349 objectclass ( 2.5.6.9 NAME 'groupOfNames' SUP top STRUCTURAL MUST ( member $ cn )
350      MAY ( businessCategory $ seeAlso $ owner $ ou $ o $ description ) )
351
352 # Notice that preferredDeliveryMethod is duplicate
353 # It seems they could not agree on wheter telephoneNumber is MAY
354 # in person.  Probably it wasn't originally at was added as an
355 # afterthought
356
357 objectclass ( 2.5.6.10 NAME 'residentialPerson' SUP person STRUCTURAL MUST l
358      MAY ( businessCategory $ x121Address $ registeredAddress $
359      destinationIndicator $ preferredDeliveryMethod $ telexNumber $
360      teletexTerminalIdentifier $ telephoneNumber $
361      internationaliSDNNumber $
362      facsimileTelephoneNumber $ preferredDeliveryMethod $ street $
363      postOfficeBox $ postalCode $ postalAddress $
364      physicalDeliveryOfficeName $ st $ l ) )
365
366 objectclass ( 2.5.6.11 NAME 'applicationProcess' SUP top STRUCTURAL MUST cn
367      MAY ( seeAlso $ ou $ l $ description ) )
368
369 objectclass ( 2.5.6.12 NAME 'applicationEntity' SUP top STRUCTURAL
370      MUST ( presentationAddress $ cn )
371      MAY ( supportedApplicationContext $ seeAlso $ ou $ o $ l $
372      description ) )
373
374 # This one was wrong in our schema, it only allowed the aditional
375 # knowledgeInformation attribute, while it is derived from
376 # applicationEntity and should allow all its attributes as well.
377
378 objectclass ( 2.5.6.13 NAME 'dSA' SUP applicationEntity STRUCTURAL
379      MAY knowledgeInformation )
380
381 objectclass ( 2.5.6.14 NAME 'device' SUP top STRUCTURAL MUST cn
382      MAY ( serialNumber $ seeAlso $ owner $ ou $ o $ l $ description ) )
383
384 objectclass ( 2.5.6.15 NAME 'strongAuthenticationUser' SUP top AUXILIARY
385      MUST userCertificate )
386
387 objectclass ( 2.5.6.16 NAME 'certificationAuthority' SUP top AUXILIARY
388      MUST ( authorityRevocationList $ certificateRevocationList $
389      cACertificate ) MAY crossCertificatePair )
390
391 # New
392
393 objectclass ( 2.5.6.17 NAME 'groupOfUniqueNames' SUP top STRUCTURAL
394      MUST ( uniqueMember $ cn )
395      MAY ( businessCategory $ seeAlso $ owner $ ou $ o $ description ) )
396
397 # New
398
399 objectclass ( 2.5.6.18 NAME 'userSecurityInformation' SUP top AUXILIARY
400      MAY ( supportedAlgorithms ) )
401
402 # New
403
404 objectclass ( 2.5.6.16.2 NAME 'certificationAuthority-V2' SUP
405      certificationAuthority
406      AUXILIARY MAY ( deltaRevocationList ) )
407
408 # New
409
410 objectclass ( 2.5.6.19 NAME 'cRLDistributionPoint' SUP top STRUCTURAL
411      MUST ( cn ) MAY ( certificateRevocationList $
412      authorityRevocationList $
413      deltaRevocationList ) )
414
415 # New
416
417 objectclass ( 2.5.6.20 NAME 'dmd' SUP top STRUCTURAL MUST ( dmdName )
418      MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
419      x121Address $ registeredAddress $ destinationIndicator $
420      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
421      telephoneNumber $ internationaliSDNNumber $
422      facsimileTelephoneNumber $
423      street $ postOfficeBox $ postalCode $ postalAddress $
424      physicalDeliveryOfficeName $ st $ l $ description ) )
425