logo

17 Ocak 2014 Cuma

ASP Ana Objeleri

Ana Objeler
Active Server Pages ‘in beraberinde gelen bazı server ve uygulama geliştirme objeleri vardır. Bu objeler developerları clienttan gelen requestleri, application durumunun yonetimi,cookilerin kullanılması, istemciye verilcek cevabın duzenlenmesi gibi işlerin detayları için kod yazma  zahmetinden kurtatır. Bu ana objeler şunlardır:
1-Request and Response:request objesi HTTP istemi ile scripte gonderilen tum bilgilere erişimi sağlar. Bu bilgiler cookieleri,formları,URL querylerini ve http headerlarını kapsar.
Request objesine ait kolleksiyonlar:
1-clientcertificate 2-cookie 3-form 4-querystring 5-servervaribles
eğer request.form veya request.querystring gibi ifadeler yerine dogrudan request(variable) denilirse web server kolleksiyonları şu sırada arar
1.       querystring
2.       form
3.       cookies
4.       clientcertificate
5.       servervariables
Bunun için çoğunlukla 
Request.(AUTH_USER) yerine  Request.ServerVariables(AUTH_USER) kullanılır.
1-ClientCertificate :HTTP requesti icinde gonderilen X.509 standartındaki sertifikalara ait bilgilerdir.Eğer web browser SSL3.0/PCT1 Protocolu kullanıyorsa yani secure bir iletişim yapıyorsa web browsera sertifika yollayabilir.Eğer bir Sertifika gonderilmemişse ClientCertificate kolleksiyonundan EMPTY degeri doner.
Syntax
Request.ClientCertificate( Key[SubField] )
Bu kolleksiyona ait Keyler ise şunlardır:

Certificate
ASN.1 formatındaki tum sertifika içeriğinin binary stream'ini içeren bir string
Flags
ek sertifika verileri sağlayan flaglerden oluşur.
ceCertPresent—A client certificate is present.
ceUnrecognizedIssuer—Bu zincirdeki son sertifikasyon bilinmyen bir user'a ait
Not:  flagleri kullanbilmeniz için Asp dosyanıza client sertifikasını include etmelisiniz.VBScript kullanıyorsanız cervbs.inc dosyasını Jscript kullnıyorsanız cerjavas.inc dosyasını include etmelisiniz.Bu dosyalar \Inetpub\ASPSamp\Samples klasorune yuklenmiştir.
Issuer sertifikayı yayınlayan hakkındaki bilgileri kapsayan bazı subfield değerlerinden oluşan bir string dir.Eğer Sub fileld olmadan  bu değer belirtilmişse ClientCertificate kolleksiyonu virgul ile ayrılmış SubFieldlar gonderir.Örneğin ,C=US, O=Verisign, vb...
SerialNumber
Client sertifikası serial numerını ASCII tipinde ve tirelerle ayrılmış hxadecimal ifadeleri kapsayan bir stringdir.Örneğin, 04-67-F3-02.
Subject
Bazı subfiled değerlerini tutan stringdir.Subfield değeri sertifikanın konusu hakkındaki bilgileri kapsar.Eğer bu değer subfieldsız belirtilmişse ClientCertificate kolleksiyonu virgul ile ayrılmış SubFieldlar gonderir. Örneğin, C=US, O=Msft, vb..
ValidFrom
sertifikanın hangi tarihten itibaren geçerli oldugunu bildiren tarih.Bu tarih VBScript formatındır ve uluslararası ayarlar ile değişir. Örneğin, U.S.'de, 9/26/96 11:59:59 PM.
ValidUntil
sertifikanın hangi tarihe kadar  geçerli oldugunu bildirir.
SubField

C
şehir/kasaba adı
CN
Skullanıcı adı (sadece Subject keyi ile kullnaılır.)
GN
verilen ad
I
ilk oncekileri belirtir
L
Yöre
O
şirket yada organizasyon adı
OU
organizasyonel birimler
S
Eyalet
T
organizayon adı veya kişinin ünvanı
Clientcertificate ile ilgili bazı ornek ASP kodları
<%
  For Each strKey in Request.ClientCertificate
    Response.Write strkey & " = " & Request.ClientCertificate(strkey) & "<BR>")
  Next
%>

<%
  If Len(Request.ClientCertificate("Subject")) = 0
    Response.Write("No client certificate was presented")
  End if
%>

<%= Request.ClientCertificate("IssuerCN") %>

<%
  If (Request.ClientCertificate("Subject")="Msft")
    Response.Write("Good Choice!")
  End if
%>

<%= Request.ClientCertificate("ValidUntil") %>

<!--#include file="cervbs.inc" -->
<%
  If Request.ClientCertificate("Flags") and ceUnrecognizedIssuer then
    Response.Write "Unrecognized issuer"
  End If
%>


0 yorum:

Yorum Gönder