How to Install SSL Certificate on Google App Engine?

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading...
Install SSL Certificate on Google App Engine

Easy Steps to Install SSL Certificate on Google App Engine – GAE

For developers, Google App Engine (GAE) is a blessing because it allows them to concentrate on creating outstanding apps rather than worrying about server management. The question is, though, how secure are apps? But from a security perspective, an SSL Certificate can be crucial in ensuring that all private data is shielded from prying eyes.

Today, let’s learn how to install SSL on GAE in some easy steps. 

Before we begin with the SSL installation, it is important to generate Certificate Signing Requests.

Step 1: Generate a Certificate Signing Request (CSR)

The initial step towards installing an SSL certificate on a website or an application is generating a CSR. You can use a CSR generator tool for that. You will receive a CSR and a private key upon completing the CSR generation. Always remember to store the private key in a secure location.

Or

Use our Step by Step guide to Generate CSR in Google App Engine.

Step 2: Download and Extract the Certificate Files

You receive an email from CA (Certificate Authority) after you have passed your domain/organization verification process successfully. These files may be compressed in .zip format. You have to extract it to the server directory. Make sure the SSL is configured for custom domains. It can be done by using your Google Apps account.  

Step 3: Convert the Certificate to .pem Format

The next step is to convert the certificate into .pem format. For that, you can either use the automated SSL converter tool or open a text editor & copy all the details of certificate details in a specific order like this

Primary certificate: domain_name.crt

Intermediate certificate: certificate_provider.crt

—–BEGIN CERTIFICATE—–

Your Primary SSL certificate: domain_name.crt

—–END CERTIFICATE—–

—–BEGIN CERTIFICATE—–

Your Intermediate certificate: certificate_provider.crt

—–END CERTIFICATE—–

Note: Always keep the “BEGIN CERTIFICATE” and “END CERTIFICATE” marks as they recognize and validate the certificate. If you don’t include them, it may result in SSL errors or warnings.qa

The last step for this would be saving the file in the .pem format. 

Step-4: Activate the SSL Certificate for Custom Domain

  • Log in to the Google Apps Account you have. In case you have already added your app to Google apps, you can skip the next three steps.
  • The next three steps are for users who haven’t added their app to Google Apps.
  • Navigate to More Controls. From there, click on App Engine apps and then add Service
  • Here you have to fill in your application ID and press the Add it now button. 
  • You will be asked to accept the terms and conditions.
  • Click on Activate and proceed. 

Proceed from here in case your app is already in Google apps.

  • Connect your app with Google Apps and map it with a subdomain.
  • Your app’s URL will appear.
  • Now you can click on the Add new URL button if you want the Google Apps account’s primary domain to have its access.
  • The next step is to activate your SSL. For that, you must press Enable SSL for App Engine Applications and go to Security & to Advanced Settings > Show More > SSL for Custom Domains.
  • Here you must fill in your application ID.
  • Upon doing that, your SSL certificate will be activated.
  • Enter your application ID to activate your SSL.

After you have successfully activated the SSL certificate for a custom domain, the next step is redirection to the application’s App Engine Console. 

Step-5: Upload your Certificate

  • To upload your certificate, you must log into the Google Admin console.
  • From there, navigate to the Security tab and select Advanced Settings
  • If you want to see more options, click on Show More 
  • Next, click on SSL for custom domains and select Configure SSL Certificates. It will take you to the SSL configuration page.
  • Once on the SSL configuration page, click the Upload a New Certificate button. This will allow you to upload your SSL certificate to your Google App Engine.

Steps to Upload the Certificate

  • Locate the PEM encoded X.509 certificate section and click the Choose File button to select the domain_name.pem certificate file.
  • In the unencrypted PEM encoded RSA private key section, click Choose File. Here you have to opt for the domain_name.key private key file. (The private key is the one that you received during the CSR generation process.)
  • Once you have selected both the certificate and private key files, click the Upload button to complete the process.

After uploading the certificate, you can activate SSL for your custom domain on Google App Engine.

Step- 6: Configure your Certificate

  • Select the Serving mode option on the configuration page to configure the SSL certificate after uploading the certificate and key files.

The serving mode options available are “Not Serving,” “SNI (Server Name Indication),” and “SNI + VIP:<a VIP number>.”

  • Choose the serving mode that matches your server type
  • Once you have selected the serving mode, you can assign matching URLs by either selecting each matching URL from the drop-down box and clicking the Add button or by adding multiple matching URLs. It can be done by clicking on Assign all matching URLs.

