Elektroniskā paraksta integrācija informācijas sistēmāsAutentifikācija<br />
Saturs<br />Sertifikātu autentifikācijas apskats<br />Sertifikātu autentifikācijas piemēri:<br /><ul><li>ASP.NET
PHP</li></li></ul><li>Sertifikātu autentifikācija<br />Tiek izmantots servera SSL sertifikāts<br />Web lapas<br />lietotāj...
Demo<br />Autentifikācija ASP.NET un PHP<br />
Autentifikācija ASP.NET<br />Klienta SSL autentifkācijas gadījumā satur klienta sertifikāta informāciju<br />            H...
Autentifikācija PHP uz IIS7<br />if (isset($_SERVER["CERT_FLAGS"])){echo "Sertifikāta numurs: {$_SERVER['CERT_SERIALNUMBER...
Sertifikātu autentifikācijas specifika<br />Vienā SSL sesijā tikai viens autentificēts sertifikāts:<br /><ul><li>Jāaizver ...
Demo<br />Autentifikācija ārpus web sistēmas<br />
Sertifikātu autentifikācija
Sertifikātu autentifikācija
Upcoming SlideShare
Loading in …5
×

Sertifikātu autentifikācija

1,734 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,734
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Sertifikātu autentifikācija

  1. 1. Elektroniskā paraksta integrācija informācijas sistēmāsAutentifikācija<br />
  2. 2. Saturs<br />Sertifikātu autentifikācijas apskats<br />Sertifikātu autentifikācijas piemēri:<br /><ul><li>ASP.NET
  3. 3. PHP</li></li></ul><li>Sertifikātu autentifikācija<br />Tiek izmantots servera SSL sertifikāts<br />Web lapas<br />lietotājs<br />1. Aizsargātā kanāla izveidošana<br />Web<br />sistēma<br />2. Autentifikācijas pieprasījums<br />4. Autentifikācijas <br />atbilde/paraksts<br />3. PIN ievadīšana/<br />paraksts<br />5. Informācijas nolasīšana<br />no sertifikāta<br />Lietotājam ClientAuthentication sertifikāts<br />Serverim Server Authentication sertifikāts<br />
  4. 4. Demo<br />Autentifikācija ASP.NET un PHP<br />
  5. 5. Autentifikācija ASP.NET<br />Klienta SSL autentifkācijas gadījumā satur klienta sertifikāta informāciju<br />            HttpClientCertificate cert = Request.ClientCertificate;            if (cert.IsPresent)            {                // validate certificate using OCSP if needed in addition to                 // CRL validation done by IIS web server                //                // OcspClient ocspClient = new OcspClient(new Uri("https://ocsp.eme.lv/responder.eme"));                // ocspClient.Verify = true;                // ...                // get user data from the certificate by parsing subject name                string clientName = null;                if (cert.Subject.Contains("CN="))                {                    int idx = cert.Subject.IndexOf("CN=") + 3;                    clientName = cert.Subject.Substring(idx, cert.Subject.Length - idx);                    if (clientName.Contains(","))                        clientName = clientName.Substring(0, clientName.IndexOf(","));                }<br />// ...            }<br />OCSP pārbaude vēlama, bet nav obligāta, jo web serveris pats veic pārbaudi, izmantojot CRL<br />
  6. 6. Autentifikācija PHP uz IIS7<br />if (isset($_SERVER["CERT_FLAGS"])){echo "Sertifikāta numurs: {$_SERVER['CERT_SERIALNUMBER']} <br/>";echo "Lietotāja subject name: {$_SERVER['CERT_SUBJECT']} <br/>"; $pair_array = parse_subject_name($_SERVER['CERT_SUBJECT']);print_subject_name($pair_array);}else{echo "User information not known!";}<br />function parse_subject_name($serial){ $values = array(); $pairs = preg_split("/[,]+/", $serial); $count = count($pairs); for ($i = 0; $i < $count; $i++) {if (strlen(trim($pairs[$i])) > 0) { $pair = preg_split("/[=]/", trim($pairs[$i])); $values[$pair[0]] = $pair[1]; } }return (array)$values;}function print_subject_name($pair_array){foreach ($pair_array as $field => $value) {echo "{$field}: {$value} <br/>"; }}<br />Karogs uzstādīts, ja klients veidojis SSL pieslēgumu ar savu klienta sertifikātu<br />CERT_SERIALNUMBER mainīgais satur sertifikāta unikālo identifikācijas numuru, <br />CERT_SUBJECT satur sertifikāta īpašnieka informāciju – arī personas kodu<br />Palīgmetode īpašnieka informācijas pārveidei atribūtu un to vērtību masīvā<br />
  7. 7. Sertifikātu autentifikācijas specifika<br />Vienā SSL sesijā tikai viens autentificēts sertifikāts:<br /><ul><li>Jāaizver pārlūkprogramma, lai autentificētos ar citu sertifikātu</li></ul>Ja SSL jau izveidots bez sertifikāta, ar to autentificēties sesijas laikā nevar<br /><ul><li>Sertifikātu autentifikācijas lapa jāveido kā atsevišķa lapa (ar citu URL)</li></li></ul><li>Ieteiktā konfigurācija<br />1. Autentifikācija, <br />lietojot klienta<br />sertifikātu<br />Autentifikācijas websaits<br />Web lapas<br />lietotājs<br />Web<br />sistēma<br />2. Redirect ar vienreizējo<br />talonu<br />3. Piekļuve lapai,<br />nododot talonu<br />5. Talona nolasīšana<br />un pārbaude<br />
  8. 8. Demo<br />Autentifikācija ārpus web sistēmas<br />

×