Leis an dreuchd seo tha mi airson snàithlean artaigilean fhosgladh a tha coisrigte do IdentityServer4. Feuch an tòisich sinn leis na bun-bheachdan bunaiteach.
Is e am protocol dearbhaidh as gealltanach an-dràsta , agus tha am protocol ùghdarrachaidh (a 'toirt seachad ruigsinneachd). . a’ cur an dà phròtacal seo an gnìomh. Tha e air a bharrrachadh airson fuasgladh duilgheadasan àbhaisteach tèarainteachd.
na phròtacal dearbhaidh agus inbhe, chan eil e a’ toirt cothrom air goireasan (Web API), ach bhon uair sin tha e air a dhealbhadh a bharrachd air a’ phròtacal ùghdarrais , leigidh e leat paramadairean pròifil neach-cleachdaidh fhaighinn mar gum biodh cothrom agad air a’ ghoireas .
(JSON Web Token) na inbhe lìn a tha a’ mìneachadh dòigh air dàta luchd-cleachdaidh a ghluasad ann an cruth JSON ann an cruth crioptaichte.
na phròtacal ceadachaidh agus inbhe. Leigidh e le tagraidhean faighinn gu goireasan dìonta, leithid Web APIs.
Bheir sinn sùil air an diagram de bhith a’ faighinn cothrom air goireas dìonta agus tuigidh sinn na prìomh cheumannan agus briathrachas ris an deach gabhail:

-
Bidh an neach-dèiligidh ag iarraidh cead bhon neach-cleachdaidh dearbhadh às a leth. Luchd-ceannach na thagradh teachdaiche a gheibh cothrom air goireasan dìonta às leth sealbhadair an stòrais. stòras - is iad sin na seirbheisean dìon againn uile .
-
Leigidh an cleachdaiche leis an tagradh teachdaiche dearbhadh às a leth, mar eisimpleir, le bhith a’ dol a-steach do logadh a-steach agus facal-faire. Bidh an logadh a-steach agus am facal-faire mar thabhartas cead airson tagradh teachdaiche. Cleachdaiche (sealbhadair stòrais) - prògram no neach a bheir cothrom air goireasan dìonta, mar eisimpleir, le bhith a’ cur a-steach logadh a-steach (ainm-cleachdaidh) agus facal-faire (facal-faire);
-
Bidh an tagradh teachdaiche ag iarraidh tòcan ruigsinneachd bho
IdentityServer4le bhith a’ toirt seachad fiosrachadh mu do dheidhinn fhèin (client_id,client_secret), a’ toirt cead cead bhon neach-cleachdaidh (username,password) agus a’ toirt seachadgrant_typeиscope. An uairsin bidh am frithealaiche ùghdarrachaidh a’ dearbhadh dearbhteachd an neach-dèiligidh agus mion-fhiosrachadh sealbhadair an stòrais (logadh a-steach agus facal-faire).Tha protocol OAuth 2.0 a’ dearbhadh chan e a-mhàin an neach-cleachdaidh, ach cuideachd an tagradh teachdaiche a’ faighinn cothrom air goireasan. Airson an adhbhair seo, tha am protocol a 'toirt seachad crìochan leithid cliant_id и cliant_dìomhair.
cliant_id an e an aithnichear aplacaid teachdaiche a thathar a’ cleachdadhIdentityServer4gus fiosrachadh a lorg mun neach-dèiligidh.
cliant_dìomhair tha e coltach ri facal-faire airson tagradh teachdaiche agus air a chleachdadh gus tagradh teachdaiche a dhearbhadh airIdentityServer4. Cha bu chòir fios a bhith aig dìomhaireachd an neach-cleachdaidh ach don tagradh agus don API. Stèidhichte air na tha gu h-àrd, tha sinn a 'co-dhùnadh sin Feumaidh fios a bhith aig IdentityServer4 mun luchd-dèiligidh aige. -
Ma tha an tagradh air a dhearbhadh agus gu bheil an cead ceadachaidh dligheach,
IdentiryServer4a' cruthachadhaccess-токен(token ruigsinneachd) airson an aplacaid agus iuchair ùrachaidh roghainneil (refresh-токен). Tha am pròiseas ceadachaidh crìochnaichte. Ma tha an t-iarrtas mì-dhligheach no gun chead, tillidh am frithealaiche ceadachaidh còd le teachdaireachd mearachd iomchaidh. -
Bidh an tagradh teachdaiche a’ faighinn cothrom air API Lìn tèarainte airson dàta, a’ toirt seachad comharra ruigsinneachd airson cead. Ma tha an còd freagairt frithealaiche stòrais , no , an uairsin tha an comharra ruigsinneachd a chaidh a chleachdadh airson dearbhadh neo-dhligheach no air tighinn gu crìch.
-
Ma tha an comharradh dligheach,
Web APIa’ toirt seachad dàta don tagradh.
Seòrsan comharran
Clàraichte ann an IdentityServer4 tha cead aig luchd-ceannach iarraidh IdentityServer4 identity- tòcan, access- tòcan agus refresh- tòcan.
- comharra-aithneachaidh (token-aithneachaidh) - toradh a’ phròiseas dearbhaidh. Tha ID an neach-cleachdaidh agus fiosrachadh ann mu ciamar agus cuin a thèid an neach-cleachdaidh a dhearbhadh. Faodaidh tu a leudachadh leis an dàta agad fhèin.
- comharra ruigsinneachd - air a ghluasad gu API dìonta agus air a chleachdadh leis gus cead a thoirt don dàta aige (cead a-steach).
- tòcan ath-nuadhachaidh (refresh token) na paramadair roghnach as urrainn don t-seirbheisiche ùghdarrachaidh a thilleadh mar fhreagairt air iarrtas comharra ruigsinneachd.
Bheir sinn a-steach dà bhun-bheachd eile:
Url frithealaiche dearbhaidh - puing crìochnachaidh airson iuchair ruigsinneachd fhaighinn. Stiùiridh sinn a h-uile iarrtas airson solar agus ùrachadh iuchraichean ruigsinneachd chun URL seo.
Stòr Url - URL a’ ghoireas dìonta ris am feumar fios a chur thuige gus faighinn thuige, a’ dol seachad air an iuchair ruigsinneachd ann am bann an ùghdarrais.
Iarrtas iuchair ruigsinneachd
Gus iuchair ruigsinneachd iarraidh, nì an neach-dèiligidh POST iarrtas airson crìoch a chur air IdentityServer4 leis a' cheann a leanas
'Content-Type': 'application/x-www-form-urlencoded',
'Accept': 'application/json',
'Expect': '100-continue'
agus a 'dol seachad air na crìochan a leanas:
'grant_type' : 'password',
'username' : login,
'password' : password,
'scope' : 'scope',
'client_id' : 'client_id',
'client_secret' : '{client_secret}'
username, password, client_id и client_secret air an deasbad gu h-àrd. Bheir sinn sùil air na paramadairean a tha air fhàgail:
tabhartas_seòrsa - seòrsa tabhartais no seòrsa ceadachaidh. Tha an seòrsa cead ceadachaidh an urra ris an dòigh iarrtas ceadachaidh a chleachdas an tagradh, a bharrachd air na seòrsaichean cead a tha a’ faighinn taic bhon API. Anns a 'chùis againn bidh e gu diofar password, a tha a rèir an t-sònrachadh OAuth 2.0 a’ freagairt ri mion-fhiosrachadh ruigsinneachd sealbhadair an stòrais (ùghdarras le logadh a-steach agus facal-faire).
Pròtacal OAuth 2.0 a’ mìneachadh nan seòrsaichean thabhartasan a leanas a tha a dhìth eadar-obrachadh riatanach le luchd-cleachdaidh:
- còd ceadachaidh. 'S e aon de na seòrsaichean as cumanta cead ùghdarrachadh, oir gu math freagarrach airson tagraidhean taobh an fhrithealaiche, far nach eil còd stòr an tagraidh agus dìomhaireachd teachdaiche ruigsinneach dha daoine bhon taobh a-muigh;
- so-thuigsinn. Tha an seòrsa cead ceadachaidh air a chleachdadh le tagraidhean gluasadach agus lìn far nach urrainnear dìomhaireachd dìomhaireachd an neach-cleachdaidh a ghealltainn;
Agus na seòrsaichean thabhartasan sin faodar a chuir an gnìomh gun eadar-obrachadh cleachdaiche:
- mion-fhiosrachadh sealbhadair stòrais. Cha bu chòir an seòrsa cead seo a chleachdadh ach ma tha earbsa aig an neach-cleachdaidh san tagradh teachdaiche agus gu bheil an neach-cleachdaidh comhfhurtail le bhith a’ dol a-steach don logadh a-steach agus am facal-faire aige. Cha bu chòir an seòrsa cead seo a chleachdadh ach nuair nach eil roghainnean eile ann. Tha an seòrsa cead seo goireasach dha teachdaichean corporra a tha air teisteanasan luchd-cleachdaidh a chleachdadh san t-siostam aca mu thràth agus a tha airson gluasad gu
OAuth 2.0. - teisteanasan luchd-cleachdaidh. Air a chleachdadh nuair a gheibh an aplacaid cothrom air an API. Faodaidh seo a bhith feumail, mar eisimpleir, nuair a tha tagradh ag iarraidh am fiosrachadh clàraidh seirbheis aige fhèin ùrachadh no URI ath-stiùireadh, no faighinn gu fiosrachadh eile a tha air a stòradh ann an cunntas seirbheis an tagraidh tro API seirbheis.
farsaingeachd - Is e paramadair roghainneil a tha seo. Tha e a 'sònrachadh an raon. Cha toir an comharra ruigsinneachd a thilleas am frithealaiche ach cothrom air seirbheisean a tha taobh a-staigh an raon sin. An fheadhainn sin. is urrainn dhuinn grunn sheirbheisean a chur còmhla fo aon raon agus ma gheibh an neach-dèiligidh iuchair ruigsinneachd don raon seo, gheibh e cothrom air na seirbheisean sin uile. Faodar farsaingeachd a chleachdadh cuideachd gus còraichean ceadachaidh a chuingealachadh (mar eisimpleir, ruigsinneachd leughaidh no sgrìobhaidh)
Source: www.habr.com
