]> git.sur5r.net Git - openldap/blob - contrib/slapd-modules/nssov/README
ITS#5801
[openldap] / contrib / slapd-modules / nssov / README
1 Copyright 2008 Howard Chu, Symas Corp. All rights reserved.
2
3 Redistribution and use in source and binary forms, with or without
4 modification, are permitted only as authorized by the OpenLDAP
5 Public License.
6
7 A copy of this license is available in the file LICENSE in the
8 top-level directory of the distribution or, alternatively, at
9 <http://www.OpenLDAP.org/license.html>.
10
11 This directory contains a slapd overlay, nssov, that handles
12 NSS lookup requests through a local Unix Domain socket. It uses the
13 same IPC protocol as Arthur de Jong's nss-ldapd, and a complete
14 copy of the nss-ldapd source is included here.
15
16 To use this code, you will need the client-side stub library from
17 nss-ldapd (which resides in nss-ldapd/nss). You will not need the
18 nslcd daemon; this overlay replaces that part. You should already
19 be familiar with the RFC2307 and RFC2307bis schema to use this
20 overlay. See the nss-ldapd/README for more information on the
21 schema and which features are supported.
22
23 To use the overlay, add:
24
25         include <path to>nis.schema
26
27         moduleload <path to>nssov.so
28         ...
29
30         database hdb
31         ...
32         overlay nssov
33
34 to your slapd configuration file. (The nis.schema file contains
35 the original RFC2307 schema. Some modifications will be needed to
36 use RFC2307bis.)
37
38 The overlay may be configured with Service Search Descriptors (SSDs)
39 for each NSS service that will be used. SSDs are configured using
40
41         nssov-svc <service> <url>
42
43 where the <service> may be one of
44         alias
45         ether
46         group
47         host
48         netgroup
49         network
50         passwd
51         protocol
52         rpc
53         service
54         shadow
55
56 and the <url> must be of the form
57         ldap:///[<basedn>][??[<scope>][?<filter>]]
58
59 The <basedn> will default to the first suffix of the current database.
60 The <scope> defaults to "subtree". The default <filter> depends on which
61 service is being used.
62
63 If the local database is actually a proxy to a foreign LDAP server, some
64 mapping of schema may be needed. Some simple attribute substitutions may
65 be performed using
66
67         nssov-map <service> <orig> <new>
68
69 See the nss-ldapd/README for the original attribute names used in this code.
70
71 The overlay also supports dynamic configuration in cn=config. The layout
72 of the config entry is
73
74         dn: olcOverlay={0}nssov,ocDatabase={1}hdb,cn=config
75         objectClass: olcOverlayConfig
76         objectClass: olcNssOvConfig
77         olcOverlay: {0}nssov
78         olcNssSvc: passwd ldap:///ou=users,dc=example,dc=com??one
79         olcNssMap: passwd uid accountName
80
81 which enables the passwd service, and uses the accountName attribute to
82 fetch what is usually retrieved from the uid attribute.