You can always refer to the Google App Engine’s custom domain guideline if you don’t have any URLs to assign. To change the URL’s CNAME details, you can contact your DNS service provider. 

  • After assigning the matching URLs, click on the Save button.
  • It will complete the SSL configuration.
  • Your SSL certificate is uploaded and configured successfully.

That’s it! You have successfully installed an SSL certificate on Google App Engine. To check any possible errors, you can always use SSL check tool available online.

<?xml version="1.0" encoding="UTF-8"?><svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 109.7 29.02"><defs><style>.cls-1{fill:#fff;}</style></defs><path class="cls-1" d="m5.38,22.85c-3.1-.26-5.3-1.92-5.38-4.8h3.6c.1,1.1.67,1.85,1.78,2.09v-4.58c-2.47-.62-5.38-1.32-5.38-4.87,0-2.83,2.26-4.68,5.38-4.92v-1.94h1.54v1.94c3,.24,5.02,1.85,5.23,4.7h-3.62c-.1-.94-.67-1.66-1.61-1.94v4.54c2.5.65,5.42,1.3,5.42,4.85,0,2.45-1.92,4.73-5.42,4.97v1.94h-1.54v-1.97Zm0-10.25v-4.15c-1.1.17-1.87.84-1.87,2.06,0,1.13.77,1.7,1.87,2.09Zm1.54,3.38v4.2c1.22-.22,1.94-1.06,1.94-2.14s-.82-1.68-1.94-2.06Z"/><path class="cls-1" d="m17.62,8.33h-2.33v-3.1h5.78v17.5h-3.46v-14.4Z"/><path class="cls-1" d="m28.27,17.81c.26,1.39,1.15,2.18,2.71,2.18,1.97,0,2.83-1.46,2.83-5.4-.74,1.03-2.16,1.63-3.7,1.63-3.02,0-5.45-1.9-5.45-5.59,0-3.5,2.21-5.81,5.91-5.81,4.75,0,6.22,3.22,6.22,8.76,0,5.95-1.32,9.17-5.95,9.17-3.72,0-5.5-2.38-5.69-4.94h3.12Zm5.23-7.15c0-1.92-1.1-2.98-2.81-2.98s-2.81,1.18-2.81,2.93c0,1.58.89,2.88,2.93,2.88,1.68,0,2.69-1.13,2.69-2.83Z"/><path class="cls-1" d="m41.28,22.9c-1.22,0-2.09-.86-2.09-1.97s.86-1.97,2.09-1.97,2.04.86,2.04,1.97-.86,1.97-2.04,1.97Z"/><path class="cls-1" d="m49.54,17.81c.26,1.39,1.15,2.18,2.71,2.18,1.97,0,2.83-1.46,2.83-5.4-.74,1.03-2.16,1.63-3.7,1.63-3.02,0-5.45-1.9-5.45-5.59,0-3.5,2.21-5.81,5.91-5.81,4.75,0,6.22,3.22,6.22,8.76,0,5.95-1.32,9.17-5.95,9.17-3.72,0-5.5-2.38-5.69-4.94h3.12Zm5.23-7.15c0-1.92-1.1-2.98-2.81-2.98s-2.81,1.18-2.81,2.93c0,1.58.89,2.88,2.93,2.88,1.68,0,2.69-1.13,2.69-2.83Z"/><path class="cls-1" d="m64.56,17.81c.26,1.39,1.15,2.18,2.71,2.18,1.97,0,2.83-1.46,2.83-5.4-.74,1.03-2.16,1.63-3.7,1.63-3.02,0-5.45-1.9-5.45-5.59,0-3.5,2.21-5.81,5.9-5.81,4.75,0,6.22,3.22,6.22,8.76,0,5.95-1.32,9.17-5.95,9.17-3.72,0-5.5-2.38-5.69-4.94h3.12Zm5.23-7.15c0-1.92-1.1-2.98-2.81-2.98s-2.81,1.18-2.81,2.93c0,1.58.89,2.88,2.93,2.88,1.68,0,2.69-1.13,2.69-2.83Z"/><path class="cls-1" d="m81.79,0h3.29l-6.48,27.07h-3.29L81.79,0Z"/><path class="cls-1" d="m96.89,9.43h3.58l-8.23,19.59h-3.58l2.88-6.62-5.33-12.96h3.77l3.43,9.29,3.48-9.29Z"/><path class="cls-1" d="m105.62,22.73h-3.36v-13.3h3.36v2.06c.84-1.37,2.23-2.26,4.08-2.26v3.53h-.89c-1.99,0-3.19.77-3.19,3.34v6.62Z"/></svg>