Pyfa icon indicating copy to clipboard operation
Pyfa copied to clipboard

SSO Login not possible

Open muelli01 opened this issue 1 year ago • 4 comments

v2.57.3 Linux Appimage

Downloaded, executed and then: -> Character -> Manage ESI Characters -> Add Character

This opens an empty browser window. After googling around I found out, that Pyfa should open a browser window and go to https://pyfa.io/oauth/authorize When I enter this URL manually, I get an 404 error.

Auswahl_046

When I switch to "manual" I get the empty browser window again, plus an empty text box from pyfa.

muelli01 avatar Dec 22 '23 10:12 muelli01

It seems to work for me (just tried on the latest appimage).

Also, pyfa opens CCP-hosted service with callback to https://pyfa-org.github.io/Pyfa/callback?code=<code>&state=<state?, the URL you linked is legacy.

Are there any errors in pyfa logs (in ~/.pyfa)?

DarkFenX avatar Dec 24 '23 03:12 DarkFenX

Some people report it might be browser-based: https://www.reddit.com/r/Eve/comments/18pk0tr/pyfa_macos_1421_wont_link_via_eve_sso/ (i am using firefox too)

DarkFenX avatar Dec 24 '23 03:12 DarkFenX

Thanks for trying to help!

There are no logs in ~/.pyfa after I start it, encounter the problem and close it again.... If I had that code I could try manually, but I never get that far....

edit: OK after making firefox the default it works. Usually I am using waterfox..

muelli01 avatar Dec 24 '23 08:12 muelli01

Personally I just always use firefox, so no wonder I have never seen this issue. I wonder what the difference between browsers is, which causes others not to work in pyfa's case. Most likely one of security/privacy settings.

ESI login is not too complicated. It works like this:

  • you press "add character" button
    • pyfa starts local server to serve callback
    • pyfa opens EVE login/auth page, with callback URI being one of parameters sent to it (which directs to https://pyfa-org.github.io/Pyfa/callback)
  • you log in, choose character
    • after successful authentication CCP servers call that page
    • that page somehow (i don't remember how, blitzmann explained it to me but it was long time ago) gets it to the http server
    • http server feeds info to pyfa, at this point login is completed

My guess would be that issue is somewhere between callback url https://pyfa-org.github.io/Pyfa/callback and the server. But without knowing how exactly it works and without having browsers at hand it's hard.

By the way, you can always choose manual authentication method, it avoids use of the server altogether (you copy code from the page to pyfa box yourself). It most likely will work in your browser.

DarkFenX avatar Dec 24 '23 11:12 DarkFenX