Google oauth2 verification on Basic Hosting

I’m kicking the tires on a trial site with the intention of going to paid Basic Hosting, so I need my functionality to work with Basic. Google authentication is supposed to be available at the Basic level, and I have successfully set this up and tested it with my Google dev account.

In order to push my Google oauth2 project to prod, I need to provide domain validation. The instructions here provide two methods: 1) DNS configuration for a TXT record, or 2) a meta tag in the HTML template header.

Now, I am not sure I even have access to DNS configuration with discourse.group hosting, nor do I want to configure the DNS. The whole point of paying the $50/month is to not have to drill down to that level.

The meta header tag, on the other hand, fits right in as a dashboard task, which is fine with me. The problem here is, the only way to add that tag from the dashboard requires creating a theme component, and themes are not available on Basic. That’s fine insofar as I am content with the Basic themes, and don’t really need the theming feature, per se. But but now I appear to be trapped in a requirements loop where I am locked out of an advertised feature of Basic, due to Google’s verification needs and Discourse’s hosting restrictions preventing me from providing that verification.

Am I missing another way of providing Google the domain verification they need for me to get my oauth2 project pushed into prod?

1 Like

I’m stumped on this one. The Google documentation also says

Make sure that your homepage meets the following requirements:

  • Your homepage must be publicly accessible, and not behind a sign-in page.

I configured Google logins for a Discourse site that I’ve setup for testing yesterday. My Google app is in test mode. When I click the Publish button I’m seeing this:

Can anyone confirm that they have had to complete these steps, including creating a YouTube video that shows how they plan to use the Google user data?

Has anyone managed to get this to work on a Discourse site that’s on the Basic plan?

@simon, thanks again for looking at this stuff during the weekend.

Having jumped through these hoops, here is my experience.

  1. Google asked for privacy policy and TOS URLs, and fortunately discourse has me covered here, so that’s all good.

  2. So far at least, no actual demand to provide a YouTube video has surfaced, and I am doubtful one is forthcoming, if for no other reason than no scopes have been added to this oauth2 project.

  3. I did provide a written explanation that I was not requesting any scopes whatsoever, since we don’t need any actual user data in our use case. We just need the authentication outcome. So I made that clear in the written explanation.

  4. And here we come to crux of the matter, where you go to the Google Search Console to verify your provided domain (myforum.discourse.group). There are pretty good instructions here on meta.discourse.org for this process, where you provide either the host name or the full URL to get either the TXT record or a series of options that include hosting a html file, or adding the meta tag, or configuring verification through Google Analytics, etc. This is where I appear to be blocked.

2 Likes

Can I throw a follow-up question to bump this issue?

Would support for a paid Basic account allow for a request ticket to have the TXT record configured on the DNS, or allow for adding the host verification file from Google to the site?

Is there a practical workaround for getting Google oauth2 into production on Basic?

2 Likes

Google authentication is listed as a feature of the Basic plan: Discourse pricing | Discourse - Civilized Discussion. It is possible that Discourse have already configured the discourse.group domain in a way that allows for it to work. (Maybe verification can be done on the top level domain in a way that also verifies subdomains.) It’s also possible that you’re the first person who has tried to set it up.

The reason for the delay in getting your questions answered is because the Discourse team members who could best answer them are away at a meeting this week. I’ll be sure to follow up on it with them when they get back if this doesn’t get sorted out this week.

2 Likes

Bumping this in case it got lost while the Discourse team was at their meeting. Feel free to delete this post.

I’m not seeing an obvious way to verify Google OAuth for sites on Discourse’s Basic plan. The only workaround I can see is to keep the app in testing mode. In testing mode Google will allow the app to be used by fewer than 100 users.

4 Likes

Ah, this may explain another support topic I’ve seen. Let me see what I can find out. :+1:

4 Likes

I come bearing bad news… :frowning:

Unfortunately, you’re both right. Verifying the Google login needs either a TXT record or a <meta tag, and neither of these methods are available on the Basic plan.

Due to the workarounds needed to make this available on the Basic plan, and how few people have raised the issue since the plan was launched, it’s been decided not to support this feature.

We’ve now updated our pricing page to reflect that Google Authentication is available from the Standard plan or higher.

Sorry for the delay in working this through, and that it’s not better news. :pray:

2 Likes