Adding SSO after many users already signed up -- how to migrate them?

I just spoke to our team, and they agree, I’m prepared to pay someone to build a small Discourse plugin that would expose via an endpoint some JSON info about a user, given their email address.

I found discourse/app/models/user.rb at main · discourse/discourse · GitHub has “password_hash” salt and name, username. But it doesn’t have email. For that, I see user_email discourse/app/models/user_email.rb at main · discourse/discourse · GitHub

So given an email the plugin will just search user_email table by the mail, then find user_id and grab the user row, and send all the “safe” fields, including the salt.

For extra security, the requests can be signed via HMAC using a shared secret that can be provided to the plugin.

Does anyone want to make this one? Message me or reply here and let me know how to contact you. Hopefully it’s straightforward (a couple SELECTs and a check for HMAC if the secret was set). We’ll read the JSON.