Sideway
output.to from Sideway
Draft for Information Only

Content

Request Object
 Request.ClientCertificate Collection
   Syntax:
   Parameters:
   Remarks:
  Examples:

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.

Syntax:

Request.ClientCertificate( Key[Subfield] )

 Or in an ASP file. Imply

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

Parameters:

Key

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.

SubField

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

Remarks:

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. 

Examples:

  • 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 />"
    Next
    %>


©sideway

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

close

References

  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. http://msdn.microsoft.com/en-us/library/windows/desktop/ms675944(v=vs.85).aspx,  
  22. ADO Fundamentals,  
close

Latest Updated LinksValid XHTML 1.0 Transitional Valid CSS!Nu Html Checker Firefox53 Chromena IExplorerna
IMAGE

Home 5

Business

Management

HBR 3

Information

Recreation

Hobbies 7

Culture

Chinese 1097

English 337

Reference 67

Computer

Hardware 149

Software

Application 187

Digitization 24

Numeric 19

Programming

Web 757

CSS 1

ASP.NET 1

Regular Expression 1

HTML

Knowledge Base

Common Color 1

Html Entity (Unicode) 1

Html 401 Special 1

OS 389

MS Windows

Windows10 1

.NET Framework 1

DeskTop 7

Knowledge

Mathematics

Formulas 8

Algebra 20

Number Theory 206

Trigonometry 18

Geometry 18

Calculus 67

Complex Analysis 21

Engineering

Tables 8

Mechanical

Mechanics 1

Rigid Bodies

Statics 92

Dynamics 37

Fluid 5

Fluid Kinematics 5

Control

Process Control 1

Acoustics 19

FiniteElement 2

Physics

Electric 10

Biology 1

Geography 1


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