Rutoken technológia használatában szerzett tapasztalat a felhasználók rendszerben való regisztrálásához és engedélyezéséhez (3. rész)

Jó napot!

Az előző részben Sikeresen létrehoztuk saját tanúsító központunkat. Hogyan lehet hasznos céljaink szempontjából?

A helyi tanúsító hatóság segítségével tanúsítványokat állíthatunk ki, és ellenőrizhetjük az ezeken a tanúsítványokon lévő aláírásokat is.

Amikor tanúsítványt ad ki egy felhasználónak, a hitelesítés-szolgáltató egy speciális Pkcs#10 tanúsítványkérést használ, amelynek .csr fájlformátuma van. Ez a kérés egy kódolt sorozatot tartalmaz, amelyet a hitelesítésszolgáltató tudja, hogyan kell helyesen elemezni. A kérelem tartalmazza a felhasználó nyilvános kulcsát és a tanúsítvány (a felhasználó adatait tartalmazó asszociatív tömb) létrehozásához szükséges adatokat.

A következő cikkben megnézzük, hogyan kaphatunk tanúsítványigénylést, és ebben a cikkben szeretném megadni a hitelesítés-szolgáltató főbb parancsait, amelyek segítik a feladatunkat a háttéroldalon.

Tehát először létre kell hoznunk egy tanúsítványt. Ehhez a következő parancsot használjuk:

openssl ca -batch -in user.csr -out user.crt

A ca az openSSL parancs, amely a hitelesítésszolgáltatóhoz kapcsolódik,
-batch - visszavonja a megerősítési kéréseket a tanúsítvány generálásakor.
user.csr — tanúsítvány létrehozásának kérése (.csr formátumú fájl).
user.crt - tanúsítvány (a parancs eredménye).

A parancs működéséhez a hitelesítésszolgáltatót pontosan a leírtak szerint kell konfigurálni a cikk előző részében. Ellenkező esetben meg kell adnia a hitelesítés-szolgáltató gyökértanúsítványának helyét.

Tanúsítvány-ellenőrző parancs:

openssl cms -verify -in authenticate.cms -inform PEM -CAfile /Users/……/demoCA/ca.crt -out data.file

A cms egy openSSL parancs, amely adatok aláírására, ellenőrzésére, titkosítására és egyéb titkosítási műveletekre szolgál az openSSL használatával.

-verify - ebben az esetben ellenőrizzük a tanúsítványt.

authenticate.cms – az előző parancs által kiadott tanúsítvánnyal aláírt adatokat tartalmazó fájl.

-inform PEM - PEM formátum használatos.

-CAfile /Users/……/demoCA/ca.crt - a gyökértanúsítvány elérési útja. (enélkül nekem nem működött a parancs, bár a ca.crt elérési útjait az openssl.cfg fájlba írták)

-out data.file — elküldöm a visszafejtett adatokat a data.file fájlba.

A hitelesítésszolgáltató háttéroldali használatának algoritmusa a következő:

  • Felhasználó regisztráció:
    1. Kérést kapunk egy tanúsítvány létrehozására és a user.csr fájlba való mentésére.
    2. A cikk első parancsát .bat vagy .cmd kiterjesztésű fájlba mentjük. Ezt a fájlt kódból futtatjuk, miután korábban elmentettük a tanúsítvány létrehozására vonatkozó kérést a user.csr fájlba. Kapunk egy fájlt a user.crt tanúsítvánnyal.
    3. Beolvasjuk a user.crt fájlt és elküldjük a kliensnek.

  • Felhasználói jogosultság:
    1. A klienstől aláírt adatokat kapunk, és elmentjük az authenticate.cms fájlba.
    2. Mentse a cikk második parancsát egy .bat vagy .cmd kiterjesztésű fájlba. Ezt a fájlt a kódból futtatjuk, miután az aláírt adatokat korábban elmentettük a szerverről az authenticate.cms fájlba. Kapunk egy fájlt dekódolt adatokkal data.file.
    3. Beolvasjuk a data.file fájlt, és ellenőrizzük az adatok érvényességét. Le van írva, hogy pontosan mit kell ellenőrizni az első cikkben. Ha az adatok érvényesek, akkor a felhasználói jogosultság sikeresnek minősül.

Ezen algoritmusok megvalósításához bármilyen programozási nyelvet használhat, amelyet a háttérprogram írásához használnak.

A következő cikkben megvizsgáljuk, hogyan kell dolgozni a Retoken beépülő modullal.

Спасибо за внимание!

Forrás: will.com

Hozzászólás