aboutsummaryrefslogtreecommitdiff
path: root/content/posts/2004-07-13-ldap-should-be-beaten-shot-twice-then-beaten-again.html
blob: 81e40d64f54de6d2999c8640e34c447d9512b967 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
---
date: "2004-07-13T05:05:04Z"
title: LDAP Should Be Beaten, Shot Twice, then Beaten Again
---

<p>
I'm trying to set up an address book that's accessible from arbitrary
clients.  The logical way to do that is set up an <acronym
title='Lightweight Directory Access Protocol'>LDAP</acronym> server (in
my case, <a href='http://www.openldap.org/'>OpenLDAP</a>), then populate
it with contact information.  That's all fine and good.  I can add
entries with <a
href='http://olivier.sessink.nl/directoryassistant/'>Directory
Assistant</a> and <a href='http://biot.com/gq/'>GQ</a>.  I can even
query the <acronym title='Lightweight Directory Access
Protocol'>LDAP</acronym> server with <a
href='http://www.mozilla.org/products/thunderbird/'>Thunderbird</a> (and
presumably <a
href='http://www.novell.com/products/evolution/'>Evolution</a> as well,
although I haven't tried).  Here's the snag:  I'd like to be able to
store modern attributes, such as <acronym title='Internet Relay
Chat'>IRC</acronym> nicknames, <a href='http://www.aim.com/'><acronym
title='AOL Instant Messenger'>AIM</acronym></a> and <a
href='http://www.icq.com/'><abbr title='I Seek You'>ICQ</abbr></a>
screen names, web sites, etc.  <a
href='http://www.mozilla.org/products/thunderbird/'>Thunderbird</a>
allows you to enter in those attributes, and you can export entries in
<acronym title='Lightweight Data Interchange Format'>LDIF</acronym>
format, but when I try and import them into <a
href='http://www.openldap.org/'>OpenLDAP</a>, it complains about missing
attributes (obviously).  Well, <a
href='http://www.topology.org/linux/ldap.html#server'>this page</a>
talks about the exact same problem.  The author references the <code><a
href='http://bugzilla.mozilla.org/attachment.cgi?id=104858&action=view'>mozillaOrgPerson
schema</a></code> and <code><a
href='http://www.netpress.com/mozilla/ab2ldap_1/mozilla_op20.schema'>mozilla_op20.schema</a></code>,
but when I include those in my <code>slapd.conf</code>, I get the
following error:
</p>

<blockquote>
<code>
/etc/ldap/schema/mozillaorgperson.schema: line 135: AttributeType not found: "nsAIMid"
</code>
</blockquote>

<p>
Huh?  The schema is supposed to be <em>defining</em> attributes, not
referencing them.  I guess I'll keep plugging away.  One other problem:
<a href='http://www.mozilla.org/products/thunderbird/'>Thunderbird</a>
can only <em>query</em> <acronym title='Lightweight Directory Access
Protocol'>LDAP</acronym> servers, not add entries to them.  That means
I'll have to create entries locally, export them as <acronym
title='Lightweight Data Interchange Format'>LDIF</acronym> files, tweak
them slightly for my DN, then import them by hand.  Ugh.  I'd like
something as simple as <a
href='http://olivier.sessink.nl/directoryassistant/'>Directory
Assistant</a> that supports the extra attributes (an extra bonus would
be a console interface; I do believe I might be writing another console
application ;-)).
</p>

<p>
This seems like a simple problem.  I'm <em>sure</em> lots of other
people have tried to do what I'm doing right now.  So where's the simple
solution?  I just want to set up a modern address book that's accessible
via LDAP, and I'd prefer not to have to reinvent the wheel, electricity,
indoor plumbing, and nuclear fusion in the process.  Suggestions?
</p>

<p>
<b>Edit:</b> The grammar police detained me for questioning.
</p>