Authorization Code piešķīruma veids OAuth 2.0
Authorization Code piešķīruma veids ir viens no visbiežāk izmantotajiem OAuth 2.0 piešķīruma veidiem. Tas ir īpaši izstrādāts lietotnēm, kas var konfidenciāli uzturēt savu klienta noslēpumu, padarot to ideālu servera puses lietotnēm.
Kā darbojas Authorization Code?
- Novirzīšana:
- Klienta lietotne novirza lietotāju uz OAuth 2.0 autorizācijas servera autorizācijas galapunktu. Šī novirzīšana parasti ietver vaicājuma parametrus, piemēram,
client_id,response_type(iestatīts uz "code"),redirect_uri(kur autorizācijas serveris nosūtīs lietotāju pēc atļaujas piešķiršanas/noraidīšanas) unscope(kas norāda piekļuves līmeni, ko lietotne pieprasa).
- Lietotāja autentifikācija:
- Lietotājs piesakās autorizācijas serverī (ja vēl nav pieteicies) un pārskata klienta lietotnes piekļuves pieprasījumu.
- Autorizācijas koda izsniegšana:
- Ja lietotājs piešķir atļauju, viņš tiek novirzīts atpakaļ uz klienta lietotni, izmantojot iepriekš norādīto
redirect_uri. Novirzīšana ietver arī autorizācijas kodu URL adresē.
- Marķiera apmaiņa:
- Klienta lietotne apmaina autorizācijas kodu pret piekļuves marķieri, veicot POST pieprasījumu uz autorizācijas servera marķiera galapunktu. Šis pieprasījums satur autorizācijas kodu,
client_id,client_secret,redirect_uriungrant_type(iestatīts uz "authorization_code").
- Piekļuves marķiera izsniegšana:
- Ja autorizācijas serveris veiksmīgi verificē norādīto kodu un klienta akreditācijas datus, tas atgriež piekļuves marķieri (un pēc izvēles atsvaidzināšanas marķieri) klienta lietotnei.
- Piekļuve aizsargātajam resursam:
- Klienta lietotne izmanto iegūto piekļuves marķieri, lai veiktu pieprasījumus resursu serverim (API) lietotāja vārdā.
Kā konfigurēt Authorization Code?
- Reģistrējiet savu lietotni:
- Pirms OAuth plūsmas uzsākšanas reģistrējiet savu lietotni pie OAuth 2.0 pakalpojumu sniedzēja. Pēc veiksmīgas reģistrācijas jūs saņemsiet
client_idunclient_secret.
- Novirzīšanas URI iestatīšana:
- Reģistrējot savu lietotni, jums bieži tiks lūgts norādīt
redirect_uri. Šis URI ir vieta, kur autorizācijas serveris nosūtīs lietotājus pēc piekļuves piešķiršanas/noraidīšanas. Pārliecinieties, ka šis URI ir precīzs un drošs (parasti izmantojot HTTPS).
- Ieviesiet OAuth plūsmu:
- Izmantojiet bibliotēku vai SDK, kas ir saderīga ar jūsu lietotnes valodu un ietvaru, lai vienkāršotu šo procesu.
- Sāciet plūsmu, novirzot lietotājus uz autorizācijas servera autorizācijas galapunktu ar nepieciešamajiem vaicājuma parametriem.
- Ieviesiet galapunktu savā serverī, kas atbilst reģistrētajam
redirect_uri. Šis galapunkts apstrādās ienākošo autorizācijas kodu. - Apmainiet autorizācijas kodu pret piekļuves marķieri, veicot POST pieprasījumu uz marķiera galapunktu.
- Nodrošiniet klienta noslēpuma drošību:
- Nekad neatklājiet savu
client_secretklienta puses kodā. Izmantojiet to tikai servera pusē, apmainot autorizācijas kodu pret piekļuves marķieri.
- Marķiera glabāšana:
- Kad jums ir piekļuves marķieris, glabājiet to droši. Atkarībā no jūsu lietotnes vajadzībām tas var būt servera atmiņā, datu bāzē vai drošā sīkdatnē. Vienmēr izmantojiet HTTPS, lai nodrošinātu šifrētu komunikāciju.
- Marķiera derīguma termiņa apstrāde:
- Piekļuves marķieriem bieži ir īss derīguma termiņš. Ja jums ir atsvaidzināšanas marķieris, izmantojiet to, lai iegūtu jaunu piekļuves marķieri bez nepieciešamības lietotājam atkārtoti autentificēties.
Noslēguma pārdomas par Authorization Code
Authorization Code piešķīruma veids ir droša un uzticama metode lietotāja autorizācijas iegūšanai, īpaši servera puses lietotnēm. Papildu solis, apmainot autorizācijas kodu pret piekļuves marķieri, nodrošina, ka tiek novērsta tieša piekļuve lietotāja akreditācijas datiem. Ieviešot vienmēr piešķiriet prioritāti drošībai, izmantojot HTTPS un droši pārvaldot klienta noslēpumus un marķierus.