Ndjekja e një hyrjeje OmniAuth përmes një proxy
Ndiqni ridrejtimin e shfletuesit dhe shkëmbimin e tokenit në anën e Rails për të konfiguruar proxy-n në kërkesat që kanë nevojë për të.
Përdoruesi klikon „Hyr“, arrin faqen e ofruesit dhe kthehet në Rails. Hapi tjetër mund të dështojë gjithsesi, sepse hap një lidhje të re nga serveri Rails.
browser → provider authorization page → browser callback to Rails
Rails → provider token endpoint → Rails
Shfletuesi ndjek ridrejtimin e autorizimit me konfigurimin e vet të rrjetit. Rails kryen shkëmbimin e tokenit në kanalin e pasmë me klientin HTTP që zgjedh strategjia OmniAuth e instaluar. Një proces që punon pas një proxy korporative ka nevojë për atë rrugë në kërkesat e tij drejt ofruesit.
Edhe OAuth 1.0 ka një hap tokeni kërkese në anën e serverit përpara se përdoruesi të autorizojë aksesin. Rrjedha e kodit të autorizimit të OAuth 2.0 ka shkëmbimin e vet të tokenit pas kthimit të thirrjes. Sekuenca e saktë varet nga strategjia, por shfletuesi dhe serveri i aplikacionit mbeten pika nisjeje të dallueshme.
Gjeni konfigurimin e klientit
Ndiqni strategjinë deri te klienti HTTP që dërgon tokenin dhe kërkesat e tij drejt API-së së ofruesit. Përdorni opsionin e dokumentuar të proxy-s të atij klienti. Disa strategji i kalojnë opsionet e klientit një biblioteke OAuth; të tjerat konfigurojnë një lidhje HTTP nën të. Një opsion që pranohet nga një strategji nuk është automatikisht opsion i përbashkët i OmniAuth.
Lërini URL-të e autorizimit, të tokenit dhe të kthimit të thirrjes së ofruesit të përshkruajnë shërbimet e tij reale. Proxy-ja dalëse është një cilësim transporti për të arritur ofruesin, jo një adresë zëvendësuese e kthimit të thirrjes dhe as një fushë që i shtohet parametrave të kërkesës OAuth.
Kur ndiqni një hyrje, shënoni hapin e fundit të përfunduar. Faqja e hyrjes së ofruesit e shfaqur provon se rruga e shfletuesit funksionoi. Kthimi i thirrjes që Rails merr provon se shfletuesi u kthye. Kërkesa e radhës për token është vendi ku duhet të kontrollohet një lidhje proxy, një sfidë ose një përgjigje e ofruesit nga procesi Rails.