Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Running Google App Engine application on multiple customer domains

I want to allow my company’s customers to integrate our Google App Engine application into their domains. For example, let’s say one customer owns the domain coolcustomer.com and wants to make our app accessible at service.coolcustomer.com.

This article discusses how to set up multi-tenancy internally, but does not mention how to associate client domains with an app.

Ideally, I’d like to allow customers to associate a sub-domain in a self-service manner. This, of course, brings up the issue of validating that the customer has permission to add a sub-domain to a domain name.

What is the best approach to accomplish this?

like image 571
Tony the Pony Avatar asked Nov 09 '10 16:11

Tony the Pony


People also ask

How do I add a domain to Google App Engine?

In the Google Cloud console, go to the Custom Domains tab of the App Engine Settings page. Click Add a custom domain. If your domain is already verified, the domain appears in the Select the domain you want to use section.

How many App Engine applications can be created in a project?

Each Cloud Platform project can contain one App Engine application.

How many App Engine applications can you create in a GCP project?

You can only have one App Engine App per project. However you can have multiple services and multiple version for each service. Yup. You can create multiple services under the same app.

How does Google App Engine Charge For instance usage?

App Engine flexible environment pricing These virtual machine resources are billed on a per-second basis with a 1 minute minimum usage cost. Billing for the memory resource includes the memory your app uses plus the memory that the runtime itself needs to run your app.


1 Answers

The customer will add your application as a service via their Google Apps control panel. Some of the details are outlined here.

To handle multi-tenancy you will probably want to use the server host name. From the host name, you'll be able to get the domain name to use for your namespace.

You'll have to handle validating the domain is a valid customer in your app. I would probably let them register, then provide instructions for setting up the Google Apps mapping.

If you want to allow them to login using Google Apps accounts tied to their domain you'll need to use OpenID (federated login).

like image 189
Robert Kluin Avatar answered Nov 07 '22 10:11

Robert Kluin