From: Graham Leggett Date: Thu, 20 Jan 2005 23:34:35 +0000 (+0000) Subject: Clarify the mod_ldap documentation to better explain handling of certificates X-Git-Tag: 2.1.3~122 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=eac000a48c4d5c880ab21945ac4ebaf7029bb37c;p=apache Clarify the mod_ldap documentation to better explain handling of certificates between different LDAP toolkits. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@125860 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/docs/manual/mod/mod_ldap.xml b/docs/manual/mod/mod_ldap.xml index be413596d4..21db7b0e05 100644 --- a/docs/manual/mod/mod_ldap.xml +++ b/docs/manual/mod/mod_ldap.xml @@ -240,8 +240,11 @@ by other LDAP modules
SSL/TLS Certificates

The different LDAP SDKs have widely different methods of setting - and handling both CA and client side certificates. Some of the - differences are described below:

+ and handling both CA and client side certificates.

+ +

If you intend to use SSL or TLS, read this section CAREFULLY so as to + understand the differences between configurations on the different LDAP + toolkits supported.

Netscape/Mozilla/iPlanet SDK

CA certificates are specified within a file called cert7.db. @@ -250,13 +253,14 @@ by other LDAP modules client certificates are required, an optional key3.db file may be specified with an optional password. The secmod file can be specified if required. These files are in the same format as - used by Netscape Communicator / Mozilla web browser. The easiest - way to obtain these files is to grab them from a browser + used by the Netscape Communicator or Mozilla web browsers. The easiest + way to obtain these files is to grab them from your browser installation.

-

Client certificates are specified per connection by referring - to the certificate "nickname", and an optional password may be - specified.

+

Client certificates are specified per connection using the + LDAPTrustedClientCert directive by referring + to the certificate "nickname". An optional password may be + specified to unlock the certificate's private key.

The SDK supports SSL only. An attempt to use STARTTLS will cause an error when an attempt is made to contact the LDAP server at @@ -292,10 +296,10 @@ by other LDAP modules SDK to work correctly. These certificates can be specified as binary DER or Base64 (PEM) encoded files.

-

Client certificates are specified globally rather than per - connection, and so must be specified with the global certificate - option as below. Trying to set client certificates via the - LDAPTrustedClientCert option will cause an error to be thrown +

Note: Client certificates are specified globally rather than per + connection, and so must be specified with the LDAPTrustedGlobalCert + directive as below. Trying to set client certificates via the + LDAPTrustedClientCert directive will cause an error to be thrown when httpd starts up.

The SDK supports both SSL and STARTTLS, set using the @@ -309,6 +313,8 @@ by other LDAP modules # Specify a client certificate file and key
LDAPTrustedGlobalCert CERT_BASE64 /certs/cert1.pem
LDAPTrustedGlobalCert KEY_BASE64 /certs/key1.pem [password]
+ # Do not use this directive, as it will throw an error
+ #LDAPTrustedClientCert CERT_BASE64 /certs/cert1.pem

@@ -369,6 +375,9 @@ by other LDAP modules

Both SSL and TLS are supported by using the ldaps:// URL format, or by using the LDAPTrustedMode directive accordingly.

+

Note: The status of support for client certificates is not yet known + for this toolkit.

+
@@ -467,9 +476,17 @@ Certificate Authority or global client certificates

It specifies the directory path and file name of the trusted CA - certificates and/or client certificates mod_ldap + certificates and/or system wide client certificates mod_ldap should use when establishing an SSL or TLS connection to an LDAP - server. The type specifies the kind of certificate parameter being + server. Note that all certificate information specified using this directive + is applied globally to the entire server installation. Some LDAP toolkits + (notably Novell) require all client certificates to be set globally using + this directive. Most other toolkits require clients certificates to be set + per Directory or per Location using LDAPTrustedClientCert. If you get this + wrong, an error may be logged when an attempt is made to contact the LDAP + server, or the connection may silently fail (See the SSL/TLS certificate + guide above for details). + The type specifies the kind of certificate parameter being set, depending on the LDAP toolkit being used. Supported types are: