< draft-ietf-ldapext-sigops-03.txt   draft-ietf-ldapext-sigops-04.txt >
LDAP Extensions Working Group Bruce Greenblatt LDAP Extensions Working Group Bruce Greenblatt
Internet Draft Pat Richard Internet Draft Pat Richard
<draft-ietf-ldapext-sigops-03.txt> <draft-ietf-ldapext-sigops-04.txt>
Expires in six months Expires in six months
Signed Directory Operations Using S/MIME An LDAP Control and Schema for Holding Operation Signatures
Status of this Memo Status of this Memo
This document is an Internet-Draft. Internet-Drafts are working This document is an Internet-Draft. Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas, and documents of the Internet Engineering Task Force (IETF), its areas, and
its working groups. Note that other groups may also distribute working its working groups. Note that other groups may also distribute working
documents as Internet-Drafts. documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six Internet-Drafts are draft documents valid for a maximum of six
months. Internet-Drafts may be updated, replaced, or made obsolete by months. Internet-Drafts may be updated, replaced, or made obsolete by
skipping to change at page 1, line 40 skipping to change at page 1, line 40
Abstract Abstract
In many environments clients require the ability to validiate the In many environments clients require the ability to validiate the
source and integrity of information provided by the directory. This source and integrity of information provided by the directory. This
document describes an LDAP message control which allows for the document describes an LDAP message control which allows for the
retrieval of digitally signed information. This document defines an LDAP retrieval of digitally signed information. This document defines an LDAP
v3 based mechanism for signing directory operations in order to create a v3 based mechanism for signing directory operations in order to create a
secure journal of changes that have been made to each directory entry. secure journal of changes that have been made to each directory entry.
Both client and server based signatures are supported. An object class Both client and server based signatures are supported. An object class
for subsequent retrieval are 'journal entries' is also defined. This for subsequent retrieval are "journal entries" is also defined. This
document specifies LDAP v3 controls that enable this functionality. It document specifies LDAP v3 controls that enable this functionality. It
also defines an LDAP v3 schema that allows for subsequent browsing of also defines an LDAP v3 schema that allows for subsequent browsing of
the journal information. the journal information.
1. Introduction 1. Introduction
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026.
In many environments clients require the ability to validiate the In many environments clients require the ability to validiate the
source and integrity of information provided by the directory. This source and integrity of information provided by the directory. This
document describes an LDAP message control which allows for the document describes an LDAP message control which allows for the
retrieval of digitally signed information. The perspective of this doc- retrieval of digitally signed information. The perspective of this doc-
ument is that the origin of the information that is stored in LDAP v3 ument is that the origin of the information that is stored in LDAP v3
accessible directories is the LDAP v3 client that creates the informa- accessible directories is the LDAP v3 client that creates the informa-
tion. The source and integrity of the information is guaranteed by tion. The source and integrity of the information is guaranteed by
allowing for the digital signing of the operations that make changes to allowing for the digital signing of the operations that make changes to
entries in the directory. The source and integrity of an individual entries in the directory. The source and integrity of an individual
LDAP connection can be guaranteed by making use of an underlying session LDAP connection can be guaranteed by making use of an underlying session
skipping to change at page 7, line 12 skipping to change at page 7, line 12
the LDAP client is allowed to ignore it. The signature field below the LDAP client is allowed to ignore it. The signature field below
includes the signature of the enitre LDAPResult formatted as an S/MIME includes the signature of the enitre LDAPResult formatted as an S/MIME
pkcs-7/signature object, as defined in [2]. The procedure for creating pkcs-7/signature object, as defined in [2]. The procedure for creating
the signature of the signedResult control is the same as the procedure the signature of the signedResult control is the same as the procedure
for the creation of the signedOperation control. The LDAP control in for the creation of the signedOperation control. The LDAP control in
the LDAP response is (OID = 1.2.840.113549.6.0.2): the LDAP response is (OID = 1.2.840.113549.6.0.2):
SignedResult ::= CHOICE { SignedResult ::= CHOICE {
signature OCTET STRING } signature OCTET STRING }
Do there need to be other kinds of signed results??? 3. Security Considerations and Other Notes
3. Notes
The base OIDs are: The base OIDs are:
rsadsiLdap ::= {1 2 840 113549 6} rsadsiLdap ::= {1 2 840 113549 6}
rsadsiLdapControls ::= {1 2 840 113549 6 0} rsadsiLdapControls ::= {1 2 840 113549 6 0}
rsadsiLdapObjectClasses ::= {1 2 840 113549 6 1} rsadsiLdapObjectClasses ::= {1 2 840 113549 6 1}
rsadsiLdapAttributes ::= {1 2 840 113549 6 2} rsadsiLdapAttributes ::= {1 2 840 113549 6 2}
The complete ASN.1 module for this specification is: The complete ASN.1 module for this specification is:
skipping to change at page 8, line 4 skipping to change at page 7, line 43
signedOperation [1] OCTET STRING } signedOperation [1] OCTET STRING }
DemandSignedResult ::= LDAPSigType DemandSignedResult ::= LDAPSigType
LDAPSigType ::= BOOLEAN LDAPSigType ::= BOOLEAN
SignedResult ::= CHOICE { SignedResult ::= CHOICE {
signature OCTET STRING } signature OCTET STRING }
END END
If any of the controls in this specification are supported by an If any of the controls in this specification are supported by an
LDAP v3 server then that server MUST make available its certificate (if LDAP v3 server then that server MUST make available its certificate (if
any) in the userCertificate attribute of its rootDSE object. The any) in the userCertificate attribute of its rootDSE object. The
UserCertificate attribute is defined in [6], and contains the public key UserCertificate attribute is defined in [6], and contains the public key
of the server that is used in the creation of the various signatures of the server that is used in the creation of the various signatures
defined in this specification. defined in this specification.
It is not the intention of this specification to provide a mecha- It is not the intention of this specification to provide a mecha-
nism that guarantees the origin and integrity of LDAP v3 operations. nism that guarantees the origin and integrity of LDAP v3 operations.
Such a service is best provided by the use of an underlying protocol Such a service is best provided by the use of an underlying protocol
such as TLS [8]. TLS defines additional features such as encryption and such as TLS [8]. TLS defines additional features such as encryption and
compression. This specification does not define support for encrypted compression. This specification does not define support for encrypted
operations. operations.
This draft proposes protocol elements for transmission and storage
of the digital signatures of LDAP operations. Though the LDAP server
may have verified the operation signatures prior to their storage and
subsequent retrieval, it is prudent for LDAP clients to verify the sig-
natures contained in the chained attribute upon their retrieval. The
issuing Certification Authorities of the signer's certificate should
also be consulted in order to determine if the signer's private key has
been compromised or the certificate has been otherwise revoked. Secu-
rity considerations are discussed throughout this draft.
4. References 4. References
[1] RFC 2315 PKCS 7: Cryptographic Message Syntax Version 1-5. B. [1] RFC 2315 PKCS 7: Cryptographic Message Syntax Version 1-5. B.
Kaliski. March 1998. Kaliski. March 1998.
[2] RFC 2311 S/MIME Version 2 Message Specification. S. Dusse, P. [2] RFC 2311 S/MIME Version 2 Message Specification. S. Dusse, P.
Hoffman, B. Ramsdell, L. Lundblade, L. Repka. March 1998. Hoffman, B. Ramsdell, L. Lundblade, L. Repka. March 1998.
[3] RFC 1847 Security Multiparts for MIME: Multipart/Signed and [3] RFC 1847 Security Multiparts for MIME: Multipart/Signed and
Multipart/Encrypted. J. Galvin, S. Murphy, S. Crocker & N. Freed. Octo- Multipart/Encrypted. J. Galvin, S. Murphy, S. Crocker & N. Freed. Octo-
skipping to change at page 9, line 4 skipping to change at page 9, line 6
[6] RFC 2256 A Summary of the X.500(96) User Schema for use with [6] RFC 2256 A Summary of the X.500(96) User Schema for use with
LDAPv3. M. Wahl. December 1997. LDAPv3. M. Wahl. December 1997.
[7] RFC 2255 The LDAP URL Format. T. Howes, M. Smith. December [7] RFC 2255 The LDAP URL Format. T. Howes, M. Smith. December
1997. 1997.
[8] Internet Draft, work in progress, "The TLS Protocol Version [8] Internet Draft, work in progress, "The TLS Protocol Version
1.0", Tim Dierks, Chris Allen., 11/12/1997. 1.0", Tim Dierks, Chris Allen., 11/12/1997.
5. Author's Addresses 5. Author's Addresses
Bruce Greenblatt Bruce Greenblatt
San Jose, CA 95119 San Jose, CA 95119
USA USA
Email: bruceg@innetix.com Email: bgreenblatt@directory-applications.com
Phone: +1-408-224-5349 Phone: +1-408-224-5349
Pat Richard Pat Richard
Xcert Software, Inc. Xcert Software, Inc.
Suite 1001 - 701 W. Georgia Suite 1001 - 701 W. Georgia
Vancouver, BC Vancouver, BC
CANADA V6G 1C9 CANADA V6G 1C9
Email: patr@xcert.com Email: patr@xcert.com
Table of Contents TTaabbllee ooff CCoonntteennttss
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1 Audit Trail Mechanism . . . . . . . . . . . . . . . . . . . . . 2 1.1 Audit Trail Mechanism . . . . . . . . . . . . . . . . . . . . . 2
1.2. Handling the Delete Operation . . . . . . . . . . . . . . . . . 5 1.2. Handling the Delete Operation . . . . . . . . . . . . . . . . . 5
2. Signed Results Mechanism . . . . . . . . . . . . . . . . . . . . 6 2. Signed Results Mechanism . . . . . . . . . . . . . . . . . . . . 6
3. Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3. Security Considerations and Other Notes . . . . . . . . . . . . 7
4. References . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4. References . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5. Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8 5. Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 9
 End of changes. 12 change blocks. 
9 lines changed or deleted 22 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/