OmniAuth кіруін прокси арқылы бақылау
Проксиді қажет сұрауларда конфигурациялау үшін браузердің қайта бағыттауын және Rails жағындағы токен алмасуын қадағалаңыз.
Пайдаланушы «Кіру» түймесін басып, провайдер бетіне жетеді де, Rails-ке оралады. Келесі қадам бәрібір сәтсіз аяқталуы мүмкін, өйткені ол Rails серверінен жаңа қосылым ашады.
browser → provider authorization page → browser callback to Rails
Rails → provider token endpoint → Rails
Браузер авторизациялық қайта бағыттауды өзінің желілік конфигурациясымен орындайды. Rails артқы арнадағы токен алмасуын орнатылған OmniAuth стратегиясы таңдаған HTTP клиентімен жасайды. Корпоративтік проксидің артында жұмыс істейтін worker провайдерге жіберетін сұрауларында осы маршрутты қажет етеді.
OAuth 1.0-де де пайдаланушы қатынасты авторизациялауынан бұрын сервер жағында сұрау токенінің қадамы бар. OAuth 2.0-нің авторизация коды ағынында callback-тан кейін өзінің токен алмасуы бар. Нақты реттілік стратегияға байланысты, бірақ браузер мен қолданба сервері бөлек бастау нүктелері болып қалады.
Клиенттің конфигурациясын табыңыз
Стратегияны оның токенін және провайдер API сұрауларын жіберетін HTTP клиентіне дейін қадағалаңыз. Сол клиенттің құжатталған прокси опциясын пайдаланыңыз. Кейбір стратегиялар клиент опцияларын OAuth кітапханасына береді; басқалары оның астында HTTP қосылымын конфигурациялайды. Бір стратегия қабылдайтын опция автоматты түрде ортақ OmniAuth опциясы бола бермейді.
Провайдердің авторизация, токен және callback URL-дері оның нақты қызметтерін сипаттап тұрсын. Шығыс проксиі провайдерге жету үшін қолданылатын тасымал параметрі, ол callback мекенжайының орнын баспайды және OAuth сұрау параметрлеріне қосылатын өріс емес.
Кіруді бақылағанда соңғы аяқталған қадамды белгілеңіз. Көрсетілген провайдер кіру беті браузер маршрутының жұмыс істегенін дәлелдейді. Rails қабылдаған callback браузердің қайтып келгенін дәлелдейді. Келесі токен сұрауы — Rails процесінен келетін прокси қосылымын, шақыруды немесе провайдер жауабын тексеру орны.