Porovnávané verzie

Kľúč

  • Tento riadok sa pridal
  • Riadok je odstránený.
  • Formátovanie sa zmenilo.

Obsah

Smart Web poporuje podporuje autentifikácie web klientov pomocou klientských klientskych certifikátov. Jedná sa o špeciálny režim autentifikácie klientov známy ako ‘Mutual authentication’ alebo ‘HTTPS client authentication’ alebo TLS Client Certificate Authentication.

Handshake pri autentifikácii cez klientské certifikátyImage RemovedClient certificate handshakeImage Added

Smart Web podporuje dva režimy overovania klientských klientskych certifikátov konfigurovateľné v súbore smartweb.json:

  1. Lokálne overovanie (AUTH_CERTIFICATE_LOCALLY) na strane WildFly AS
  2. Vzdialnené Vzdialené overovanie (AUTH_CERTIFICATE_REMOTELY) v aplikácii D2000

Nasledujúce kapitoly obsahujú odporúčania pre generovanie a správu klientských klientskych certifikátov.

Postup generovania klientských certifikátov

Klientske certifikáty sa generujú pomocou nástroja KeyStore Explorer. Postup je nasledovný:

  1. Je potrebné vytvoriť keystore, v ktorom bude uložený self-signed companyca keypair. Názov tohto súboru je master-client-credentials.jks. Vytvorí sa nasledovne, po štarte programu vybrať Create a new KeyStore, kde definujeme typ KeyStoru v našom prípade JKS. 

    Varovanie

    Súbor master-client-credentials.jks sa nepoužíva priamo na serveroch, ale slúži len ako repository certifikátov. Zo súbora súboru master-client-credentials.jks sa nikdy neexportuje privátny kľúč companyca !!! 

    Postup generovania klientských certifikátov 1Image RemovedImage Added

  2. Ďalej klikneme pravým tlačidlom a vyberieme Generate Key Pair. 
    Postup generovania klientských certifikátov 2Image Removed
    Image Added
  3. Algorithm Selection necháme na RSA s hodnotou Key Size 2048. Ďalej vyberieme verziu 3, Signature Alghorithm SHA-256 with RSA a dobu platnosti. Pri položke Name je dôležite dôležité vyplniť čo najviac údajov pre dôveryhodnosť. Postup generovania klientských certifikátov 3Image Removed
    Image Added
  4. Následne zvolíme Alias a heslo companyca Key Pair-u. Ďalej uložíme KeyStore pod menom master-client-credentials.jks. Pri ukladaní sa opäť vyžaduje nastavenie hesla, tentokrát však na KeyStore.
    Postup generovania klientských certifikátov 4Image RemovedImage Added
  5. Pre každého klienta je potrebné vygenerovať key-pair podpísaný pomocou companyca. Postupujeme tak, že klikneme pravým na companyca v menu zvolíme Sign a Sign New Key Pair. Vytvoríme nový KeyPair pre ClientaA s nastaveniami šifrovania ako pri companycaPostup generovania klientských certifikátov 5Image Removed
    Image Added
  6. Pre overenie, že je klientsky KeyPair podpísaný companyca autoritou, klikneme pravým na ClientaAa vyberieme z menu View Details a Certificate Chain Details. V danom okne je vidieť, že vlastníkom je companyca autorita.
    Postup generovania klientských certifikátov 6Image RemovedImage Added
  7. Zo súbora súboru master-client-credentials.jks sa exportujú certifikáty klientov a companyca do súborov clientcertificates-full.jks, client-certificates-d2ws.jks, client-certificates-d2000.jks . (Dávajú sa na servery, obsahujú verejné kľúče). Certifikáty jednotlivých klientov a companyca vyexportujeme kliknutím na klienta, prípadne companyca a dáme Export a Export Certificate Chain.
    Postup generovania klientských certifikátov 7Image RemovedImage Added
  8. Pri exporte ponecháme nastavenia prípadne upravíme cestu, kde sa ma certifikát uložiť a klikneme na export.
     Postup generovania klientských certifikátov 8Image RemovedImage Added
  9. Keď sú všetky certifikáty vyexportované, uložíme ich do clientcertificates-full.jks a to tak, že vytvoríme nový JKS súbor cez menu programu KeyStore File > New a vyberieme typ JKS. Tu naimportujeme certifikáty kliknutím pravým tlačidlom myši a vyberieme Import Trusted Certificate a certifikát, ktorý chceme importovať.
    Postup generovania klientských certifikátov 9Image Removed Postup generovania klientských certifikátov 10Image RemovedImage AddedImage Added
  10. Po naimportovaní KeyStore uložíme ako clientcertificates-full. Opäť je vyžadovanie nastavenie hesla na tento JKS súbor.
    Tento súbor clientcertificates-full.jks uložíme na konkrétny server, kde to je vyžadované.
  11. Zo súbora súboru master-client-credentials.jks sa exportujú key-pairs klientov vo formáte *.p12 (obsahujú verejné aj privátne kľúče, dáva sa zákazníkovi na zariadenie (PC, Tablet ...)). Export vykonáme v súbore master-client-credentials.jks, kde klikneme pravým tlačidlom na jednotlivých klientov a dáme Export > Export Key Pair. V zložke sa nám vytvoria súbory ClientA.p12 a ClientB.p12, ktoré sa pošlú jednotlivým užívateľom na zariadenia.
    Postup generovania klientských certifikátov 11Image RemovedImage Added

Správa

...

klientskych certifikátov

  1. master-client-credentials.jks keystore obsahuje master companyca key-pair a ním podpísané klientske key-pairs.
  2. Klientske certifikáty pre klientov Smart Web aplikácie a companyca certifikát je potrebné vyexportovať do súboru client-certificates-full.jks, ktorý musí byť prístupný na čítanie pre jvm proces, v ktorom beží WildFly AS.
  3. Klientske certifikáty a privátne kľúče je potrebné exportovať zo súboru master-client-credentials.jks vo formáte *.p12.

...

  1. Image Added

Inštalácia

...

klientskeho certifikátu

Microsoft Windows 7/8/10 – desktop PC

Na import klientskych certifikátov je vhodné použiť aplikáciu certmgr.msc, ktorá je štandartnou štandardnou súčasťou OS Windows. Je potrebné vybrať priečinok “Personal” a zvoliť akciu import pre príslušný *.p12 key-pair.

Postup inštalácie klientských certifikátov 1Image RemovedImage Added

Android

Klientský Klientsky *.p12 key-pair je potrebné uložiť do adresára “Downloads” a importovať cez nastavenia systému.

iOS

Klientský Klientsky *.p12 key-pair je potrebné poslať v prílohe mailom na klientske zariadenia importovať cez nastavenia systému.

...