I setup Auth0 and Google credentials and had it working using the free trial period within Auth0. this is for a side-project so I need to switch to the free tier "Custom Social" Auth0 logins. I followed these instructions but end up with the error "Invalid user id" in both the Auth0 test page and the app I had working with the Social Login that is pre-build by Auth0.
In GCP console I created a "Client ID for Web application"
https://MY_TENANT.uk.auth0.com
https://MY_TENANT.uk.auth0.com/login/callback
GCP "OAuth consent screen"
App Registration (just setting this to get it working)
https://auth0.com
https://auth0.com
https://auth0.com
auth0.com
/auth/userinfo.email
my email address
It generates
XXX.apps.googleusercontent.com
YYY
Over in Auth0 I created a new Custom Socal Login
https://accounts.google.com/o/oauth2/auth
https://oauth2.googleapis.com/token
openid email
(spaces set on)GCP_CLIENT_ID
GCP_CLIENT_SECRET
function(accessToken, ctx, cb) {
var p = {
accessToken: accessToken,
id_token: ctx.id_token
};
cb(null,p);
}
Pres test, Login screen displayed, select test account, then the error is displayed
I was badly parsing the response in the fetch javascript.
the user_id
is required, but I'd got the parsing part in my real code wrong
I have a simple httpDump app written in go that I use for these kinds of things, it just dumps whatever gets sent to it and returns the time.
I used ngrok to forward my local httpDump to the internet and updated the fetch script to point to my laptop.
The http request worked, which was nice because to that point I had no idea where the error was.
I then manually called google with the token and it's response was
{
"sub": "a number",
"picture": "https://lh3.googleusercontent.com/a-/some_number",
"email": "my.email@example.com",
"email_verified": true
}
and not the structure I'd copied from the Auth0 article I'd found.