pyfa-org / Pyfa

Python fitting assistant, cross-platform fitting tool for EVE Online
GNU General Public License v3.0
1.61k stars 406 forks source link

SSO Login not possible #2563

Open muelli01 opened 9 months ago

muelli01 commented 9 months ago

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.

DarkFenX commented 9 months ago

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 commented 9 months ago

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)

muelli01 commented 9 months ago

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..

DarkFenX commented 9 months ago

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:

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.