Sideway from Sideway
Draft for Information Only


Request Object
 Request.ClientCertificate Collection

Request Object

Another function of Request object is the retrieving of HTTP client certificate from the client.

Request.ClientCertificate Collection

Request.ClientCertificate Collection retrieves the field values of the client certificate which is sent in the HTTP request.


Request.ClientCertificate( Key[Subfield] )

 Or in an ASP file. Imply

<% Request.ClientCertificate( Key[Subfield] ) %>



The parameter "Key" is the name of the certification field to be retrieved. The data type of "Key" is string and is enclosed by quotation marks (" "). The possible certification field of Key are

Value Description
Certificate A string containing the binary stream of the entire certificate content in ASN.1 format. Useful for discovering the special SubFields are present but are not listed below.
Flags A set of flags providing additional client certificate information. If Flags is set to1, a client certificate is present. If flags is set to 2, the last certificate in this chain is from an unknown issuer.
Issuer A string containing a list of subfield values which containing information about the issuer of the certificate. If this value is specified without a SubField, the ClientCertificate collection returns a comma-separated list of subfields. For example, C=US, O=Versign, and so on.
SerialNumber A string containing the certification serial number as an ASCII representation of hexadecimal bytes separated by hyphens (-). For example, 04-67-F3-02.
Subject A string containing a list of subfield values. The subfield values contain information about the subject of the certificate. If this value is specified without a Subfield, the ClientCertificate collection returns a comma-separated list of subfields. For example, C=US, O=Msft, and so on.
ValidFrom A date specifying when the certificate becomes valid. This date follows VBScript format and varies with international settings. For example, in the United States, 9/22/90 11:59:59 P.M.. The year value is displayed as a four-digit number.
ValidUntil A date specifying when the certificate expires. The year value is displayed as a four-digit number.


The optional parameter "SubField" is used to retrieve an individual field in either the Subject or Issuer Keys. The parameter "SubField" is added to the Key parameter as a suffix. For example, Issuer) or SubjectCN.. The possible values of some common SubField values are

Variable Name Description
C To specify the name of the country/region of origin.
CN To specify the common name of the user. (This subfield is only used with the Subject key.)
GN To specify a given name
I To specify a set of initials
L To specify a locality
O To specify the company or organization name
OU To specify the name of the organizational unit
S To specify a state or province
T To specify the title of the person or organization


The ClientCertificate collection holds fields of keys and values from a security certificate that the client browser passes to the Web Server. These field are specified in the X.509 version 3 standard for public key certificates. Because X.509 is not an offical stantard, there are differences among certificate obtained from certification authorities.

In order to populate the fields of the ClientCertificate collection, both the Web server and the client browser must support the SSL3.0/PCT1.0 protocol. The Web site must have secure sockets layer (SSL) enabled and request client certificates. After SSL is enabled, the URL of the Web site will start with "https://" instead of "http://". The client browser must be capable of sending a certificate. If no certificate is sent, the ClientCertificate collection returns EMPTY.

The Web server must be configured to request client certificates.

Beginning with IIS 6.0, IIS is built in unicode in order to provide improved support for international applications. This can affect features like Request.ClientCertificate Collection. When porting code from an older version of IIS, use custom COM object to convert the public key to ANSI in a return parameter that ASP can then display. 


  • Retrieve the value of Key fields in the ClientCertificate Collection

    ASP script command:

    Response.Write "Raw Certificate Data: " & _
    Request.ClientCertificate("Certificate") & "<br />"

    ASP script command:

    Response.Write "Recognization Flag: " & _
    Request.ClientCertificate("Flags") & "<br />"

    ASP script command:

    Response.Write "Issuer: " & _
    Request.ClientCertificate("Issuer") & "<br />"

    ASP script command:

    Response.Write "Certification Serial Number: " & _
    Request.ClientCertificate("SerialNumber") & "<br />"

    ASP script command:

    Response.Write "Subject: " & _
    Request.ClientCertificate("Subject") & "<br />"

    ASP script command:

    Response.Write "Commence Date: " & _
    Request.ClientCertificate("ValidFrom") & "<br />"

    ASP script command:

    Response.Write "Expire Date: " & _
    Request.ClientCertificate("ValidUntil") & "<br />"

  • Retrieve the value of Key with Subfield in the ClientCertificate Collection

    ASP script command:

    Response.Write "Common Name of Issuer: " & _
    Request.ClientCertificate("IssuerCN") & "<br />"

  • Loop for all elements in ClientCertificate Collection by elementtt

    ASP script command:

    For Each element in Request.ClientCertificate
    Response.Write element & ": "& Request.ClientCertificate(element) & "<br />"


ID: 120200021 Last Updated: 8/2/2012 Revision: 0 Ref:



  1. Active Server Pages,  ,
  2. ASP Overview,  ,
  3. ASP Best Practices,  ,
  4. ASP Built-in Objects,  ,
  5. Response Object,  ,
  6. Request Object,  ,
  7. Server Object (IIS),  ,
  8. Application Object (IIS),  ,
  9. Session Object (IIS),  ,
  10. ASPError Object,  ,
  11. ObjectContext Object (IIS),  ,
  12. Debugging Global.asa Files,  ,
  13. How to: Debug Global.asa files,  ,
  14. Calling COM Components from ASP Pages,  ,
  15. IIS ASP Scripting Reference,  ,
  16. ASP Keywords,  ,
  17. Creating Simple ASP Pages,  ,
  18. Including Files in ASP Applications,  ,
  19. ASP Overview,  ,
  20. FileSystemObject Object,  ,
  21.,  , ADO Object Model
  22. ADO Fundamentals,  ,

Home 5






Hobbies 8


Chinese 1097

English 337

Reference 67


Hardware 149


Application 198

Digitization 118

Numeric 19


Web 283

Unicode 494


CSS 58


OS 389

DeskTop 7

Python 19



Formulas 8

Algebra 25

Number Theory 206

Trigonometry 18

Geometry 18

Calculus 67

Complex Analysis 21


Tables 8


Mechanics 1

Rigid Bodies

Statics 92

Dynamics 37

Fluid 5

Fluid Kinematics 5


Process Control 1

Acoustics 19

FiniteElement 2


Electric 27

Biology 1

Geography 1

Copyright © 2000-2020 Sideway . All rights reserved Disclaimers last modified on 06 September 2019