feat: add support for OIDC auth
adds support for OIDC authentication mechanisms
fixes #148
Hmm.. I don't see any tests that currently exist! I guess that makes it easier because I don't need to write tests but.. I don't have a way to validate there & require manual testing.
after looking a bit, there's no support for login errors at all so I won't be modifying this to support them
Rebased against main to handle conflicts
Hi @imnotjames, I'd like to help test this and get it merged in. Any chance you've got a built image I can pull?
@samiralam @imnotjames Are you still interested in working on this?
If there's interest in it I can resolve the conflicts. Not sure what's needed to review it beyond that.
If there's interest in it I can resolve the conflicts. Not sure what's needed to review it beyond that.
I'm interested, and happy to help test.
@imnotjames Yes, I would like to finally merge it 👍
@samiralam sounds good, let me know what provider you've used. I can build the image for you if you'd like, once this branch gets rebased
@samiralam I have released an experimental build with OIDC support. Can you check if you can configure your provider with it?
The dockerhub tag is ossapps/splitpro:feat-148-oidc-eval
@samiralam I have released an experimental build with OIDC support. Can you check if you can configure your provider with it?
The dockerhub tag is
ossapps/splitpro:feat-148-oidc-eval
Awesome, I'll try it out this weekend and report back.
I was able to get my provider (PocketID) to work. It does require setting your NEXTAUTH_URL to https://[example.com], and I did need to manually enter the callback URL (https://[example.com]/api/auth/callback/oidc). Might be helpful to add comments to .env.example to that effect.
~~I'm getting the following error on the balances page in iOS when opening the PWA: `Application error: a client-side exception has occured while loading [split url] (see the browser console for more information). I'm unsure if it's related to this feature or not. It seems to work fine in Safari when not used as a PWA.~~ Seems to have worked itself out.