Adding a group membership . .
. . . . . 400 Removing a
group membership from an entry
401
Editing a memberURL in a dynamic
group . . . 401 Roles . . .
. . . . . . .
. . . . . . 402
Chapter 20. Managing search limit groups . . . . . . . . . . . . .
. 403 Creating a search limit group .
. . . . . . .
403
Using Web Administration: . . .
. . . . . 403
Modifying a search limit group .
. . . . . . 405
Using Web Administration: . . .
. . . . . 405
Copying a search limit group .
. . . . . . . 406
Using
Server
Administration:
Chapter 21. Managing a proxy authorization group. . . . . . . . .
407 Creating
a
proxy
authorization
group
Using Server Administration: . .
. . . . . 409
Copying a proxy authorization group
. . . . . 409
Using Server Administration: . .
. . . . . 409
Removing the
Chapter 22. Realms, templates, users, and groups . . . . . . . . .
. . . 413 Creating
a
realm
group. . . . . . .
. . . . . . . . .
414
Creating groups . . . . .
. . . . . . .
417
Managing realms . . . .
. . . . . . . .
418
Removing a realm . . . .
. . . . . . . 419
Editing ACLs on the realm . .
. . . . . . 419
Managing templates . . . . .
. . . . . . 419
Copying a user . . . . . .
. . . . . . 423
Removing a user . . . .
. . . . . . .
423
Appendix A. Error codes . . . . . . 427
Appendix B. Object Identifiers (OIDs) and attributes in the root
DSE . . . . 433 Attributes in the root
DSE . . . . . . .
. . 433
OIDs for supported and enabled
capabilities . . . 435
OIDs for ACI mechanisms . . .
. . . . . . 438 OIDs
for extended operations . . .
. . . . . 438
OIDs for controls . . .
. . . . . . . .
. 440
Appendix C. LDAP data interchange format (LDIF) . . . . . . . . . .
. 443 LDIF example . . . .
. . . . . . . .
. 443
Version 1 LDIF support . . .
. . . . . . .
444
Version 1 LDIF examples . . .
. . . . . . 444 IANA
character sets supported by
platform . . . 445
Appendix D. ASCII characters from 33 to 126. . . . . . . . . . . .
. . . 449
Appendix E. IPv6 support . . . . . . 451
Appendix F. Simple Network Management Protocol agent . . . .
. 453 Logging
. . .
.
.
.
.
.
.
.
.
.
.
.
for
using
Active
Directory
synchronization
460
use an SSL connection to Active
Directory . . . . 465
Appendix H. Password policy operational attributes . . . . . . . .
469 Password
policy
queries
accounts . . . . . . .
. . . . . . . .
470
Forcing an add or update for
an entry . . . . .
472
Appendix I. Required attribute definitions for IBM Tivoli Directory
Server version 6.0 and above . . . . 475
Appendix J. Synchronizing two-way cryptography between server
instances . . . . . . . . . . . . . 513
Appendix K. Filtered ACLs and non-filtered ACLs – sample LDIF file
. 515
Appendix L. Configuration schema object classes and attributes for
IBM Tivoli Directory Server version 6.0 and above. . . . . . . . .
. . . . . . 523 Configuration object classes .
. . . . . . .
523
Configuration attributes . . . .
. . . . . . 528
Dynamically-changed attributes . . .
. . . 563
Appendix M. IBM Tivoli Directory Server backup and restore . . . .
. 567 Introduction . . . . .
. . . . . . . .
. 567
Tivoli Directory Server v6.1
directory schema and
database definitions . . . .
. . . . . . .
567
Tivoli Directory
LDAP . . . . . . .
. . . . . . . . . 570
Replication considerations . . .
. . . . . 571
Appendix N. Audit format . . . . . . 585 Audit format
for server and admin daemon
audits 585
Auditing server events . . . .
. . . . . 587
Appendix P. Setting up SSL security – SSL scenarios . . . . .
. . . . . . 591 Using
HTTPS
for
the
embedded
version
of
Setting up an SSL connection
between a client and
server . . . . . . .
. . . . . . . .
. 598
Glossary . . . . . . . . . . . . . 609 Glossary . .
. . . . . . .
. . . . . . 609
About this book
IBM® Tivoli® Directory Server is the
IBM implementation of Lightweight
Directory
Access Protocol for supported Windows®,
AIX®, Linux® (xSeries®, zSeries®,
pSeries®, and iSeries™), Solaris,
and Hewlett-Packard UNIX® (HP-UX)
operating
systems.
IBM Tivoli Directory Server version
6.1 Administration Guide describes
how to
perform administrator tasks through
the Web Administration Tool and
the
command line.
Intended audience for this book
This book is for
administrators of IBM Tivoli
Directory Server version 6.1.
Readers need to know how to
use the operating system on
which IBM Tivoli
Directory Server will be
installed.
Publications
This section lists publications in
the IBM Tivoli Directory Server
version 6.1 library
and related documents. The section
also describes how to access
Tivoli publications
online and how to order Tivoli
publications.
IBM Tivoli Directory Server version
6.1 library
The following documents are available
in the IBM Tivoli Directory
Server version
6.1 library:
v IBM Tivoli Directory Server
Version 6.1 What's New for
This Release, SC23-6539-00
Provides information about the new
features in the IBM Tivoli
Directory Server
Version 6.1 release.
v IBM Tivoli Directory Server
Version 6.1 Quick Start Guide,
GI11-8172-00
Provides help for getting started
with IBM Tivoli Directory Server
6.1. Includes a
short product description and
architecture diagram, as well as
a pointer to the
product Information Center and
installation instructions.
v IBM Tivoli Directory Server
Version 6.1 System Requirements,
SC23-7835-00
Contains the minimum hardware and
software requirements for installing
and
using IBM Tivoli Directory Server
6.1 and its related software.
Also lists the
supported versions of corequisite
products such as DB2® and
GSKit.
v IBM Tivoli Directory Server
Version 6.1 Installation and
Configuration Guide,
GC32-1560-00
Tivoli Directory Server. Includes
information about upgrading from a
previous
version of IBM Tivoli
Directory Server.
v IBM Tivoli Directory Server
Version 6.1 Administration Guide,
GC32-1564-00
Contains instructions for performing
administrator tasks through the
Web
Administration Tool and the command
line.
v IBM Tivoli Directory Server
Version 6.1 Command Reference,
SC23-7834-00
Describes the syntax and usage
of the command-line utilities
included with IBM
Tivoli Directory Server.
v IBM Tivoli Directory Server
Version 6.1 Server Plug-ins Reference,
GC32-1565-00
Contains information about writing
server plug-ins.
v IBM Tivoli Directory Server
Version 6.1 Programming Reference,
SC23-7836-00
Contains information about writing
Lightweight Directory Access Protocol
(LDAP) client applications in C
and Java™.
v IBM Tivoli Directory Server
Version 6.1 Performance Tuning and
Capacity Planning
Guide, SC23-7836-00
Contains information about tuning the
directory server for better
performance.
Describes disk requirements and other
hardware needs for directories
of different sizes and with
various read and write rates.
Describes known working
scenarios for each of these
levels of directory and the
disk and memory used;
also suggests rough rules of
thumb.
v IBM Tivoli Directory Server
Version 6.1 Problem Determination Guide,
GC32-1568-00
Contains information about possible
problems and corrective actions that
can be
tried before contacting IBM
Software Support.
v IBM Tivoli Directory Server
Version 6.1 Messages Guide,
GC32-1567-00
Contains a list of all
informational, warning, and error
messages associated with
IBM Tivoli Directory Server
6.1.
v IBM Tivoli Directory Server
Version 6.1 White Pages,
SC23-7837-00
Describes the Directory White Pages
application, which is provided with
IBM
Tivoli Directory Server 6.1.
Contains information about installing,
configuring,
and using the application for
both administrators and users.
Related publications
The following documents also provide
useful information:
v Java Naming and Directory
Interface™ 1.2.1 Specification on the
Sun Microsystems
Web site at
http://java.sun.com/products/jndi/1.2/javadoc/index.html.
IBM Tivoli Directory Server Version
6.1 uses the Java Naming
and Directory
Interface (JNDI) client from Sun
Microsystems. See this document
for
information about the JNDI
client.
Accessing terminology online
The Tivoli Software Glossary
includes definitions for many
of the technical terms
related to Tivoli software. The
Tivoli Software Glossary is
available at the following
Tivoli software library Web
site:
http://publib.boulder.ibm.com/tividd/glossary/tivoliglossarymst.htm
The IBM Terminology Web site
consolidates the terminology from IBM
product
libraries in one convenient location.
You can access the Terminology Web
site at the
following Web address:
Accessing publications online
IBM posts publications for this
and all other Tivoli products,
as they become
available and whenever they are
updated, to the Tivoli Information
Center Web
site at
http://publib.boulder.ibm.com/tividd/td/link/tdprodlist.html.
Tivoli
product
manuals. Click the
letter that matches the first
letter of your product name
to access your product
x Administration Guide
and attributes in the directory.
An ACL lists what type of
access each
user or a group of users
is allowed or denied. To make
ACLs shorter
and more manageable, users with
the same access rights are
often put
into groups or the ACLs are
filtered. The directory administrator can
manage access control by
specifying the access rights to
objects for
individual users or groups. Users
can perform operations under
alternate access rights by
using proxied authorization. For
proxied
authorization, the user assumes the
proxied identity and the ACL
restrictions for the proxied
identity. For more information,
see
Chapter 18, “Access control lists,”
on page 367.
Auditing
The IBM Tivoli Directory Server can
perform auditing of
security-relevant events, such as
user authentication and modification
to
the directory tree. The audit
function provides a means for
accountability by generating audit
records containing the time,
user
identity, and additional information
about the operation. The
directory
administrator manages the behavior
of the audit function, such
as
selection of auditable events,
as well as audit review and
clearing of audit files. For
more information , see “Enabling
the audit log and
modifying audit log settings” on
page 318.
Security roles
Primary directory administrator
account for the LDAP server. The
Primary directory
administrator has full rights to
manage the LDAP server. The
Primary directory administrator is
created during product
installation and configuration. The
Primary directory
administrator consists of a
user ID and a password
and
predefined authorization to manipulate
the entire directory. The
Primary directory administrator creates
the end user security
role. This is an LDAP entry
with a specific distinguished
name
(DN), user password, and other
attributes that represent the
particular end user. The Primary
directory administrator also
defines the level of
authorization the end user will
have over
entries.
assigned a subset of
administrative privileges. The
administrative group is a way
for the directory administrator
to
delegate a limited set of
administrative tasks to one or
more
individual user accounts. Server
administrative group members
are explicitly assigned various roles
that define the tasks that
a
group member is authorized to
perform. These administrative
roles include such specialized roles
as Password Administrator
and Server Start/Stop Administrator.
For more information, see
“Creating the administrative group”
on page 174.
Global administrative group members
The global administrative group is
a way for the directory
administrator to delegate administrative
rights in a distributed
environment to the database
backend. Global administrative
group members are users that
have been assigned the same
set
6 Administration Guide
accessing entries in the database
backend. Global administrative
group members have complete access
to the directory server
backend. Global administrative group
members do not have
access to the audit log and
thus the audit log can be
used by
local administrators to monitor
global administrative group
member activity.
The global administrative group
members have no privileges or
access rights to any data or
operations that are related to
the
configuration settings of the
directory server. This is
commonly
called the configuration backend.
All global administrative group
members have the same set
of privileges.
LDAP user
LDAP users are users whose
privileges are determined by
ACLs.
Each LDAP user is identified
with an LDAP entry containing
the
authentication and authorization
information for that end user.
The authentication and authorization
information might also
allow the end user to query
and update other entries.
Depending on the type of
authentication mechanism used, after
the end user ID and password
are validated, the end user can
access any of the attributes
of any entry to which
that end user
has permissions.
Master server DN
The master server DN is a
role used by replication that
can
update the entries under a
replica’s or a forwarding
replica’s
replication context to which the
DN is defined as a master
server
DN. The master server DN can
create a replication context
entry
on a replica or forwarding
replica if the DN is
defined as the
master server DN to that
specific replication context or as
a
general master server DN.
By sending a AES bind
control, a master server DN can
send
AES encrypted data to a
replica.
The following are some important
points about the master server
DN:
– There can be several
master server DNs defined in a
server’s
configuration file. There is an
ibm-slapdReplication object that
can contain a default or
general ibm-slapdMasterDN, and
there can be multiple
ibm-slapdSupplier objects, each
defining
an ibm-slapdMasterDN for a specific
replication context (that
is, limited to a specific
subtree). The administration password
policy applies to them all.
– Any of those master
server DNs can bind to
the directory.
– Any of those master
server DNs have access to
update the
ibm-slapdSuffix attribute of the
entry
cn=Directory,
cn=RDBM
cn=schemas, cn=Configuration
in a server’s configuration file.
A master server DN does
not
have read or write access to
any other entries in the
configuration file.
– No master server DN has
access to any other part
of the
configuration file.
Chapter 2.
– Only the general master
server DN or the master server
DN
for the cn=IBMpolicies context can
make updates to the
schema.
– The master server DN for
a specific context has full read
and
write access to all entries
within that context.
– The general master server DN
has full read and write
access
to all entries within all
contexts.
Password
policy
The password policy feature provided
by the IBM Tivoli Directory
Server allows the administrator to
define the policy used for
administrator and user passwords. The
administrator places restrictions
on passwords by specifying
rules for syntax, validation, and
lockout in
the password policy. The
administrator password policy configuration
is
stored in the configuration
backend and can be
modified only by the
root administrator. The user password
policy configuration is stored
within the LDAP tree and can
be modified by the root
administrator or
a member of the administrative
group. The attribute values can
be
changed only when binding as
administrator to the IBM Tivoli
Directory
Server. TDS provides three types
of password policies: individual,
group,
and global password policies. For
more information, see “Setting
password policy” on page 148.
Password encryption
IBM Directory enables you to
prevent unauthorized access to
user
passwords.
The administrator can configure the
server to encrypt userPassword
attribute values in either a
one-way encrypting format or a
two-way
encrypting format.
– Salted SHA-1
After the server is configured,
any new passwords (for new
users) or
modified passwords (for existing
users) are encrypted before
they are
stored in the directory database.
For applications that require
retrieval of clear passwords,
such as
middle-tier authentication agents, the
directory administrator needs to
configure the server to perform
either a two-way encrypting or
no
encryption on user passwords.
– AES
When you configure the server
using Web Administration, you can
select
one of the following encryption
options:
None No encryption. Passwords are
stored in the clear text
format.
crypt Passwords are encrypted
by the UNIX crypt
encrypting
algorithm before they are
stored in the directory.
8 Administration Guide
MD5 Passwords are encrypted by
the MD5 Message Digest
algorithm
before they are stored in
the directory.
SHA-1
before they are stored in
the directory.
Salted SHA-1
AES128
Passwords are encrypted by the
AES128 algorithm before they
are stored in the directory and
are retrieved as part of an
entry
in the original clear format.
AES192
Passwords are encrypted by the
AES192 algorithm before they
are stored in the directory and
are retrieved as part of an
entry
in the original clear format.
AES256
Passwords are encrypted by the
AES256 algorithm before they
are stored in the directory and
are retrieved as part of an
entry
in the original clear format.
The default option is AES256.
A change is registered in a
password
encryption directive of the
server configuration file:
ibm-SlapdPwEncryption: AES256
<instance_directory>\etc\ibmslapd.conf
Notes:
1. If the UNIX crypt
method is used, only the first
8 characters are
effective.
2. A one-way encrypted password
can be used for password
matching
but it cannot be
decrypted. During user login, the
login password is
encrypted and compared with the
stored version for matching
verification.
v Change log – Records changes
made to the LDAP data and
are logged in a
separate database in the LDAP
server to support meta-directories or
client
queries to monitor directory
updates.
v Dynamic configuration – Changes
using LDAP APIs provides the
capability to
bind to a directory and
issue a single extended operation
along with any data
that makes up the extended
operation value. It supports the
standard host, port,
SSL, and authentication options used
by all of the LDAP
client utilities. In
addition, a set of options is
defined to specify the
operation to be performed
and
the arguments for each extended
operation.
v Web Administration Tool – A
Graphical User Interface (GUI) that
can be used to
administer and configure the IBM
Directory. The administration and
configuration functions enable the
administrator to:
– Perform the initial setup
of the directory
– Change configuration parameters and
options
– Manage the daily operations
of the directory, such as
adding or editing
objects, for example, object classes,
attributes, and entries.
v Proxy server – A directory
proxy server sits at the
front-end of a distributed
directory and provides efficient
routing of user requests
thereby improving
performance in certain situations,
and providing a unified directory
view to the
client. It can also be
used at the front-end of
a server cluster for providing
fail
over and load balancing.
v Administration daemon (idsdiradm) –
Enables remote management of an
instance of the IBM Tivoli
Directory Server. It must be
installed on the machine
where the IBM Tivoli Directory
Server is installed and must
be running
continuously.
v Configuration only mode –
Gives an administrator remote access
to the server
even when errors are encountered
during startup. The server does
not depend
on the successful initialization
of the database back end.
An administrator can
use an LDAP protocol to query
and update the configuration for
the server.
v Attribute uniqueness controls –
Can be configured to ensure
that specified
attributes always have unique values
within a directory on a single
directory
server.
v Language tags – Enables the
directory to associate natural
language codes with
values held in a directory and
enables clients to query the
directory for values
that meet certain natural language
requirements.
v Sorting on searches – Sorts
the entries found by the
search using the first 240
bytes of the specified
attribute values.
v Paged results – Provides
paging capabilities for LDAP clients
that want to
receive just a subset of
search results (a page) instead
of the entire list.
v Transactions – Enable an
application to group a set
of entry updates together in
one transaction.
v Multiple instances – Enables
a user to have more than
one directory instance on
a server.
v Referrals – Support for LDAP
referrals, allowing directories to
be distributed
across multiple LDAP servers where
each single server may contain
only a
subset of the whole directory
data.
v Attribute encryption- Enables
local administrative group members
who are
assigned DirDataAdmin and SchemaAdmin roles
to specify attributes that are
to
be encrypted in the directory
database using a subset of
the encryption schemes
supported for password information.
For more information, see
“Encrypted
Attributes” on page 51
v Pass-through authentication- A
mechanism using which if a
client attempts to
bind to a directory server
and if the user credential is
not available locally, then
the server attempts to verify
the credential from another external
directory
server or a pass-through server
on behalf of the
client. For more information,
see
“Pass-through authentication” on page
168.
v SNMP for server management-
The SNMP agent can be
used with the IBM
Tivoli Directory Integrator (TDI)
assembly line to monitor and
report the
performance and wellness information
of the directory server.
v Active directory synchronization- A
tool for synchronizing users and
groups
between an existing Microsoft®
Active Directory and an IBM Tivoli
Directory
Server 6.1 directory.
Chapter 3. Distinguished names
(DNs)
Every entry in the directory
has a distinguished name (DN). The
DN is the name
that uniquely identifies an entry
in the directory. A DN is
made up of attribute=value
pairs, separated by commas, for
example:
cn=Ben Gray,ou=editing,o=New York
Times,c=US
cn=Lucille
cn=Tom Brown,ou=reporting,o=New York
Times,c=US
Any of the attributes defined
in the directory schema, other
than system or
restricted attributes, may be
used to make up a DN. The
order of the component
attribute value pairs is important.
The DN contains one component
for each level
of the directory hierarchy from
the root down to the
level where the entry resides.
LDAP DNs begin with the
most specific attribute (usually some
sort of name), and
continue with progressively broader
attributes, often ending with a
country
attribute. The first component
of the DN is referred to
as the Relative
Distinguished Name (RDN). It
identifies an entry distinctly from
any other entries
that have the same parent. In
the examples above, the RDN
″cn=Ben Gray″ separates the first
entry from the second entry,
(with RDN ″cn=Lucille White″).
These two example DNs are
otherwise equivalent. The attribute:value
pair making
up the RDN for an entry
must also be present in
the entry. (This is not true of
the
other components of the
DN.)
Distinguished name syntax
The Distinguished Name (DN) syntax
supported by this server is
based on RFC
2253. The Backus-Naur Form (BNF)
syntax is defined as follows:
<name> ::= <name-component> (
<spaced-separator> )
| <name-component> <spaced-separator>
<name>
<keychar> ::= letters, numbers,
and space
<oid> ::= <digitstring> |
<digitstring> "." <oid>
<hex>
<hexchar> ::= 0-9, a-f,
A-F
A semicolon (;) character can
be used to separate RDNs in
a distinguished name,
although the comma (,) character
is the typical notation.
White-space characters (spaces) might
be present on either side
of the comma or
semicolon. The white-space characters
are ignored, and the semicolon is
replaced
with a comma.
In addition, space (’ ’ ASCII
32) characters may be present
either before or after a
’+’ or ’=’. These space
characters are ignored when
parsing.
A value may be surrounded
by double quotation (’″’ ACSII
34) characters, which
are not part of the
value. Inside the quoted value,
the following characters can
occur without being interpreted
as escape characters:
v A space or ″#″ character
occurring at the beginning
of the string
v A space character occurring
at the end of the
string
v One of the characters
″’″, ″=″, ″+″, ″\″, ″<″,
″>″, or ″;″
Alternatively, a single character to
be escaped may be
prefixed by a backslash (’\’
ASCII 92). This method can
be used to escape any
of the characters listed
previously and the double quotation
marks (’″’ ASCII 34) character.
This notation is designed to
be convenient for common forms
of names. The
following example is a distinguished
name written using this notation.
First is a
name containing three components. The
first of the components is
a multivalued
RDN. A multivalued RDN contains
more than one attribute:value pair
and can be
used to distinctly identify a
specific entry in cases where
a simple CN value might
be ambiguous:
DN escaping rules
A DN can contain special
characters. These characters are
, (comma), = (equals), +
(plus),
“” (quotation marks).
To escape these special characters or
other characters in an attribute
value in a DN
string, use any the following
methods:
v If a character to
be escaped is one of
special characters, precede it
by a backslash
(’\’ ASCII 92). This example
shows a method of escaping
a comma in an
organization name:
This is the preferred method.
v Otherwise replace the character
to be escaped by a
backslash and two hex
digits,
which form a single byte
in the code of the character.
The code of the
character
must be in UTF-8 code
set.
12 Administration Guide
CN=L. Eagle,O=Sue\2C Grabbit and
Runn,C=GB
v Surround the entire attribute
value by “” (quotation marks)
(ASCII 34) that are
not part of the value.
Between the quotation character pair,
all characters are
taken as is, except for the
\ (backslash). The \ (backslash) can
be used to escape
a backslash (ASCII 92) or
quotation marks (ASCII 34), any
of the special
characters previously mentioned, or
hex pairs as in method 2.
For example, to
escape the quotation marks in
cn=xyz"qrs"abc, it becomes
cn=xyz\"qrs\"abc or
to escape a \:
"you need to escape a single
backslash this way \\"
Another example, "\Zoo" is illegal,
because ’Z’ cannot be
escaped in this context.
On the server end, when a
DN is received in this form,
the server reformats the
DN using escape mechanisms number
1 and 2 for internal
processing.
Enhanced DN processing
A composite RDN of a DN
may consist of multiple
components connected by the
‘+’ operators. The server enhances
the support for searches on
entries that have
such a DN. A composite RDN can
be specified in any
order as the base for
a
search operation.
The server accepts DN normalization
extended operations. DN normalization
extended operations normalize DNs
using the server schema. This
extended
operation might be useful for
applications that use DNs. See
the IBM Tivoli
Directory Server Version 6.1
C-client Programming Reference for
more information.
Chapter 3.
Chapter 4. Directory administration
daemon
The directory administration daemon
(idsdiradm) enables remote management
of an instance of the
IBM Tivoli Directory Server. It
must be installed on the
machine
where the IBM Tivoli Directory
Server is installed and must
be running
continuously. The directory administration
daemon accepts requests by way
of LDAP extended operations and
supports starting, stopping, restarting,
and status
monitoring of the IBM Tivoli
Directory Server.
The directory administration daemon
does not support any access to
the
configuration file or the
configuration backend. However, it
supports dynamic
update requests. By supporting
dynamic update requests, the server
ensures that
its in memory configuration remains
in sync with the server’s
configuration. For
instance, if an update is
made to the configuration file
that impacts both