Eksperyans nan itilize teknoloji Rutoken pou anrejistre ak otorize itilizatè yo nan sistèm nan (pati 3)

Good day!

Nan pati anvan an Nou te kreye avèk siksè pwòp sant sètifikasyon nou an. Ki jan li ka itil pou objektif nou yo?

Sèvi ak yon otorite lokal sètifikasyon, nou ka bay sètifika epi tou verifye siyati sou sètifika sa yo.

Lè yo bay yon sètifika bay yon itilizatè, otorite sètifikasyon an sèvi ak yon demann sètifika espesyal Pkcs#10, ki gen fòma fichye '.csr'. Demann sa a gen yon sekans kode ke otorite sètifikasyon an konnen ki jan yo analize kòrèkteman. Demann lan gen tou de kle piblik itilizatè a ak done pou kreye yon sètifika (yon etalaj asosyasyon ak done sou itilizatè a).

Nou pral gade ki jan yo resevwa yon demann pou yon sètifika nan pwochen atik la, ak nan atik sa a mwen vle bay kòmandman prensipal yo nan otorite sètifikasyon an ki pral ede nou ranpli travay nou an sou bò backend.

Se konsa, premye nou dwe kreye yon sètifika. Pou fè sa nou itilize kòmandman an:

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

ca se kòmandman openSSL ki gen rapò ak otorite sètifikasyon an,
-pakèt - anile demann konfimasyon lè w ap jenere yon sètifika.
user.csr — mande pou kreye yon sètifika (dosye nan fòma .csr).
user.crt - sètifika (rezilta lòd la).

Pou kòmandman sa a travay, yo dwe konfigirasyon otorite sètifikasyon an egzakteman jan sa dekri nan pati anvan atik la. Sinon, w ap bezwen anplis presize ki kote sètifika rasin otorite sètifikasyon an.

Kòmand verifikasyon sètifika:

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

cms se yon kòmandman openSSL ki itilize pou siyen, verifye, ankripte done ak lòt operasyon kriptografik lè l sèvi avèk openSSL.

-verify - nan ka sa a, nou verifye sètifika a.

authenticate.cms - yon fichye ki gen done ki siyen ak sètifika ki te bay pa lòd anvan an.

-enfòme PEM - yo itilize fòma PEM.

-CAfile /Users/……/demoCA/ca.crt - chemen sètifika rasin lan. (san sa a kòmandman an pa t 'travay pou mwen, byenke chemen yo nan ca.crt yo te ekri nan dosye a openssl.cfg)

-out data.file — Mwen voye done dechifre yo nan fichye data.file la.

Algorithm pou itilize yon otorite sètifikasyon sou bò backend se jan sa a:

  • Enskripsyon itilizatè:
    1. Nou resevwa yon demann pou kreye yon sètifika epi sove li nan fichye user.csr la.
    2. Nou sove premye kòmandman atik sa a nan yon dosye ki gen ekstansyon .bat oswa .cmd. Nou kouri fichye sa a soti nan kòd, li te deja sove demann lan pou kreye yon sètifika nan fichye user.csr la. Nou resevwa yon fichye ak sètifika user.crt.
    3. Nou li fichye user.crt a epi voye l bay kliyan an.

  • Otorizasyon itilizatè:
    1. Nou resevwa done ki siyen nan men kliyan an epi sove li nan fichye authenticate.cms.
    2. Sove dezyèm kòmandman atik sa a nan yon dosye ki gen ekstansyon .bat oswa .cmd. Nou kouri fichye sa a soti nan kòd la, li te deja sove done yo siyen nan sèvè a nan authenticate.cms. Nou resevwa yon dosye ki gen done dechifre data.file.
    3. Nou li data.file epi tcheke done sa yo pou validite. Ki sa egzakteman yo tcheke yo dekri nan premye atik la. Si done yo valab, Lè sa a, otorizasyon itilizatè yo konsidere kòm siksè.

Pou aplike algoritm sa yo, ou ka itilize nenpòt langaj pwogramasyon ki itilize pou ekri backend la.

Nan pwochen atik la nou pral gade ki jan yo travay ak Plugin Retoken la.

Mèsi pou atansyon ou!

Sous: www.habr.com

Add nouvo kòmantè