3 # - [PP] Now version controlled in db.d.o git repository, also see debian/changelog - 2009
4 # - [PP] Now version controlled in db.d.o bzr repository - 2007-12-25
7 # - [HE] Add 'purpose', 'physicalHost' to debianServer - 2007-12-25
8 # - [zobel] Add 'VoIP' - 2008-05-10
9 # - [luk] Add 'subGroup' to group - 2008-11-22
12 # - Add 'gender' and 'birthDate' to debianDeveloper
13 # - Add 'mailDisableMessage' to debianAccount
14 # - Add 'mailDisableMessage', 'mailCallout', 'mailGreylisting', 'mailRBL',
15 # 'mailRHSBL', and 'mailWhitelist' to debianDeveloper and debianRoleAccount
18 # - Add 'access' as a MAY for debianServer objectclass.
19 # - Make activity-from a UTF-8 string rather than ASCII.
20 # - add new debianRoleAccount objectclass.
23 # - Add 'access' as a MAY for debianDeveloper objectclass.
24 # - Add 'gid' attribute.
25 # - Make homeDirectory a MAY not MUST for debianAccount.
26 # - drop userPassword and memberUID MAYs from debianGroup.
27 # - add SUP top STRUCTURAL to debianGroup.
30 # - add a UTF8-enabled 'gecos' attribute type, conflicts with RFC2307
31 # - add debianAccount, which is roughly equivalent to posixAccount but
32 # permits UTF8 gecos fields
33 # - add debianGroup, which is the same as above but for posixGroup
36 # - Remove labeledURI, jpegPhoto from the list of supported
37 # attributes; using inetOrgPerson instead of organizationalPerson as
38 # a structural objectclass gives us both of these, and several other
39 # attributes that may be useful.
40 # - Add echelon attributes for MIA work to the debiandeveloper
41 # objectclass. (accountcomment,accountstatus)
42 # - Add specification for debianServer objectclass, used for Debian
46 # - grammarfied 'allowedHosts' to 'allowedHost' as
47 # 1.3.6.1.4.1.9586.100.4.2.12.
48 # - add 'privateSub' as 1.3.6.1.4.1.9586.100.4.4.5.
49 # - add 'jabberJID' as 1.3.6.1.4.1.9586.100.4.2.13.
50 # - change 'icqUIN' to an integer type (see? I told you it wasn't
51 # approved for use yet! ;)
57 # Project: db.debian.org
58 # Contact: Debian directory administrators <admin@db.debian.org>
62 # enterprise.Debian.project.userdir / 1.3.6.1.4.1.9586.100.4
64 # .1 - public LDAP objectClasses
68 # .2 - public LDAP attributeTypes
77 # .9 - middlename (mn)
79 # .11 - supplementaryGid
100 # .32 - mailDisableMessage
106 # .38 - mailContentInspectionAction
107 # .39 - allowedGroups
108 # .40 - exportOptions
109 # .41 - sshdistAuthKeysHost
114 # .3 - experimental LDAP objectClasses
115 # .1 - debianDeveloper
117 # .3 - debianRoleAccount
119 # .4 - experimental LDAP attributeTypes
120 # .1 - allowedHosts - OBSOLETED
123 # .4 - keyFingerPrint
125 # .6 - accountComment
127 # .8 - perform callouts
128 # .9 - perform greylisting
133 # .15 - mailDefaultOptions
134 # .16 - mailPreserveSuffixSeparator
136 # Public attribute types
137 attributetype ( 1.3.6.1.4.1.9586.100.4.2.1
139 DESC 'textual form of an SSH public key compatible with authorized_keys'
140 EQUALITY caseIgnoreMatch
141 SUBSTR caseIgnoreSubstringsMatch
142 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
144 attributetype ( 1.3.6.1.4.1.9586.100.4.2.2
146 DESC 'last known activity from user email address'
147 EQUALITY caseExactMatch
148 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
150 attributetype ( 1.3.6.1.4.1.9586.100.4.2.3
152 DESC 'last known activity from user PGP key'
153 EQUALITY caseExactIA5Match
154 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
156 attributetype ( 1.3.6.1.4.1.9586.100.4.2.4
158 DESC 'user-editable comment'
159 EQUALITY caseExactIA5Match
160 SUBSTR caseIgnoreIA5SubstringsMatch
161 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
163 attributetype ( 1.3.6.1.4.1.9586.100.4.2.5
165 DESC 'UIN for ICQ instant messaging system'
166 EQUALITY integerMatch
167 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
169 attributetype ( 1.3.6.1.4.1.9586.100.4.2.6
171 DESC 'Internet Relay Chat nickname'
172 EQUALITY caseIgnoreIA5Match
173 SUBSTR caseIgnoreIA5SubstringsMatch
174 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
176 attributetype ( 1.3.6.1.4.1.9586.100.4.2.7
178 DESC 'latitude coordinate'
179 EQUALITY caseExactIA5Match
180 SUBSTR caseExactIA5SubstringsMatch
181 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
183 attributetype ( 1.3.6.1.4.1.9586.100.4.2.8
185 DESC 'longitude coordinate'
186 EQUALITY caseExactIA5Match
187 SUBSTR caseExactIA5SubstringsMatch
188 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
190 attributetype ( 1.3.6.1.4.1.9586.100.4.2.9
191 NAME ( 'mn' 'middlename' )
194 attributetype ( 1.3.6.1.4.1.9586.100.4.2.10
196 DESC 'vacation message'
197 EQUALITY caseIgnoreMatch
198 SUBSTR caseIgnoreSubstringsMatch
199 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
201 attributetype ( 1.3.6.1.4.1.9586.100.4.2.11
202 NAME 'supplementaryGid'
203 DESC 'additional Unix group id of user'
204 EQUALITY caseIgnoreMatch
205 SUBSTR caseIgnoreSubstringsMatch
206 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
208 attributetype ( 1.3.6.1.4.1.9586.100.4.2.12
210 DESC 'host name this account is allowed access to'
211 EQUALITY caseIgnoreIA5Match
212 SUBSTR caseIgnoreIA5SubstringsMatch
213 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
215 attributetype ( 1.3.6.1.4.1.9586.100.4.2.13
217 DESC 'JID for Jabber instant messaging protocol'
218 EQUALITY caseIgnoreIA5Match
219 SUBSTR caseIgnoreIA5SubstringsMatch
220 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
222 attributetype ( 1.3.6.1.4.1.9586.100.4.2.14
224 DESC 'nature of access allowed to server'
225 EQUALITY caseIgnoreMatch
226 SUBSTR caseIgnoreSubstringsMatch
227 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
229 attributetype ( 1.3.6.1.4.1.9586.100.4.2.15
231 DESC 'email address of server administrator'
232 EQUALITY caseIgnoreIA5Match
233 SUBSTR caseIgnoreIA5SubstringsMatch
234 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
236 attributetype ( 1.3.6.1.4.1.9586.100.4.2.16
238 DESC 'hardware architecture of server'
239 EQUALITY caseIgnoreIA5Match
240 SUBSTR caseIgnoreIA5SubstringsMatch
241 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} SINGLE-VALUE )
243 attributetype ( 1.3.6.1.4.1.9586.100.4.2.17
245 DESC 'type of network connection for server'
246 EQUALITY caseIgnoreMatch
247 SUBSTR caseIgnoreSubstringsMatch
248 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
250 attributetype ( 1.3.6.1.4.1.9586.100.4.2.18
252 DESC 'amount of disk space available to server'
253 EQUALITY caseIgnoreMatch
254 SUBSTR caseIgnoreSubstringsMatch
255 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} )
257 attributetype ( 1.3.6.1.4.1.9586.100.4.2.19
259 DESC 'host OS distribution'
260 EQUALITY caseIgnoreIA5Match
261 SUBSTR caseIgnoreIA5SubstringsMatch
262 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} SINGLE-VALUE )
264 #attributetype ( 1.3.6.1.4.1.9586.100.4.2.20
266 # DESC '(short) host name of server'
267 # EQUALITY caseIgnoreIA5Match
268 # SUBSTR caseIgnoreIA5SubstringsMatch
269 # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} SINGLE-VALUE )
271 attributetype ( 1.3.6.1.4.1.9586.100.4.2.21
273 DESC 'FQDN of the server'
274 EQUALITY caseIgnoreIA5Match
275 SUBSTR caseIgnoreIA5SubstringsMatch
276 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
278 attributetype ( 1.3.6.1.4.1.9586.100.4.2.22
280 DESC 'description of physical hardware'
281 EQUALITY caseIgnoreMatch
282 SUBSTR caseIgnoreSubstringsMatch
283 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} SINGLE-VALUE )
285 attributetype ( 1.3.6.1.4.1.9586.100.4.2.23
287 DESC 'amount of RAM available to server'
288 EQUALITY caseIgnoreMatch
289 SUBSTR caseIgnoreSubstringsMatch
290 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} )
292 attributetype ( 1.3.6.1.4.1.9586.100.4.2.24
294 DESC 'name of the sponsor of this server'
295 EQUALITY caseIgnoreMatch
296 SUBSTR caseIgnoreSubstringsMatch
297 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
299 attributetype ( 1.3.6.1.4.1.9586.100.4.2.25
301 DESC 'email address of sponsoring server administrator'
302 EQUALITY caseIgnoreIA5Match
303 SUBSTR caseIgnoreIA5SubstringsMatch
304 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
306 attributetype ( 1.3.6.1.4.1.9586.100.4.2.26
308 DESC 'textual form of an SSH public host key compatible with known_hosts'
309 EQUALITY caseIgnoreMatch
310 SUBSTR caseIgnoreSubstringsMatch
311 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
313 attributetype ( 1.3.6.1.4.1.9586.100.4.2.27
315 DESC 'administrative status of server'
316 EQUALITY caseIgnoreMatch
317 SUBSTR caseIgnoreSubstringsMatch
318 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
320 attributetype ( 1.3.6.1.4.1.9586.100.4.2.28
322 DESC 'The GECOS field; the common name'
323 EQUALITY caseIgnoreMatch
324 SUBSTR caseIgnoreSubstringsMatch
325 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
327 attributetype ( 1.3.6.1.4.1.9586.100.4.2.29
330 EQUALITY caseExactIA5Match
331 SUBSTR caseExactIA5SubstringsMatch
332 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
334 attributetype ( 1.3.6.1.4.1.9586.100.4.2.30
336 DESC 'ISO 5218 representation of human gender'
337 EQUALITY integerMatch
339 SYNTAX 1.3.6.1.4.1.1466.115.121.1.27{1} )
341 attributetype ( 1.3.6.1.4.1.9586.100.4.2.31
343 DESC 'Date of birth in YYYYMMDD format'
344 EQUALITY numericStringMatch
346 SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{8} )
348 attributetype ( 1.3.6.1.4.1.9586.100.4.2.32
349 NAME 'mailDisableMessage'
350 DESC 'Message returned when all mail is disabled'
351 EQUALITY caseIgnoreIA5Match
352 SUBSTR caseIgnoreIA5SubstringsMatch
353 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
355 attributetype ( 1.3.6.1.4.1.9586.100.4.2.33
357 DESC 'purposes of this server'
358 EQUALITY caseIgnoreMatch
359 SUBSTR caseIgnoreSubstringsMatch
360 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
362 attributetype ( 1.3.6.1.4.1.9586.100.4.2.34
364 DESC 'FQDN of the physical host of this virtual server'
365 EQUALITY caseIgnoreIA5Match
366 SUBSTR caseIgnoreIA5SubstringsMatch
368 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
370 attributetype ( 1.3.6.1.4.1.9586.100.4.2.35
372 DESC 'VoIP URL to communicate with that person'
373 EQUALITY caseIgnoreIA5Match
374 SUBSTR caseIgnoreIA5SubstringsMatch
375 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
377 attributetype ( 1.3.6.1.4.1.9586.100.4.2.36
380 EQUALITY octetStringMatch
381 SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
383 attributetype ( 1.3.6.1.4.1.9586.100.4.2.37
385 DESC 'name of other group for which membership implied by memberschip to this group'
386 EQUALITY caseIgnoreIA5Match
387 SUBSTR caseIgnoreIA5SubstringsMatch
388 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
390 # more attributes below
391 attributetype ( 1.3.6.1.4.1.9586.100.4.2.39
393 DESC 'Groups that have access to a host'
394 EQUALITY caseExactIA5Match
395 SUBSTR caseExactIA5SubstringsMatch
396 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
398 attributetype ( 1.3.6.1.4.1.9586.100.4.2.40
400 DESC 'export options for servers'
401 EQUALITY caseIgnoreIA5Match
402 SUBSTR caseIgnoreIA5SubstringsMatch
403 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
405 attributetype ( 1.3.6.1.4.1.9586.100.4.2.43
407 DESC 'web password for SSO'
408 EQUALITY octetStringMatch
409 SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
411 attributetype ( 1.3.6.1.4.1.9586.100.4.2.44
413 DESC 'password for voip.debian.org'
414 EQUALITY octetStringMatch
415 SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
417 # Experimental attribute types
419 # There are existing schemas for doing DNS in LDAP; would one of
420 # these be better? c.f. draft-miller-dns-ldap-schema-00 (expired)
421 attributetype ( 1.3.6.1.4.1.9586.100.4.4.2
423 DESC 'DNS zone record for user'
424 EQUALITY octetStringMatch
425 SUBSTR caseIgnoreSubstringsMatch
426 SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
428 # rfc822mailbox (RFC1274) is recommended as a replacement for this in
430 attributetype ( 1.3.6.1.4.1.9586.100.4.4.3
432 DESC 'forwarding address for email sent to this account'
433 EQUALITY caseIgnoreIA5Match
434 SUBSTR caseIgnoreIA5SubstringsMatch
435 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE)
437 # Network Associates also has a schema for PGP keys / key IDs which may
438 # or may not be applicable:
439 # http://www.openldap.org/lists/openldap-devel/200010/msg00071.html
440 attributetype ( 1.3.6.1.4.1.9586.100.4.4.4
441 NAME 'keyFingerPrint'
442 EQUALITY caseIgnoreMatch
443 SUBSTR caseIgnoreSubstringsMatch
444 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
446 # Rather Debian-specific, not useful to the public.
447 attributetype ( 1.3.6.1.4.1.9586.100.4.4.5
449 DESC 'email subscription address for debian-private mailing list'
450 EQUALITY caseIgnoreIA5Match
451 SUBSTR caseIgnoreIA5SubstringsMatch
452 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE)
454 # Echelon attributes; re-evaluate later
455 attributetype ( 1.3.6.1.4.1.9586.100.4.4.6
456 NAME 'accountComment'
457 DESC 'additional comments regarding the account status'
458 EQUALITY caseIgnoreIA5Match
459 SUBSTR caseIgnoreIA5SubstringsMatch
460 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
462 attributetype ( 1.3.6.1.4.1.9586.100.4.4.7
464 DESC 'Debian developer account status'
465 EQUALITY caseIgnoreIA5Match
466 SUBSTR caseIgnoreIA5SubstringsMatch
467 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
469 # mail attributes; not public information
470 attributetype ( 1.3.6.1.4.1.9586.100.4.4.8
472 DESC 'Whether or not to require a successful callout attempt on email delivery'
473 EQUALITY booleanMatch
474 SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
476 attributetype ( 1.3.6.1.4.1.9586.100.4.4.9
477 NAME 'mailGreylisting'
478 DESC 'Whether or not to perform greylisting on email delivery'
479 EQUALITY booleanMatch
480 SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
482 attributetype ( 1.3.6.1.4.1.9586.100.4.4.11
484 DESC 'RBL sites to check at SMTP accept time'
485 EQUALITY caseIgnoreIA5Match
486 SUBSTR caseIgnoreIA5SubstringsMatch
487 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
489 attributetype ( 1.3.6.1.4.1.9586.100.4.4.12
491 DESC 'RHSBL sites to check at SMTP accept time'
492 EQUALITY caseIgnoreIA5Match
493 SUBSTR caseIgnoreIA5SubstringsMatch
494 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
496 attributetype ( 1.3.6.1.4.1.9586.100.4.4.13
498 DESC 'sites to whitelist from additional SMTP accept time checks'
499 EQUALITY caseIgnoreIA5Match
500 SUBSTR caseIgnoreIA5SubstringsMatch
501 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
503 attributetype ( 1.3.6.1.4.1.9586.100.4.4.14
505 DESC 'Token for BATV'
506 EQUALITY caseExactMatch
507 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
509 attributetype ( 1.3.6.1.4.1.9586.100.4.4.15
510 NAME 'mailDefaultOptions'
511 DESC 'Whether or not to use a default set of anti-spam options'
512 EQUALITY booleanMatch
513 SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
515 attributetype ( 1.3.6.1.4.1.9586.100.4.4.16
516 NAME 'mailPreserveSuffixSeparator'
517 DESC 'suffix serparator'
518 EQUALITY caseIgnoreIA5Match
519 SUBSTR caseIgnoreIA5SubstringsMatch
520 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{1} )
522 attributetype ( 1.3.6.1.4.1.9586.100.4.2.38
523 NAME 'mailContentInspectionAction'
524 DESC 'what to do on content inspection hits'
525 EQUALITY caseIgnoreIA5Match
526 SUBSTR caseIgnoreIA5SubstringsMatch
527 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} SINGLE-VALUE )
529 attributetype ( 1.3.6.1.4.1.9586.100.4.2.41
530 NAME ( 'sshdistAuthKeysHost' )
533 attributetype ( 1.3.6.1.4.1.9586.100.4.4.42
535 DESC 'DNS Time To Live value'
536 EQUALITY caseIgnoreIA5Match
537 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
539 # Public object classes
541 objectclass ( 1.3.6.1.4.1.9586.100.4.1.1
543 DESC 'Abstraction of an account with POSIX attributes and UTF8 support'
545 MUST ( cn $ uid $ uidNumber $ gidNumber )
546 MAY ( userPassword $ loginShell $ gecos $ homeDirectory $ description $ mailDisableMessage $ sudoPassword $ webPassword $ voipPassword ) )
548 objectclass ( 1.3.6.1.4.1.9586.100.4.1.2
551 DESC 'attributes used for Debian groups'
552 MUST ( gid $ gidNumber )
553 MAY ( cn $ description $ subGroup $ accountStatus ) )
555 # Experimental objectclasses:
557 objectclass ( 1.3.6.1.4.1.9586.100.4.3.1
558 NAME 'debianDeveloper'
559 DESC 'additional account attributes used by Debian'
561 MUST ( uid $ cn $ sn )
562 MAY ( accountComment $ accountStatus $ activity-from $
563 activity-pgp $ allowedHost $ comment $ countryName $
564 dnsZoneEntry $ emailForward $ icqUin $ ircNick $
565 jabberJID $ keyFingerPrint $ latitude $ longitude $ mn $
566 onVacation $ privateSub $ sshRSAAuthKey $ supplementaryGid $
567 access $ gender $ birthDate $ mailCallout $ mailGreylisting $
568 mailRBL $ mailRHSBL $ mailWhitelist $ VoIP $ mailContentInspectionAction $
569 bATVToken $ mailDefaultOptions $ mailPreserveSuffixSeparator
572 objectclass ( 1.3.6.1.4.1.9586.100.4.3.2
574 DESC 'Internet-connected server associated with Debian'
576 MUST ( host $ hostname )
577 MAY ( c $ access $ admin $ architecture $ bandwidth $ description $ disk $
578 distribution $ l $ machine $ memory $ sponsor $
579 sponsor-admin $ status $ physicalHost $ ipHostNumber $ dnsTTL $
580 sshRSAHostKey $ purpose $ allowedGroups $ exportOptions $ MXRecord $
584 objectclass ( 1.3.6.1.4.1.9586.100.4.3.3
585 NAME 'debianRoleAccount'
586 DESC 'Abstraction of an account with POSIX attributes and UTF8 support'
587 SUP account STRUCTURAL
588 MAY ( emailForward $ supplementaryGid $ allowedHost $ labeledURI $
589 mailCallout $ mailGreylisting $ mailRBL $ mailRHSBL $
590 mailWhitelist $ dnsZoneEntry $ mailContentInspectionAction $
591 bATVToken $ mailDefaultOptions $ sshRSAAuthKey $ mailPreserveSuffixSeparator