środa, czerwca 03, 2015

Me hacker - debuger dobry

Google wzięło i zabiło stary dobry sposób logowania zwany ClientLogin.
Nie ma się co dziwić, był nie do końca bezpieczny i od dwóch albo i trzech lat mówili, że go zabiją.
Jednak było to zaskoczenie, bo mi aplikacja przestała działać ;-)
Niby żaden problem, bo wystarczy przejść na logowanie OAuth2 i wszystko będzie śmigać.

Sęk w tym, że biblioteki, których używa ta aplikacja nie wspierają OAuth2. Powstały gdy go jeszcze nie było ;-)

I co robić?

Hackować ;-)

Dobrze wycelowany kawałek debugera, do tego cudowna zdolność IntelliJ do dekompilacji kodu i okazuje się, że po tym jak się samemu już zdobędzie access_token dla usługi to trzeba go tylko jakoś wcisnąć bibliotekom.
Jeszcze chwila i już wiem, że wystarczy zrobić:
myService.setPrivateHeader("Authorization", "Bearer "+accessToken);

Dzięki temu znów mam pod postami na blogu listę podobnych postów ;-)
Chociaż jeszcze nie działa wszystko tak jak powinno, czyli bezobsługowo.


Podobne postybeta
Jak walczyć z gigantycznym kodem w Java'ie, część 1.6 - podłe metody prywatne ;-)
Testowanie boli...
Papa dla ClientLogin
Programowanie trudne ;-)
"We skrócie"