Pangalaman ngagunakeun téknologi Rutoken pikeun ngadaptar sareng otorisasi pangguna dina sistem (bagian 3)

Alus dinten!

Dina bagian saméméhna Kami geus hasil nyieun puseur sertifikasi urang sorangan. Kumaha éta tiasa mangpaat pikeun tujuan urang?

Nganggo otoritas sertifikasi lokal, urang tiasa ngaluarkeun sertipikat sareng ogé pariksa tanda tangan dina sertipikat ieu.

Nalika ngaluarkeun sertipikat ka pangguna, otoritas sertifikasi nganggo pamundut sertipikat khusus Pkcs#10, anu ngagaduhan format file '.csr'. Paménta ieu ngandung runtuyan anu disandikeun yén otoritas sertifikasi terang kumaha nga-parse anu leres. Paménta ngandung duanana konci umum pamaké sarta data pikeun nyieun sertipikat (hiji susunan pakait jeung data ngeunaan pamaké).

Urang bakal ningali kumaha carana nampi pamenta sertipikat dina tulisan salajengna, sareng dina tulisan ieu kuring badé masihan paréntah utama otoritas sertifikasi anu bakal ngabantosan urang ngarengsekeun tugas urang di sisi backend.

Janten mimitina urang kedah ngadamel sertipikat. Jang ngalampahkeun ieu kami nganggo paréntah:

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

ca nyaéta paréntah openSSL anu aya hubunganana sareng otoritas sertifikasi,
-batch - cancels requests konfirmasi nalika ngahasilkeun sertipikat.
user.csr — menta nyieun sertipikat (file dina format .csr).
user.crt - sertipikat (hasil paréntah).

Supados paréntah ieu tiasa dianggo, otoritas sertifikasi kedah dikonpigurasi persis sakumaha anu dijelaskeun dina bagian saméméhna tina artikel. Upami teu kitu, anjeun bakal kedah ogé nangtukeun lokasi sertipikat akar otoritas sertifikasi.

Paréntah verifikasi sertipikat:

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

cms mangrupikeun paréntah openSSL anu dianggo pikeun nandatanganan, pariksa, énkripsi data sareng operasi kriptografi sanés nganggo openSSL.

-verifikasi - dina hal ieu, urang pariksa sertipikat.

authenticate.cms - file ngandung data ditandatanganan ku sertipikat anu dikaluarkeun ku paréntah saméméhna.

-inform PEM - format PEM dipaké.

-CAfile /Users/……/demoCA/ca.crt - jalur ka sertipikat root. (tanpa ieu paréntah teu dianggo pikeun kuring, sanajan jalur ka ca.crt ditulis dina file openssl.cfg)

-out data.file - Kuring ngirim data decrypted kana file data.file.

Algoritma pikeun ngagunakeun otoritas sertifikasi di sisi backend nyaéta kieu:

  • Pendaptaran pamaké:
    1. Kami nampi pamundut pikeun nyiptakeun sertipikat sareng simpen kana file user.csr.
    2. Urang nyimpen paréntah mimiti artikel ieu ka file kalawan extension .bat atanapi .cmd. Kami ngajalankeun file ieu tina kode, saatos nyimpen pamundut pikeun nyiptakeun sertipikat kana file user.csr. Kami nampi file sareng sertipikat user.crt.
    3. Kami maca file user.crt sareng kirimkeun ka klien.

  • Otorisasina pamaké:
    1. Kami nampi data anu ditandatanganan tina klien sareng simpen kana file authenticate.cms.
    2. Simpen paréntah kadua artikel ieu ka file kalawan extension .bat atanapi .cmd. Urang ngajalankeun file ieu ti kode, sanggeus saméméhna disimpen data ditandatanganan ti server di authenticate.cms. Simkuring nampi file kalawan data decrypted data.file.
    3. Urang baca data.file jeung pariksa data ieu validitas. Naon kahayang pikeun pariksa dijelaskeun dina tulisan munggaran. Upami datana sah, maka otorisasina pangguna dianggap suksés.

Pikeun nerapkeun algoritma ieu, anjeun tiasa nganggo basa program naon waé anu dianggo pikeun nyerat backend.

Dina tulisan salajengna urang bakal ningali kumaha cara damel sareng plugin Retoken.

Hatur nuhun kanggo nengetan!

sumber: www.habr.com

Tambahkeun komentar