[spike:20h] github as authentication provider
We only support "OpenID" and "Fake" authentication so far. In #66703 we can see the problem with the high reliance on OpenID. In multiple places we are happy users of what github provides. We should research how feasible it is to support github as authentication provider, same as many other services do.
#2 Updated by cdywan over 1 year ago
- OAuth 2.0 which GitHub supports is pretty straightforward. Request a token via GET, get a temporary code and turn that into an access token.
- An application has to be registered. The domain has to match or the login will fail.
- Getting user details like nickname/fullname/email requires gitHub-specific API, although that's just one more GET.
- Mojolicious::Plugin::OAuth2 looks to make OAuth 2.0 easy to implement. Bonus points for supporting various other services by design.
- We could get the
gravataravatar and use it - this would be a new feature.
My proof of concept actually turned into a working implementation pretty quickly.
On a side note, we could hypothetically use GitHub credentails for needle editing. Although I didn't explore this further.
#4 Updated by cdywan over 1 year ago
- We could get the gravatar and use it - this would be a new feature.
We already support gravatar. Isn't that only based on the email?
Sorry, I actually meant avatar there. The email is optional if the user chooses to hide it. So using the provided avatar would work better in that case.
#7 Updated by okurz about 1 year ago
https://build.opensuse.org/request/show/811785 is accepted. PR has has at least still one open unresolved comment https://github.com/os-autoinst/openQA/pull/3150#discussion_r439386640
#8 Updated by cdywan about 1 year ago
- Status changed from In Progress to Feedback
The Feedback here is not going to be observed in production instances, as we don't plan to enable it for now. Although we might see some on other instances so I'll use the status like usual.
Btw docs are/will be here soon http://open.qa/docs/#authentication
#9 Updated by okurz about 1 year ago
- Status changed from Feedback to Resolved