[Pki-users] Add info to a new OID
Christina Fu
cfu at redhat.com
Thu Jan 23 16:47:33 UTC 2014
Hi Sergio,
I did wonder if what you needed was Subject Alternative Name extension
but since you said it's a "special attribute" I thought you want
something different ;-).
SubjectAlternativeName Extension is easy to apply in Dogtag.
First, here is info regarding SubjectAlternativeName:
https://access.redhat.com/site/documentation/en-US/Red_Hat_Certificate_System/8.1/html-single/Admin_Guide/index.html#Subject_Alternative_Name_Extension_Default
Scroll down a page or two then you will find Table B.21 Subject
Alternative Name extension Default Configuration Parameters.
This is pretty much what you need. I think what you want for "Type" is
"OIDName".
So for example, you would have:
policyset.set1.p06.constraint.class_id=noConstraintImpl
policyset.set1.p06.constraint.name=No Constraint
policyset.set1.p06.default.class_id=subjectAltNameExtDefaultImpl
policyset.set1.p06.default.name=Subject Alternative Name Extension Default
policyset.set1.p06.default.params.subjectAltNameExtCritical=false
policyset.set1.p06.default.params.subjAltNameNumGNs=1
policyset.set1.p06.default.params.subjAltExtType_0=OIDName
policyset.set1.p06.default.params.subjAltExtPattern_0=2.16.76.1.3.3
policyset.set1.p06.default.params.subjAltExtGNEnable_0=true
again, the pattern part you can change it to take it from the input once
it's working. However, unless you are in a controlled environment, it's
better to have a constraint (You can write a plugin to suit your
needs). And unless you have multiple OID's to insert, there is really
no need to take from input.
Regarding Generic Extension, I know it should work. Maybe your value
did not match the constraint. But it's a moot point now since you are
looking for SAN.
hope this helps,
Christina
On 01/23/2014 04:12 AM, Sergio Pereira wrote:
> Hi Christina,
>
> I really appreciate for your response and time. I did try your
> suggestion but with no luck, when enrolling through web form I get the
> message: "Sorry, your request has been rejected. The reason is
> "Request Rejected - {0}".
> Attached is a picture of a real certificate, signed by a Brazilian CA
> and that is what I'm trying to accomplish using DogTag certificate
> system. The OID I'm trying to write to is marked in red and its value
> has some sort of Hex form (that would be the second step to
> be accomplished). One thing I realized is that the OID in question is
> in Subject Alternative Name and not as Generic Extension.
>
> thx,
> sp
>
>
> 2014/1/23 Christina Fu <cfu at redhat.com <mailto:cfu at redhat.com>>
>
> Hi,
>
> If I understand it correctly, you just want the OID to appear in
> the cert? if so, Generic Extension might be what you are looking for:
> https://access.redhat.com/site/documentation/en-US/Red_Hat_Certificate_System/8.1/html-single/Admin_Guide/index.html#Generic_Extension_Default
>
> Here is an example of it:
> policyset.set1.p06.constraint.class_id=extensionConstraintImpl
> policyset.set1.p06.constraint.name
> <http://policyset.set1.p06.constraint.name>=Extension Constraint
> policyset.set1.p06.constraint.params.extCritical=-
> policyset.set1.p06.constraint.params.extOID=2.16.76.1.3.3
> policyset.set1.p06.default.class_id=userExtensionDefaultImpl
> policyset.set1.p06.default.name
> <http://policyset.set1.p06.default.name>=Generic Extension Default
> policyset.set1.p06.default.params.genericExtData=bz
> policyset.set1.p06.default.params.genericExtOID=2.16.76.1.3.3
> policyset.set1.p06.default.params.enericExtCritical=false
>
> In the above example, I just put your country OID in the profile,
> but I imagine you could change it to take it from the input. If
> you do so, you might want to lighten up on the constraint. I
> suggest you try the above hard-coded profile first just to see if
> the cert comes out what you are looking for before adding input in
> the profile.
>
> There is actually a bug in the GenericExtension area in regards to
> setting critical to true. I have yet to check the fix into
> Dogtag. Let me know if you do need that.
>
> BTW, regarding userExtensionDefault, it can only be used if your
> CSR has the wanted extension in the request already, so it's not
> going to help you.
>
> Hope this helps.
> Christina
>
>
> On 01/22/2014 02:41 AM, Sergio Pereira wrote:
>> hi guys,
>>
>> I'm trying to create a certificate profile in a way to have at
>> the end a certificate with a special attributes (supplied by the
>> user through web enrollment form). I'm running dogtag 10.1 on
>> Fedora 20...fresh install. I added a certificate profile using
>> pkiconsole but I'm struggling in how to find the right Policies,
>> Inputs and Outputs for the new profile. The OID I intent to write
>> to it is the 2.16.76.1.3.3 (country specific OID). Here is my
>> profile's config file:
>>
>> auth.instance_id=
>> desc=UserCNPJ
>> enable=false
>> enableBy=admin
>> input.CNPJ.class_id=genericInputImpl
>> input.CNPJ.name <http://input.CNPJ.name>=Generic Input
>> input.CNPJ.params.gi_display_name0=Cadastro Nacional Pessoa Juridica
>> input.CNPJ.params.gi_display_name1=
>> input.CNPJ.params.gi_display_name2=
>> input.CNPJ.params.gi_display_name3=
>> input.CNPJ.params.gi_display_name4=
>> input.CNPJ.params.gi_param_enable0=true
>> input.CNPJ.params.gi_param_enable1=false
>> input.CNPJ.params.gi_param_enable2=false
>> input.CNPJ.params.gi_param_enable3=false
>> input.CNPJ.params.gi_param_enable4=false
>> input.CNPJ.params.gi_param_name0=cnpj
>> input.CNPJ.params.gi_param_name1=
>> input.CNPJ.params.gi_param_name2=
>> input.CNPJ.params.gi_param_name3=
>> input.CNPJ.params.gi_param_name4=
>> input.i1.class_id=keyGenInputImpl
>> input.i1.name <http://input.i1.name>=Key Generation Input
>> input.i2.class_id=subjectNameInputImpl
>> input.i2.name <http://input.i2.name>=Subject Name Input
>> input.i3.class_id=submitterInfoInputImpl
>> input.i3.name <http://input.i3.name>=Submitter Information Input
>> input.list=i1,i2,i3,CNPJ
>> input.params.gi_display_name0=Cadastro Nacional Pessoa Juridica
>> input.params.gi_display_name1=
>> input.params.gi_display_name2=
>> input.params.gi_display_name3=
>> input.params.gi_display_name4=
>> input.params.gi_param_enable0=true
>> input.params.gi_param_enable1=false
>> input.params.gi_param_enable2=false
>> input.params.gi_param_enable3=false
>> input.params.gi_param_enable4=false
>> input.params.gi_param_name0=cnpj
>> input.params.gi_param_name1=
>> input.params.gi_param_name2=
>> input.params.gi_param_name3=
>> input.params.gi_param_name4=
>> lastModified=1390319210315
>> name=UserCNPJ
>> output.list=o1
>> output.o1.class_id=certOutputImpl
>> output.o1.name <http://output.o1.name>=Certificate Output
>> policyset.list=set1
>> policyset.set1.list=p1,p2,p3,p4,p5,p06
>> policyset.set1.p06.constraint.class_id=noConstraintImpl
>> policyset.set1.p06.constraint.name
>> <http://policyset.set1.p06.constraint.name>=No Constraint
>> policyset.set1.p06.default.class_id=userExtensionDefaultImpl
>> policyset.set1.p06.default.name
>> <http://policyset.set1.p06.default.name>=User Supplied Extension
>> Default
>> policyset.set1.p06.default.params.userExtOID=Comment Here...
>> policyset.set1.p1.constraint.class_id=noConstraintImpl
>> policyset.set1.p1.constraint.name
>> <http://policyset.set1.p1.constraint.name>=No Constraint
>> policyset.set1.p1.default.class_id=userSubjectNameDefaultImpl
>> policyset.set1.p1.default.name
>> <http://policyset.set1.p1.default.name>=User Supplied Subject
>> Name Default
>> policyset.set1.p2.constraint.class_id=noConstraintImpl
>> policyset.set1.p2.constraint.name
>> <http://policyset.set1.p2.constraint.name>=No Constraint
>> policyset.set1.p2.default.class_id=validityDefaultImpl
>> policyset.set1.p2.default.name
>> <http://policyset.set1.p2.default.name>=Validity Default
>> policyset.set1.p2.default.params.range=180
>> policyset.set1.p2.default.params.startTime=0
>> policyset.set1.p3.constraint.class_id=noConstraintImpl
>> policyset.set1.p3.constraint.name
>> <http://policyset.set1.p3.constraint.name>=No Constraint
>> policyset.set1.p3.default.class_id=userKeyDefaultImpl
>> policyset.set1.p3.default.name
>> <http://policyset.set1.p3.default.name>=User Supplied Key Default
>> policyset.set1.p3.default.params.keyMaxLength=4096
>> policyset.set1.p3.default.params.keyMinLength=512
>> policyset.set1.p3.default.params.keyType=RSA
>> policyset.set1.p4.constraint.class_id=noConstraintImpl
>> policyset.set1.p4.constraint.name
>> <http://policyset.set1.p4.constraint.name>=No Constraint
>> policyset.set1.p4.default.class_id=signingAlgDefaultImpl
>> policyset.set1.p4.default.name
>> <http://policyset.set1.p4.default.name>=Signing Algorithm Default
>> policyset.set1.p4.default.params.signingAlg=-
>> policyset.set1.p4.default.params.signingAlgsAllowed=SHA1withRSA,SHA256withRSA,SHA512withRSA,MD5withRSA,MD2withRSA,SHA1withEC,SHA256withEC,SHA384withEC,,SHA512withEC
>> policyset.set1.p5.constraint.class_id=noConstraintImpl
>> policyset.set1.p5.constraint.name
>> <http://policyset.set1.p5.constraint.name>=No Constraint
>> policyset.set1.p5.default.class_id=keyUsageExtDefaultImpl
>> policyset.set1.p5.default.name
>> <http://policyset.set1.p5.default.name>=Key Usage Extension Default
>> policyset.set1.p5.default.params.keyUsageCritical=true
>> policyset.set1.p5.default.params.keyUsageCrlSign=true
>> policyset.set1.p5.default.params.keyUsageDataEncipherment=true
>> policyset.set1.p5.default.params.keyUsageDecipherOnly=true
>> policyset.set1.p5.default.params.keyUsageDigitalSignature=true
>> policyset.set1.p5.default.params.keyUsageEncipherOnly=true
>> policyset.set1.p5.default.params.keyUsageKeyAgreement=true
>> policyset.set1.p5.default.params.keyUsageKeyCertSign=true
>> policyset.set1.p5.default.params.keyUsageKeyEncipherment=true
>> policyset.set1.p5.default.params.keyUsageNonRepudiation=true
>> visible=true
>> thx in advance,
>> sergio
>>
>>
>> _______________________________________________
>> Pki-users mailing list
>> Pki-users at redhat.com <mailto:Pki-users at redhat.com>
>> https://www.redhat.com/mailman/listinfo/pki-users
>
>
> _______________________________________________
> Pki-users mailing list
> Pki-users at redhat.com <mailto:Pki-users at redhat.com>
> https://www.redhat.com/mailman/listinfo/pki-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/pki-users/attachments/20140123/e87649d7/attachment.htm>
More information about the Pki-users
mailing list