Bu sayfanın seçili sürümü ile mevcut sürümü arasındaki farkları gösterir.
esya:sertifika:dogrulama-politikası [2013/07/25 11:30] Beytullah Yiğit [Tablo 1 ESYA API Kontrolcü ( Checker) Listesi] |
esya:sertifika:dogrulama-politikası [2013/08/19 05:38] (mevcut) Dindar Öz |
||
---|---|---|---|
Satır 1: | Satır 1: | ||
===== Sertifika Doğrulama Politika Dosyası ===== | ===== Sertifika Doğrulama Politika Dosyası ===== | ||
- | İndirdiğiniz kütüphane ile birlikte gelen politika dosyası, bir sertifika doğrulamanın başarılı sayılabilmesi için gerekli yeterliliği sağlamaktadır. Değiştirilme ihtiyacının duyulabileceği iki ayar olabilir. | + | İndirdiğiniz kütüphane ile birlikte gelen politika dosyası, bir sertifika doğrulamanın işleminin hangi kontrol adımlarından oluşacağını belirler. Örnek olarak verilen politika dosyası sadece sertifika deposu ile çalışmaktadır. Sertifika deposunda ise sadece kanuni geçerliliği olan kök sertifikalar bulunmaktadır. Dolayısıyla test sistemi ile çalışmak için test sisteminin köklerinin de kütüphaneye güvenilir kök olarak gösterilmesi gerekmektedir. Bunun için Politikanın Çalışma Zamanında Düzenlenmesi bölümüne bakabilirsiniz. |
- | Örnek olarak verilen politika dosyası sadece sertifika deposu ile çalışmaktadır. Sertifika deposunda ise sadece kanuni geçerliliği olan kök sertifikalar bulunmaktadır. Dolayısıyla test sistemi ile çalışmak için test sisteminin köklerinin de kütüphaneye güvenilir kök olarak gösterilmesi gerekmektedir. Bunun için Politikanın Çalışma Zamanında Düzenlenmesi bölümüne bakabilirsiniz. | + | |
- | Politika dosyasında yapılacak bir diğer düzenleme, sertifika iptal kontrollerinde ÇİSDUP veya SİL kullanılmasının ayarlanmasıdır. Bir sertifikanın doğrulanması sırasında sertifika zincirinin tamamının doğrulanması gerekmektedir. Zincirdeki bütün sertifikalar için ÇİSDUP desteği verilmeyebilir. Örneğin KamuSM sisteminde alt kökler için ÇİSDUP hizmeti verilmemektedir. Dolayısıyla sadece ÇİSDUP kullanarak bir sertifikayı doğrulamak mümkün değildir. Bu durumda ÇİSDUP öncelikli SİL ve ÇİSDUP'un bulunduğu konfigürasyon veya sadece SİL ile çalışan konfigürasyon yaratılabilir. | + | Politika dosyasında yapılabilecek bir diğer düzenleme, sertifika iptal kontrollerinde ÇİSDUP veya SİL kullanılmasının ayarlanmasıdır. Bir sertifikanın doğrulanması sırasında sertifika zincirinin tamamının doğrulanması gerekmektedir. Zincirdeki bütün sertifikalar için ÇİSDUP desteği verilmeyebilir. Örneğin KamuSM sisteminde alt kökler için ÇİSDUP hizmeti verilmemektedir. Dolayısıyla sadece ÇİSDUP kullanarak bir sertifikayı doğrulamak mümkün değildir. Bu durumda ÇİSDUP öncelikli SİL ve ÇİSDUP'un bulunduğu konfigürasyon veya sadece SİL ile çalışan konfigürasyon yaratılabilir. |
Politika dosyasında ÇİSDUP veya SİL'den hangisine öncelik verilmesi isteniyorsa, o sınıf üste yazılmalıdır. | Politika dosyasında ÇİSDUP veya SİL'den hangisine öncelik verilmesi isteniyorsa, o sınıf üste yazılmalıdır. | ||
Satır 10: | Satır 9: | ||
==== Politikanın Çalışma Zamanında Düzenlenmesi ==== | ==== Politikanın Çalışma Zamanında Düzenlenmesi ==== | ||
- | Politika dosyası, dosyadan okunduktan sonra çalışma zamanında düzenlenebilir. Aşağıdaki kod parçası klasörden güvenilir sertifikaları gösteren TrustedCertificateFinderFromFileSystem sınıfını çalışma zamanında eklemektedir. | + | Politika dosyası, dosyadan okunduktan sonra çalışma zamanında düzenlenebilir. Aşağıdaki kod parçası bir klasörden güvenilir sertifikaları bulan TrustedCertificateFinderFromFileSystem sınıfını çalışma zamanında eklemektedir. |
<sxh java; title: Java> | <sxh java; title: Java> | ||
Satır 36: | Satır 35: | ||
Bu tablolardaki gösterimde; | Bu tablolardaki gösterimde; | ||
- | Parametrenin alabileceği değerlerin listelendiği yerde * ile belirtilen değer parametrenin varsayılan değeridir | + | Parametrenin alabileceği değerlerin listelendiği yerde * ile belirtilen değer parametrenin varsayılan değeridir. |
[O] değeri ile belirtilen parametre opsiyonel parametre anlamına gelir. | [O] değeri ile belirtilen parametre opsiyonel parametre anlamına gelir. | ||
Satır 44: | Satır 43: | ||
==== Tablo 1 ESYA API Kontrolcü ( Checker) Listesi ==== | ==== Tablo 1 ESYA API Kontrolcü ( Checker) Listesi ==== | ||
- | ^ GÜVENİLİR SERTİFİKA YAPISAL KONTROLCÜLER ''<policy><validate><certificate><trustedcertificate>'' |||| | + | ^ GÜVENİLİR SERTİFİKA YAPISAL KONTROLCÜLERİ ''<policy><validate><certificate><trustedcertificate>'' |||| |
| ''CertificateDateChecker'' || Sertifika üzerinde yer alan geçerlilik zaman aralığının, doğrulama zamanını kapsaması kuralını doğrular. || | | ''CertificateDateChecker'' || Sertifika üzerinde yer alan geçerlilik zaman aralığının, doğrulama zamanını kapsaması kuralını doğrular. || | ||
| ''SelfSignatureChecker'' || Sertifika üzerindeki imzayı, sertifikanın açık anahtarı ile kriptografik olarak doğrular. || | | ''SelfSignatureChecker'' || Sertifika üzerindeki imzayı, sertifikanın açık anahtarı ile kriptografik olarak doğrular. || | ||
- | ^ SERTİFİKA YAPISAL KONTROLCÜLER ''<policy><validate><certificate><self>'' |||| | + | ^ SERTİFİKA YAPISAL KONTROLCÜLERİ ''<policy><validate><certificate><self>'' |||| |
| ''CertificateDateChecker'' || Sertifika üzerinde yer alan geçerlilik zaman aralığının, doğrulama zamanını kapsaması kuralını doğrular. || | | ''CertificateDateChecker'' || Sertifika üzerinde yer alan geçerlilik zaman aralığının, doğrulama zamanını kapsaması kuralını doğrular. || | ||
| ''CertificateExtensionChecker'' || Sertifika üzerinde yer alan eklenti bilgilerinin RFC 5280 uyumluluğunu kontrol eder. || | | ''CertificateExtensionChecker'' || Sertifika üzerinde yer alan eklenti bilgilerinin RFC 5280 uyumluluğunu kontrol eder. || | ||
Satır 67: | Satır 66: | ||
| ''RevocationFromCRLChecker'' || SİL'e bakarak sertifikanın iptal durumunu kontrol eder.|| | | ''RevocationFromCRLChecker'' || SİL'e bakarak sertifikanın iptal durumunu kontrol eder.|| | ||
| | Parametreler | cevrimdisicalis | [true,false*] \\ Bu parametre doğrulamanın çevrimdışı olarak yürütüleceğini belirtir. True olarak tanımlanmışsa iptal kontrolcü hiçbir SİL bulamasa bile iptal kontrolünü başarılı olarak sonlandırır. Çevrimdışı ortamlarda SİL'e ulaşılamadığında bile sertifika doğrulamanın gerçekleşebilmesi için tanımlanmıştır. Dikkatli kullanılmalıdır! | | | | Parametreler | cevrimdisicalis | [true,false*] \\ Bu parametre doğrulamanın çevrimdışı olarak yürütüleceğini belirtir. True olarak tanımlanmışsa iptal kontrolcü hiçbir SİL bulamasa bile iptal kontrolünü başarılı olarak sonlandırır. Çevrimdışı ortamlarda SİL'e ulaşılamadığında bile sertifika doğrulamanın gerçekleşebilmesi için tanımlanmıştır. Dikkatli kullanılmalıdır! | | ||
- | | | | checkAllCRLs | [true,false*] \\ Doğrulama sırasında normal olarak bir adet geçerli SİL kontrolü iptal kontrolünün tamamlanması için yeterlidir. Ancak bazı durumlarda kullanıcılar politika tanımlı bütün SİL bulucuların getirdikleri SİL'lere bakılmasını isteyebilirler. Bu durumda bu değer true yapılmalıdır. | | + | | ::: | ::: | checkAllCRLs | [true,false*] \\ Doğrulama sırasında normal olarak bir adet geçerli SİL kontrolü iptal kontrolünün tamamlanması için yeterlidir. Ancak bazı durumlarda kullanıcılar politika tanımlı bütün SİL bulucuların getirdikleri SİL'lere bakılmasını isteyebilirler. Bu durumda bu değer true yapılmalıdır. | |
- | | | | devam | [true,false*] \\ Doğrulama sırasında normal olarak bir adet iptal kontrolcünün başarılı sonuçlanması iptal kontrolünün tamamlanması için yeterlidir. Ancak kullanıcılar daha güvenli olması amacıyla bir iptal kontrolü başarılı sonuçlansa bile diğer iptal kontrolcülerin kontrolüne devam etmesini isteyebilirler. Bu durumda bu parametre true yapılmalıdır. | | + | | ::: | ::: | devam | [true,false*] \\ Doğrulama sırasında normal olarak bir adet iptal kontrolcünün başarılı sonuçlanması iptal kontrolünün tamamlanması için yeterlidir. Ancak kullanıcılar daha güvenli olması amacıyla bir iptal kontrolü başarılı sonuçlansa bile diğer iptal kontrolcülerin kontrolüne devam etmesini isteyebilirler. Bu durumda bu parametre true yapılmalıdır. | |
| ''RevocationFromOCSPChecker'' || || | | ''RevocationFromOCSPChecker'' || || | ||
| | Parametreler | devam | [true,false*] \\ Doğrulama sırasında normal olarak bir adet iptal kontrolcünün başarılı sonuçlanması iptal kontrolünün tamamlanması için yeterlidir. Ancak kullanıcılar daha güvenli olması amacıyla bir iptal kontrolü başarılı sonuçlansa bile diğer iptal kontrolcülerin kontrolüne devam etmesini isteyebilirler. Bu durumda bu parametre true yapılmalıdır. | | | | Parametreler | devam | [true,false*] \\ Doğrulama sırasında normal olarak bir adet iptal kontrolcünün başarılı sonuçlanması iptal kontrolünün tamamlanması için yeterlidir. Ancak kullanıcılar daha güvenli olması amacıyla bir iptal kontrolü başarılı sonuçlansa bile diğer iptal kontrolcülerin kontrolüne devam etmesini isteyebilirler. Bu durumda bu parametre true yapılmalıdır. | | ||
- | ^ SİL YAPISAL KONTROLCÜLER ''<policy><validate><crl><crlself>'' |||| | + | ^ SİL YAPISAL KONTROLCÜLERİ ''<policy><validate><crl><crlself>'' |||| |
| ''CRLDateChecker'' || SİL üzerinde yer alan geçerlilik zaman aralığının, doğrulama zamanını kapsaması kuralını doğrular. || | | ''CRLDateChecker'' || SİL üzerinde yer alan geçerlilik zaman aralığının, doğrulama zamanını kapsaması kuralını doğrular. || | ||
| ''CRLExtensionChecker'' || SİL üzerinde yer alan eklenti bilgilerinin RFC 5280 uyumluluğunu kontrol eder. || | | ''CRLExtensionChecker'' || SİL üzerinde yer alan eklenti bilgilerinin RFC 5280 uyumluluğunu kontrol eder. || | ||
Satır 91: | Satır 90: | ||
| ''IssuerSubjectMatcher'' | Sertifika üzerindeki yayıncı özne adı (issuer) alanı ile yayıncı sertifikası üzerindeki özne adı (subject ) alanlarını eşleştirir. | | | ''IssuerSubjectMatcher'' | Sertifika üzerindeki yayıncı özne adı (issuer) alanı ile yayıncı sertifikası üzerindeki özne adı (subject ) alanlarını eşleştirir. | | ||
^ SİL EŞLEŞTİRİCİLER ''<policy><match><certificate>'' || | ^ SİL EŞLEŞTİRİCİLER ''<policy><match><certificate>'' || | ||
- | | ''CRLDistributionPointMatcher'' | Sertifika üzerindeki SİL Dağıtım Noktaları (CRLDistributionPoints) eklentisinin üzerindeki bilgi ile SİL üzerindeki varsa Yayıncı Dağıtım Noktası (IssuingDistributionPoint) eklentisine bakarak SİL ile sertifikayı eşleştirir. | | + | | ''CRLDistributionPointMatcher'' | Sertifika üzerindeki SİL Dağıtım Noktaları (CRLDistributionPoints) eklentisinin üzerindeki bilgi ile SİL üzerindeki (varsa) Yayıncı Dağıtım Noktası (IssuingDistributionPoint) eklentisine bakarak SİL ile sertifikayı eşleştirir. | |
| ''CRLDistributionPointOnlyContainsMatcher'' | SİL üzerindeki Yayıncı Dağıtım Noktası (Issuing Distribution Point) eklentisindeki onlyContains özellikleri ile Sertifika üzerindeki Temel Kısıtlamalar (BasicConstraint) eklentisine bakarak SİL ile sertifikayı eşleştirir | | | ''CRLDistributionPointOnlyContainsMatcher'' | SİL üzerindeki Yayıncı Dağıtım Noktası (Issuing Distribution Point) eklentisindeki onlyContains özellikleri ile Sertifika üzerindeki Temel Kısıtlamalar (BasicConstraint) eklentisine bakarak SİL ile sertifikayı eşleştirir | | ||
| ''CRLIssuerMatcher'' | SİL üzerindeki yayıncı adı (issuer) alanı ile Sertifika üzerindeki yayıncı adı (issuer) alanına bakarak SİL ile sertifikayı eşleştirir. | | | ''CRLIssuerMatcher'' | SİL üzerindeki yayıncı adı (issuer) alanı ile Sertifika üzerindeki yayıncı adı (issuer) alanına bakarak SİL ile sertifikayı eşleştirir. | | ||
Satır 97: | Satır 96: | ||
^ Delta SİL EŞLEŞTİRİCİLER ''<policy><match><certificate>'' || | ^ Delta SİL EŞLEŞTİRİCİLER ''<policy><match><certificate>'' || | ||
| ''BaseCRLNumberMatcher'' | Delta SİL üzerindeki Temel SİL Numarası (BaseCRLNumber) eklentisi ile temel SİL üzerindeki SİL Numarası (CRLNumber) eklentisine bakarak temel SİL ile delta SİL'i eşleştirir. | | | ''BaseCRLNumberMatcher'' | Delta SİL üzerindeki Temel SİL Numarası (BaseCRLNumber) eklentisi ile temel SİL üzerindeki SİL Numarası (CRLNumber) eklentisine bakarak temel SİL ile delta SİL'i eşleştirir. | | ||
- | | ''CRLNumberMatcher'' | Delta SİL üzerindeki SİL Numarası (CRLNumber) eklentisi üzerindeki SİL numarasının temel SİL üzerindeki SİL Numarası (CRLNumber) eklentisi üzerindeki SİL Numarasından büyük olduğunu doğrulayarak temel SİL ile delta SİL'i eşleştirir. | | + | | ''CRLNumberMatcher'' | Delta SİL üzerindeki SİL Numarası (CRLNumber) eklentisi üzerindeki SİL numarasının temel SİL üzerindeki SİL Numarası (CRLNumber) eklentisi üzerindeki SİL Numarasından büyük olduğunu doğrulayarak temel SİL ile delta SİL'i eşleştirir. | |
| ''DeltaCRLIssuerMatcher'' | Delta SİL üzerindeki yayıncı adı (issuer) alanı ile temel SİL üzerindeki yayıncı adı (issuer) alanına bakarak temel SİL ile delta SİL'i eşleştirir. | | | ''DeltaCRLIssuerMatcher'' | Delta SİL üzerindeki yayıncı adı (issuer) alanı ile temel SİL üzerindeki yayıncı adı (issuer) alanına bakarak temel SİL ile delta SİL'i eşleştirir. | | ||
| ''ScopeMatcher'' | Delta SİL üzerindeki Yayıncı Dağıtım Noktası (IssuingDistributionPoint) eklentisi ile temel SİL üzerindeki Yayıncı Dağıtım Noktası (IssuingDistributionPoint) eklentisine bakarak temel SİL ile delta SİL'i eşleştirir. | | | ''ScopeMatcher'' | Delta SİL üzerindeki Yayıncı Dağıtım Noktası (IssuingDistributionPoint) eklentisi ile temel SİL üzerindeki Yayıncı Dağıtım Noktası (IssuingDistributionPoint) eklentisine bakarak temel SİL ile delta SİL'i eşleştirir. | | ||
Satır 111: | Satır 110: | ||
| ''TrustedCertificateFinderFromECertStore'' || Yerel sertifika deposundaki yayıncı sertifikalarını getirir ve bu sertifikaları güvenilir kabul eder. || | | ''TrustedCertificateFinderFromECertStore'' || Yerel sertifika deposundaki yayıncı sertifikalarını getirir ve bu sertifikaları güvenilir kabul eder. || | ||
| | Parametreler | securitylevel| [PERSONAL*, ORGANIZATIONAL, LEGAL]\\ Depodan getirilecek sertifikaların güven seviyesini belirler. Kişisel sertifikalar için PERSONAL, kurumsal sertifikalar için ORGANIZATIONAL, kanuni sertifikalar için LEGAL olarak belirtilmelidir. | | | | Parametreler | securitylevel| [PERSONAL*, ORGANIZATIONAL, LEGAL]\\ Depodan getirilecek sertifikaların güven seviyesini belirler. Kişisel sertifikalar için PERSONAL, kurumsal sertifikalar için ORGANIZATIONAL, kanuni sertifikalar için LEGAL olarak belirtilmelidir. | | ||
- | | | | storepath [O] | Yerel sertifika deposunun dosya sistemindeki yerini belirler | | + | | ::: | ::: | storepath [O] | Yerel sertifika deposunun dosya sistemindeki yerini belirler. | |
| ''TrustedCertificateFinderFromFileSystem'' || Dosya sisteminde verilen dizin adresindeki yayıncı sertifikalarını getirir. Bu sertifikaları güvenilir kabul eder. || | | ''TrustedCertificateFinderFromFileSystem'' || Dosya sisteminde verilen dizin adresindeki yayıncı sertifikalarını getirir. Bu sertifikaları güvenilir kabul eder. || | ||
| | Parametreler | dizin | Dizin adresi | | | | Parametreler | dizin | Dizin adresi | | ||
Satır 128: | Satır 127: | ||
| ''CRLFinderFromECertStore'' || Yerel sertifika deposundaki SİL'leri getirir. || | | ''CRLFinderFromECertStore'' || Yerel sertifika deposundaki SİL'leri getirir. || | ||
| | Parametreler | storepath [0] | Yerel sertifika deposunun dosya sistemindeki yerini belirler. | | | | Parametreler | storepath [0] | Yerel sertifika deposunun dosya sistemindeki yerini belirler. | | ||
- | | | | getactivecrl | [true,false*] Sertifika doğrulamanın kesin bir şekilde yapılması için sertifika doğrulamanın yapıldığı tarihten sonra yayınlanan SİL kullanılmaktadır. Yalnız yeni yayınlanacak SİL beklenmek istenmeyebilir ve yayında olan SİL kullanılmak istenebilir. Bu durumda getactivecrl parametresi için true verilmelidir. | | + | | ::: | ::: | getactivecrl | [true,false*] \\ Sertifika doğrulamanın kesin bir şekilde yapılması için sertifika doğrulamanın yapıldığı tarihten sonra yayınlanan SİL kullanılmaktadır. Yalnız yeni yayınlanacak SİL beklenmek istenmeyebilir ve yayında olan SİL kullanılmak istenebilir. Bu durumda getactivecrl parametresi için true verilmelidir. | |
| ''CRLFinderFromFile'' || Dosya sisteminde verilen dosya adresindeki SİL'leri getirir. || | | ''CRLFinderFromFile'' || Dosya sisteminde verilen dosya adresindeki SİL'leri getirir. || | ||
| | Parametreler | dosyayolu | Dosya adresi | | | | Parametreler | dosyayolu | Dosya adresi | | ||
Satır 151: | Satır 150: | ||
^ KAYDEDİCİLER ''<policy><save>'' |||| | ^ KAYDEDİCİLER ''<policy><save>'' |||| | ||
| ''CertStoreCertificateSaver'' || Sertifika doğrulama sırasında bulunan ve doğrulanan sertifikaları yerel sertifika deposuna kaydeder. || | | ''CertStoreCertificateSaver'' || Sertifika doğrulama sırasında bulunan ve doğrulanan sertifikaları yerel sertifika deposuna kaydeder. || | ||
- | | | Parametreler | storepath [O] | Yerel sertifika deposunun dosya sistemindeki yerini belirler | | + | | | Parametreler | storepath [O] | Yerel sertifika deposunun dosya sistemindeki yerini belirler. | |
| ''CertStoreCRLSaver'' || Sertifika doğrulama sırasında uzaktan(LDAP, http vb.) bulunan SİL'leri yerel sertifika deposuna kaydeder. || | | ''CertStoreCRLSaver'' || Sertifika doğrulama sırasında uzaktan(LDAP, http vb.) bulunan SİL'leri yerel sertifika deposuna kaydeder. || | ||
- | | | Parametreler | storepath [O] | Yerel sertifika deposunun dosya sistemindeki yerini belirler | | + | | | Parametreler | storepath [O] | Yerel sertifika deposunun dosya sistemindeki yerini belirler. | |
| ''CertStoreOCSPResponseSaver'' || Sertifika doğrulama sırasında uzaktan(LDAP, http vb.) bulunan OCSP'leri yerel sertifika deposuna kaydeder. || | | ''CertStoreOCSPResponseSaver'' || Sertifika doğrulama sırasında uzaktan(LDAP, http vb.) bulunan OCSP'leri yerel sertifika deposuna kaydeder. || | ||
- | | | Parametreler |storepath [O] | Yerel sertifika deposunun dosya sistemindeki yerini belirler | | + | | | Parametreler |storepath [O] | Yerel sertifika deposunun dosya sistemindeki yerini belirler. | |