[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: Applicability Stmt (AS) rescinding "IESG Note" and defining "LDAPv3"
Jeff
I would like to suggest that we do not have an applicability
statement as you are suggesting but rather that we re-issue the
base RFC with bug fixes and omissions that various people have
pointed out over the years. I believe that Mark Wahl is keeping a
note of these. For your convenience, I reproduce below text from
my PKIX ID that is profiling the use of LDAPv3 for PKIs. YOu will
see that there are various omissions in the base LDAPv3
documents that need to be fixed, and I would like to see the RFCs
re-issued with the extra text inserted into them, rather than
publishing your ID that simply removes the notes. What do others
think?
David
Schema Issues (taken from <draft-pkix-ldap-v3-01.txt>)
RFC2587 [16] describes some of the subschema applicable to
LDAPv2 servers, specifically the public key certificate
related attribute types and object classes that MUST or MAY
be supported. RFC2587 is equally applicable to LDAPv3
servers and MUST be supported by them.
RFC2587 does not describe in detail the matching rules that
should be supported by LDAP servers, nor does it describe
how attribute value assertions for each matching rule
should be encoded in filter items (in fact these AVA
encodings are not currently described anywhere).
Finally RFC2587 does not mention attributeCertificates,
since these are a relatively new development.
LDAPv3 allows the subschema supported by a server to be
published in a subschema subentry. Clients following this
profile which support the Search operation containing an
extensible matching rule MAY use the subschemaSubentry
attribute in the root DSE to find the subschemaSubentry,
and MAY use the matchingRule and matchingRuleUse
operational attributes in the subschema subentry in order
to determine whether the server supports the various
matching rules described below. Servers which support
extensible matching SHOULD publish the matching rules they
support in the matchingRule and matchingRuleUse operational
attributes.
X.509(1997) [9] supports both equality and flexible
certificate matching rules by the server, via the
certificateExactMatch and certificateMatch MATCHING-RULEs
respectively. (For example, a client may flexibly search
for certificates with a particular validity time, key
usage, policy or other field.) LDAPv3 servers MUST support
the certificateExactMatch matching rule. Clients MAY
support certificateExactMatch values for equalityMatch
filters. LDAPv3 servers MAY support the certificateMatch
matching rule. If the server does support flexible matching
(either via certificateMatch or some other matching rule),
then the extensibleMatch filter of the Search request MUST
be supported. Clients MAY support the extensibleMatch
filter and one or more of the optional elements of
certificateMatch.
However, neither of the above matching rules are mentioned
in the LDAPv3 standards [13 or 14], and only the equality
matching rule is mentioned in [16], but nowhere is it
defined for LDAP servers. It is expected that future
revisions of the LDAPv3 documents will include these
definitions, which are tentatively proposed below.
( 2.5.13.34 NAME 'certificateExactMatch'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.54 )
The syntax definition is:
( 1.3.6.1.4.1.1466.115.121.1.54 DESC 'Certificate Serial
Number and Issuer' )
Values in this syntax are encoded as an integer, a dollar
($) separator and a string encoding of the distinguished
name of the issuing CA.
The string description of the certificateMatch matching
rule is proposed here as:
( 2.5.13.35 NAME 'certificateMatch'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.55 )
The syntax definition is:
( 1.3.6.1.4.1.1466.115.121.1.55 DESC 'Certificate
Assertion' )
The ASN.1 for certificateAssertion is defined in 12.7.2 of
[9]. The LDAP string encoding of this is t.b.d. (but it
will be similar to userCertificate syntax defined in RFC
1778).
X.509(1997) [9] supports both equality and flexible
matching rules of CRLs by the server, via the
certificateListExactMatch and certificateListMatch MATCHING-
RULEs respectively. LDAPv3 servers MUST (or should it be
MAY?) support the certificateListExactMatch matching rule.
Clients MAY support certificateListExactMatch values for
equalityMatch filters. LDAPv3 servers MAY support the
certificateListMatch matching rule. If the server does
support flexible matching (either via certificateListMatch
or some other matching rule), then the extensibleMatch
filter of the Search request MUST be supported. Clients MAY
support the extensibleMatch filter and one or more of the
optional elements of certificateListMatch.
Neither of the above matching rules are mentioned in the
LDAPv3 standards [13 or 14], and only the
certificateListExactMatch matching rule is mentioned in
[16], but nowhere is it defined for LDAP servers. It is
expected that future revisions of the LDAPv3 documents will
include these definitions, which are tentatively proposed
below.
( 2.5.13.38 NAME 'certificateListExactMatch'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.56 )
The syntax definition is:
( 1.3.6.1.4.1.1466.115.121.1.56 DESC 'Issuer name, time and
distribution point name' )
Values in this syntax are encoded as a string encoding of a
distinguished name, a dollar ($) separator, a string
representation of generalised time, a dollar separator and
an optional string encoding of the distinguished name of
the distribution point. (Note that the latter DN encoding
for a distribution point name is a subset of the allowed
variants, which can be a generalName or an RDN. Should this
simplification be allowed?)
The string description of the certificateListMatch matching
rule is proposed here as:
( 2.5.13.39 NAME 'certificateListMatch'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.57 )
The syntax definition is:
( 1.3.6.1.4.1.1466.115.121.1.57 DESC 'Certificate List
Assertion' )
The ASN.1 for certificateListAssertion is defined in 12.7.6
of [9]. The LDAP string encoding of this is t.b.d.
Editors Notes.
We need to decide whether searching for cross
certificates should be supported by this LDAPv3 profile
or not. If we decide that this should be supported, then
we will need to define the matching rules to be
supported and the string encodings for the assertion
syntaxes (in fact this is not too difficult since they
are similar to certificate matching rules and AVAs).
We need to decide if userSMIMECertificates should also
be supported as part of this profile or not.
LDAPv3 servers MAY store attributeCertificates, and clients
MAY request then to be returned by adding them to the
Search Request AttributeDescriptionList (either explicitly
or implicity via requesting all attributes). LDAPv3 servers
MAY support searching for entries containing specific
attribute certificates, via either the
attributeCertificateExactMatch or attributeCertificateMatch
matching rules. For the convenience of the reader, some of
the subchema definitions to support attribute certificates
are produced below, but it is anticipated that these will
be moved to a subsequent revision of the LDAPv3 standard.
attributeCertificate ATTRIBUTE ::= {
WITH SYNTAX AttributeCertificate
EQUALITY MATCHING RULE attributeCertificateExactMatch
ID joint-iso-ccitt(2) ds(5) attributeType(4)
attributeCertificate(58) }
pmiUser OBJECT-CLASS ::= {
-- a PMI user (i.e., a ?claimant?)
SUBCLASS OF {top}
KIND auxiliary
MAY CONTAIN {attributeCertificate}
ID joint-iso-ccitt(2) ds(5) objectClass(6) pmiUser
(24)}
attributeCertificateExactMatch MATCHING-RULE ::= {
SYNTAX AttributeCertificateExactAssertion
ID joint-iso-ccitt(2) ds(5) mr (13)
attributeCertificateExactMatch (45) }
AttributeCertificateExactAssertion ::= SEQUENCE {
serialNumber CertificateSerialNumber,
issuer IssuerSerial }
attributeCertificateMatch MATCHING-RULE ::= {
SYNTAX AttributeCertificateAssertion
ID joint-iso-ccitt(2) ds(5) mr (13)
attributeCertificateMatch (??) }
AttributeCertificateAssertion ::= SEQUENCE {
subject [0] CHOICE {
baseCertificateID [0]
IssuerSerial,
subjectName [1]
GeneralNames} OPTIONAL,
issuer [1] GeneralNames OPTIONAL,
attCertValidity [2] GeneralizedTime OPTIONAL,
attType [3] SET OF AttributeType
OPTIONAL}
--At least one component of the sequence must be present
The LDAP definitions and syntaxes for the above matching
rules are suggested to be:
( 2.5.13.45 NAME 'attributeCertificateExactMatch'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.58 )
The syntax definition is:
( 1.3.6.1.4.1.1466.115.121.1.58 DESC 'Attribute certificate
serial number and public key issuer and serial number' )
Values in this syntax are encoded as a string encoding of
an integer (the serial number of the attribute
certificate), a dollar ($) separator, a string
representation of the distinguished name of the CA of the
issuer (note this is a subset of the allowed GeneralName),
a dollar separator and a string encoding of an integer (the
serial number of the issuer?s public key certificate).
The LDAP definition of the attributeCertificateMatch
matching rule is proposed here as:
( 2.5.13.?? NAME 'attributeCertificateMatch'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.59 )
The syntax definition is:
( 1.3.6.1.4.1.1466.115.121.1.59 DESC 'Attribute Certificate
Assertion' )
The LDAP string encoding of this is t.b.d.
***************************************************
David Chadwick
IS Institute, University of Salford, Salford M5 4WT
Tel +44 161 295 5351 Fax +44 161 745 8169
Mobile +44 790 167 0359
Email D.W.Chadwick@salford.ac.uk
Home Page http://www.salford.ac.uk/its024/chadwick.htm
Understanding X.500 http://www.salford.ac.uk/its024/X500.htm
X.500/LDAP Seminars http://www.salford.ac.uk/its024/seminars.htm
Entrust key validation string MLJ9-DU5T-HV8J
***************************************************