DBIS requires a domain object defined in LDAP that contains the DBIS domain name. Each database supported by DBIS has at least one configuration map object located underneath the domain object that describes how to locate the entries in the map. The format of the domain object and the configuration map objects is described in detail in draft-bannister-dbis-mapping. Examples for each database can be found in the IETF draft that describes that database.
The domain object provides the DBIS domain name and may optionally define default TTL settings for the domain to be used by dbis-cachemgr
.
Here is an example:
dn: en=sales.corp,ou=domain-mappings,o=infra objectClass: top objectClass: dbisDomainObject en: sales.corp profileTTL: 900 negativeTTL: 300 description: Sales Workforce
The configuration map entries have a name, which you choose, and which provides a unique DN. The type of database that the configuration map entry relates to is identified by the object class that is assigned to it. Each database has its own object class. The dbisMapDN
attribute identifies the LDAP object under which to search for entries relating to the database, and the dbisMapFilter
attribute provides a simple LDAP filter that will be used in the LDAP search operation to locate the entries. The table below provides the full list of object classes that can be used in a configuration map entry as well as the recommended setting for dbisMapFilter
from the IETF drafts. Note, however, that dbisMapFilter
will need to be modified if you are not using the DBIS schema, for example, if you are using the RFC2307 schema. See [ConfigurationMaps-RFC2307].
Database | Object Class | dbisMapFilter |
---|---|---|
netgroup | dbisNetgroupConfig | objectClass=netgroupObject |
netservice | dbisNetserviceConfig | objectClass=netserviceDescriptor |
passwd | dbisPasswdConfig | objectClass=posixUserAccount |
group | dbisGroupConfig | objectClass=posixGroupAccount |
hosts | dbisHostConfig | objectClass=ipHostObject |
networks | dbisNetworkConfig | objectClass=ipNetworkObject |
protocols | dbisProtocolConfig | objectClass=ipProtocolObject |
rpc | dbisRpcConfig | objectClass=rpcObject |
services | dbisServiceConfig | objectClass=ipServiceObject |
ethers | dbisEtherConfig | objectClass=ieee802Device |
bootparams | dbisBootConfig | objectClass=bootableDevice |
automount | dbisAutomountConfig | objectClass=automountMapObject |
custom | dbisCustomConfig | objectClass=customMapEntry |
All configuration maps are defined using the same set of attributes. Here is an example configuration map entry for the netgroup
database:
dn: cn=netgroup,en=sales.corp,ou=domain-mappings,o=infra objectClass: top objectClass: dbisMapConfig objectClass: dbisNetgroupConfig cn: netgroup dbisMapDN: cn=netgroup,ou=dbis,o=infra dbisMapFilter: objectClass=netgroupObject description: Primary netgroup database
The RDN cn=netgroup
is arbitrary, and netgroup
could be anything.
A database may get its entries from multiple locations. This can be achieved in two ways. Firstly, by providing multiple dbisMapDN
attribute values. Alternatively, by providing multiple dbisMapConfig
objects for the same database. In the latter case, configuration map entries are parsed in dictionary order.
Some databases have special additional attributes that are required in their configuration map entries. These are described below.
passwd
databaseThe passwd
database has an additional attribute dbisMapGecos
that is used to identify which attribute should be used to populate the "gecos" field.
Here is an example:
dn: cn=passwd,en=sales.corp,ou=domain-mappings,o=infra objectClass: top objectClass: dbisMapConfig objectClass: dbisPasswdConfig cn: passwd dbisMapDN: cn=passwd,ou=dbis,o=infra dbisMapFilter: objectClass=posixUserAccount dbisMapGecos: displayName description: Primary passwd database
The passwd
database may also use overlays, configured by the dbisOverlayDN
attribute. See [Overlays].
group
databaseThe group
database may also use overlays, configured by the dbisOverlayDN
attribute. See [Overlays].
custom
databaseThe custom
database has an additional attribute customMapName
that is used to define the name of the custom map.
Here is an example:
dn: cn=cons,en=sales.corp,ou=domain-mappings,o=infra objectClass: top objectClass: dbisMapConfig objectClass: dbisCustomConfig cn: cons customMapName: console dbisMapDN: ou=console,ou=dbis,o=infra dbisMapFilter: objectClass=customMapEntry description: Primary console database (custom map)
Return to [Configuring DBIS] for the next steps in setting up a new installation. This includes setting up advanced features such as [Remapping Rules], [Transformation Rules], [Overlays], [Netgroup Constraints] and [Netservices].
Wiki: ConfigurationMaps-RFC2307
Wiki: Configuring DBIS
Wiki: DBIS and RFC2307 schemas
Wiki: Map Entries
Wiki: Netgroup Constraints
Wiki: Netservices
Wiki: Overlays
Wiki: Remapping Rules
Wiki: Transformation Rules