Praćenje OmniAuth prijave kroz proxy
Pratite preusmjeravanje u pregledniku i razmjenu tokena na strani Railsa da biste konfigurisali proxy za zahtjeve kojima je potreban.
Korisnik klikne „Prijava“, dođe na stranicu provajdera i vrati se u Rails. Sljedeći korak ipak može propasti jer započinje novu vezu s Rails servera.
browser → provider authorization page → browser callback to Rails
Rails → provider token endpoint → Rails
Preglednik prati preusmjeravanje za autorizaciju koristeći vlastitu mrežnu konfiguraciju. Rails obavlja razmjenu tokena povratnim kanalom koristeći HTTP klijent koji odabere instalirana OmniAuth strategija. Radnik koji radi iza korporativnog proxyja treba tu rutu za svoje zahtjeve provajderu.
OAuth 1.0 također ima serverski korak tokena zahtjeva prije nego korisnik odobri pristup. Tok koda za autorizaciju OAuth 2.0 ima vlastitu razmjenu tokena nakon povratnog poziva. Točan redoslijed zavisi od strategije, ali preglednik i aplikacijski server ostaju različite početne točke.
Pronađite konfiguraciju klijenta
Pratite strategiju do HTTP klijenta koji šalje njen token i zahtjeve prema API-ju provajdera. Koristite dokumentovanu opciju proxyja tog klijenta. Neke strategije prosljeđuju opcije klijenta OAuth biblioteci; druge konfigurišu HTTP vezu ispod nje. Opcija koju prihvata jedna strategija nije automatski zajednička OmniAuth opcija.
Neka URL-ovi za autorizaciju, token i povratni poziv provajdera opisuju njegove stvarne usluge. Izlazni proxy je transportno podešavanje za dolazak do provajdera, a ne zamjenska adresa povratnog poziva ni polje koje se dodaje u parametre OAuth zahtjeva.
Kada pratite prijavu, označite posljednji završeni korak. Prikazana stranica prijave provajdera dokazuje da je ruta preglednika radila. Povratni poziv koji Rails primi dokazuje da se preglednik vratio. Naredni zahtjev za token je mjesto na kojem treba provjeriti proxy vezu, izazov ili odgovor provajdera iz Rails procesa.