Ce guide vous montre comment installer un certificat SSL sur Google App Engine, à la fois de manière moderne (un certificat gratuit géré par Google, provisionné et renouvelé automatiquement par App Engine pour n’importe quel domaine personnalisé) et de manière traditionnelle (téléverser votre propre certificat tiers lorsque vous avez besoin d’une CA spécifique, d’un certificat EV/OV, ou d’un wildcard). App Engine est un PaaS entièrement géré, donc tout cela se passe dans la Google Cloud Console ou via la CLI gcloud ; vous ne vous connectez jamais à un serveur.
Prérequis
Avant d’installer un certificat, assurez-vous que les éléments suivants sont en place :
- Une application App Engine déployée (environnement standard ou flexible) dans un projet Google Cloud.
- Un domaine enregistré que vous contrôlez, avec accès à ses enregistrements DNS.
- Le domaine vérifié pour votre compte Google via Google Search Console ou Webmaster Central (App Engine y lit la propriété vérifiée).
- La CLI gcloud installée et authentifiée, si vous préférez la ligne de commande à la Console.
- Le rôle Propriétaire, Éditeur ou Administrateur App Engine sur le projet.
Les domaines personnalisés et le SSL sur App Engine fonctionnent dans cet ordre : vérifier le domaine, le mapper à votre application, pointer le DNS vers App Engine, puis soit laisser Google provisionner un certificat géré, soit téléverser le vôtre.
Option 1 : SSL gratuit géré par Google (recommandé)
Les certificats gérés par Google sont gratuits, provisionnés automatiquement via Let’s Encrypt, et renouvelés automatiquement aussi longtemps que le domaine reste mappé. C’est l’option par défaut pour tout nouveau domaine personnalisé sur App Engine et c’est le bon choix pour la grande majorité des sites. Les certificats gérés ne prennent pas en charge les wildcards : chaque nom d’hôte (par exemple example.com et www.example.com) est couvert par son propre certificat.
Étape 1 : Vérifier la propriété de votre domaine
Dans votre navigateur, connectez-vous à Google Search Console avec le même compte Google qui possède le projet Cloud, ajoutez votre domaine comme propriété, et complétez une des méthodes de vérification (l’enregistrement DNS TXT est la plus fiable). App Engine ne vous permettra pas de mapper un domaine que vous n’avez pas vérifié.
Étape 2 : Mapper le domaine personnalisé dans la Console
- Ouvrez la Google Cloud Console et sélectionnez votre projet.
- Dans le menu de navigation, choisissez App Engine > Settings.
- Ouvrez l’onglet Custom Domains et cliquez sur Add a custom domain.
- Choisissez le domaine vérifié dans la liste déroulante, puis saisissez les sous-domaines que vous souhaitez servir (généralement la racine example.com et www.example.com).
- Cliquez sur Save mappings, puis suivez les instructions à l’écran pour ajouter les enregistrements A, AAAA, et CNAME suggérés chez votre fournisseur DNS.
Pour faire la même chose depuis la ligne de commande, exécutez :
gcloud app domain-mappings create www.example.com --project=YOUR_PROJECT_ID
gcloud app domain-mappings create example.com --project=YOUR_PROJECT_ID
Étape 3 : Attendre le certificat géré
Une fois le DNS propagé, App Engine demande automatiquement un certificat Let’s Encrypt pour chaque nom d’hôte mappé. Le provisionnement est généralement rapide, mais la propagation DNS peut prendre jusqu’à 24 heures. Vérifiez le statut avec :
gcloud app domain-mappings list --project=YOUR_PROJECT_ID
Chaque mappage affiche un état SSL de MANAGED_CERTIFICATE_STATUS: OK lorsque le certificat est actif. Pendant l’émission, vous verrez PROVISIONING ou PENDING_DNS ; cela se résout généralement une fois que les enregistrements DNS pointent vers les IP de Google.
Étape 4 : Forcer le HTTPS pour les visiteurs (environnement standard)
Dans l’environnement standard d’App Engine, redirigez chaque requête vers HTTPS en ajoutant secure: always à chaque gestionnaire dans app.yaml :
handlers:
- url: /.*
script: auto
secure: always
redirect_http_response_code: 301
Déployez le changement avec gcloud app deploy. Dans l’environnement flexible, gérez la redirection HTTP vers HTTPS au niveau de l’application ou de l’équilibreur de charge.
Option 2 : Téléverser votre propre certificat SSL tiers
Choisissez cette voie lorsque vous avez besoin d’un certificat wildcard, d’un certificat OV ou EV d’une autorité de certification spécifique, ou d’un certificat déjà émis pour votre domaine. App Engine accepte un seul fichier PEM contenant le certificat feuille et tous les certificats intermédiaires, plus une clé privée RSA non chiffrée au format PEM. Un maximum de cinq certificats au total est autorisé dans le fichier PEM téléversé (un certificat feuille plus jusqu’à quatre intermédiaires), et les certificats téléversés peuvent être réutilisés entre projets au sein de la même organisation Cloud.
Étape 1 : Générer la CSR et commander le certificat
Si vous avez déjà généré votre CSR et reçu le certificat émis par votre CA, passez directement à l’étape 2.
Une CSR (Certificate Signing Request) est un bloc de texte codé contenant vos données de contact et de domaine que la CA utilise pour vérifier et signer votre certificat. Vous avez deux façons de la créer :
- Utilisez notre générateur de CSR pour produire la CSR et la clé privée dans votre navigateur.
- Générez-la localement avec OpenSSL ; consultez comment générer une CSR sur Google App Engine.
Soumettez la CSR (incluant les marqueurs —–BEGIN CERTIFICATE REQUEST—– et —–END CERTIFICATE REQUEST—–) à la CA lors de votre commande. Conservez la clé privée correspondante dans un endroit sécurisé ; vous en aurez besoin lors de l’installation.
Étape 2 : Combiner le certificat et la chaîne dans un seul fichier PEM
Si la CA a fourni des fichiers séparés (votre certificat serveur plus un ou plusieurs intermédiaires), concaténez-les dans l’ordre correct (votre certificat d’abord, les intermédiaires après). Ouvrez un terminal dans le dossier contenant les fichiers et exécutez :
cat yourdomain.crt intermediate.crt > concat.crt
Sur Windows PowerShell, l’équivalent est :
Get-Content yourdomain.crt, intermediate.crt | Set-Content concat.crt
Le résultat est un fichier de certificat encodé en PEM avec la chaîne complète. Si vous devez également convertir des formats (par exemple de .pfx ou .p12 vers PEM), utilisez nos outils SSL.
La clé privée doit être une clé RSA non chiffrée encodée en PEM (par exemple myserver.key.pem). Si la vôtre est protégée par mot de passe, retirez la phrase secrète avec :
openssl rsa -in encrypted.key -out myserver.key.pem
Étape 3 : Téléverser le certificat dans la Cloud Console
- Ouvrez la Google Cloud Console et sélectionnez votre projet.
- Allez dans menu de navigation > App Engine > Settings, puis ouvrez l’onglet SSL Certificates.
- Cliquez sur Upload a new certificate.
- Donnez un nom au certificat, puis téléversez concat.crt sous PEM encoded X.509 public key certificate et myserver.key.pem sous Unencrypted PEM encoded RSA private key.
- Cliquez sur Upload.
Étape 4 : Assigner le certificat à vos domaines
Sur la page de détails du certificat, sélectionnez les domaines personnalisés que vous souhaitez sécuriser, puis cliquez sur Save. Si un domaine utilise actuellement un certificat géré par Google, désactivez d’abord le mode géré pour celui-ci ; sinon le téléversement ne sera pas appliqué.
Étape 5 (optionnelle) : Téléverser et lier depuis la CLI gcloud
La même opération depuis la ligne de commande :
gcloud app ssl-certificates create
--display-name="example.com 2026"
--certificate=concat.crt
--private-key=myserver.key.pem
La commande retourne l’identifiant du nouveau certificat. Liez-le à un domaine mappé et désactivez le mode géré pour ce mappage :
gcloud app domain-mappings update www.example.com
--certificate-id=CERT_ID
--certificate-management=manual
Pour revenir plus tard à un certificat gratuit géré par Google, exécutez :
gcloud app domain-mappings update www.example.com
--certificate-management=automatic
Remarques et limites
- Les certificats gérés ne couvrent pas les wildcards. Pour *.example.com, téléversez un certificat wildcard comme dans l’Option 2.
- Let’s Encrypt limite l’émission à 50 certificats gérés par semaine par domaine de base. Cette limite pose rarement problème, mais elle compte si vous mappez de nombreux sous-domaines à la fois.
- Les certificats téléversés qui ne sont assignés à aucun domaine sont supprimés automatiquement après 30 jours.
- Le maximum est d’un certificat feuille plus quatre intermédiaires dans un seul fichier PEM téléversé.
- Un certificat téléversé est visible dans tous les projets de votre organisation Cloud, ainsi un seul wildcard peut être réutilisé.
Tester l’installation SSL
Ouvrez votre site via https:// et confirmez la présence du cadenas, puis effectuez une analyse plus approfondie avec notre SSL Checker pour un rapport instantané sur le certificat, la chaîne, et la prise en charge des protocoles.
Questions fréquemment posées
Oui. Une fois que vous avez mappé un domaine personnalisé vérifié à votre application App Engine et pointé le DNS vers Google, App Engine provisionne automatiquement un certificat SSL gratuit via Let’s Encrypt et le renouvelle pour vous. Vous ne payez rien pour cela et n’avez rien à téléverser.
Les certificats gratuits gérés par Google ne prennent pas en charge les wildcards. Pour sécuriser *.example.com, achetez un certificat wildcard, combinez le certificat feuille et les intermédiaires dans un seul fichier PEM, puis téléversez-le sous App Engine > Settings > SSL Certificates (Option 2 ci-dessus).
App Engine ne peut pas émettre un certificat Let’s Encrypt jusqu’à ce que les enregistrements DNS de votre domaine pointent vers les IP Google fournies lors de la création du mappage. Vérifiez que les enregistrements A, AAAA, et CNAME correspondent aux valeurs affichées sous Custom Domains, puis attendez la propagation DNS, qui peut prendre jusqu’à 24 heures. Exécutez gcloud app domain-mappings list pour vérifier à nouveau le statut.
Dans l’environnement standard, ajoutez secure: always (et éventuellement redirect_http_response_code: 301) à chaque gestionnaire dans app.yaml, puis redéployez avec gcloud app deploy. Dans l’environnement flexible, effectuez la redirection au niveau de l’application ou de l’équilibreur de charge.
Seulement si vous avez téléversé le vôtre. Les certificats gérés par Google sont renouvelés automatiquement aussi longtemps que le domaine reste mappé et que le DNS pointe toujours vers App Engine. Les certificats tiers téléversés expirent à la date fixée par la CA (actuellement jusqu’à environ un an pour les certificats TLS publics), vous devez donc répéter les étapes de téléversement et d’assignation avant cette date.
Economisez 10% sur les certificats SSL en commandant aujourd’hui!
Émission rapide, cryptage puissant, confiance de 99,99 % du navigateur, assistance dédiée et garantie de remboursement de 25 jours. Code de coupon: SAVE10


