[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: x500UniqueIdentifier



Howard Chu wrote:
Juan Gonzalez wrote:
Hi, I’m trying to insert userCertificate values containing
x500UniqueIdentifiers. When the value appears at the SubjectNames, it inserts
correctly.

By this I assume there is a validation for the field formatting.

When I have a x500UniqueIdentifier at the IssuerNames it fails to insert.

Is there a specific place where valid attributes and syntaxes for IssuerNames
should be declared?

Certificate name validation just uses whatever schema is already loaded into
slapd, and x500UniqueIdentifier is in the core schema file so it should
already be present in your configuration.

However, subjectNames aren't fully parsed during certificate validation, while
issuerNames are. So e.g. a syntax error in subjectName will not be detected at
insert time.

Can you post an example certificate? I have a feeling that our DN validator
here may not be handling the syntax for x500UniqueIdentifier but would like to
double check.

I should also warn you, x500UniqueIdentifier has a bitstring syntax, and this syntax is extremely clumsy in LDAP. Judging from the certificate you sent me, you're trying to use this attribute as a regular octetstring. The two are quite different. E.g. if you have a value in the certificate "x500UniqueIdentifier=ABC" in LDAP this is represented as
"x500UniqueIdentifier='010000010100001001000011'B"

I would strongly encourage you to use some other attribute other than x500UniqueIdentifier, and to avoid any attributes that use bitstring syntax as this one does.

The bitstring syntax is intended for data items that are actually an arbitrary string of bits, in particular, a string that may not be aligned on octet boundaries. If the only data you're storing is actually sequences of octets, this is a very inefficient choice of syntax.

--
  -- Howard Chu
  CTO, Symas Corp.           http://www.symas.com
  Director, Highland Sun     http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP  http://www.openldap.org/project/