Créer une autorité de certification racine
Cette page explique comment créer une autorité de certification racine dans un pool d'autorités de certification.
Une autorité de certification racine se trouve au sommet d'une hiérarchie d'infrastructure à clé publique (PKI) et est chargée de former l'ancre de confiance de l'infrastructure à clé publique. Pour participer correctement à une ICP et l'utiliser, un appareil, un logiciel ou un composant doit faire confiance à l'ICP. Pour ce faire, configurez l'appareil, le logiciel ou le composant de sorte qu'il fasse confiance à l'autorité de certification racine. Par conséquent, tous les certificats émis par l'autorité de certification racine sont approuvés.
Avant de commencer
- Assurez-vous de disposer du rôle IAM "CA Service Operation Manager" (
roles/privateca.caManager
) ou le rôle IAM "CA Service Admin" (roles/privateca.admin
). Pour en savoir plus, consultez la page Configurer des stratégies IAM. - Créez un pool d'autorités de certification.
- Déterminez vos paramètres d'autorité de certification.
Créer une autorité de certification racine
Une autorité de certification racine possède un certificat autosigné que vous devez distribuer aux magasins de confiance de vos clients. Le certificat de l'autorité de certification racine se trouve en haut de la chaîne de certificats. Aucune autre autorité de certification ne peut révoquer le certificat d'une autorité de certification. La LRC de l'autorité de certification racine ne s'applique qu'aux autres certificats émis par l'autorité de certification racine, mais pas à elle-même.
Console
Pour créer une autorité de certification racine, procédez comme suit :
Accédez à la page Certificate Authority Service de la console Google Cloud.
Cliquez sur l'onglet Gestionnaire de CA.
Cliquez sur Créer une autorité de certification.
Sélectionner le type d'autorité de certification
Pour configurer les paramètres permanents de l'autorité de certification, tels que le niveau, l'emplacement, la durée de vie et l'état opérationnel à la création, procédez comme suit:
- Sélectionnez Autorité de certification racine.
- Dans le champ Valide pour, saisissez la durée pendant laquelle vous souhaitez que les certificats émis par le certificat CA soient valides.
- Facultatif: sélectionnez un niveau pour l'autorité de certification.
- Cliquez sur Région, puis dans la liste, sélectionnez l'emplacement dans lequel vous souhaitez créer l'autorité de certification. Nous vous recommandons de créer l'autorité de certification géographiquement à proximité des clients de votre application. Pour en savoir plus, consultez la section Choisir le meilleur emplacement.
Facultatif: Sélectionnez l'état opérationnel de l'autorité de certification dans laquelle créer l'autorité de certification.
Facultatif: Cliquez sur Profil de certificat. Dans la liste, sélectionnez le profil de certificat correspondant au type de certificats que l'autorité de certification doit émettre.
Cliquez sur Suivant.
- Dans le champ Organisation (O), saisissez le nom de votre entreprise.
- Facultatif: dans le champ Unité organisationnelle (UO), saisissez la subdivision de l'entreprise ou l'unité commerciale.
- Facultatif: Dans le champ Nom du pays, saisissez un code de pays à deux lettres.
- Facultatif: dans le champ Nom de l'État ou de la province, saisissez le nom de votre État.
- Facultatif: dans le champ Nom de la localité, saisissez le nom de votre ville.
- Dans le champ Nom commun de l'autorité de certification (CN), saisissez le nom de l'autorité de certification.
- Dans le champ ID du pool, saisissez le nom du pool d'autorités de certification. Vous ne pouvez pas modifier le pool d'autorités de certification après avoir créé l'autorité de certification.
- Cliquez sur Suivant.
- Choisissez l'algorithme de clé qui répond le mieux à vos besoins. Pour en savoir plus sur le choix de l'algorithme de clé approprié, consultez Choisir un algorithme de clé.
- Cliquez sur Suivant.
Les étapes suivantes sont facultatives. Si vous ignorez ces étapes, les paramètres par défaut s'appliquent.
- Indiquez si vous souhaitez utiliser un bucket Cloud Storage géré par Google ou autogéré.
- Indiquez si vous souhaitez désactiver la publication des listes de révocation de certificats (LRC) et des certificats CA dans le bucket Cloud Storage.
- Cliquez sur Suivant.
Si vous ne sélectionnez pas de bucket Cloud Storage autogéré, CA Service crée un bucket géré par Google au même emplacement que l'autorité de certification.
La publication de certificats LRC et CA sur un bucket Cloud Storage est activée par défaut. Pour désactiver ces paramètres, cliquez sur les boutons d'activation.
Les étapes suivantes sont facultatives.
Si vous souhaitez ajouter des étiquettes à l'autorité de certification, procédez comme suit:
- Cliquez sur Ajouter un élément.
- Dans le champ Clé 1, saisissez la clé de libellé.
- Dans le champ Valeur 1, saisissez la valeur du libellé.
- Si vous souhaitez ajouter un autre libellé, cliquez sur Ajouter un élément. Ajoutez ensuite la clé et la valeur de libellé, comme indiqué aux étapes 2 et 3.
- Cliquez sur Suivant.
Examinez attentivement tous les paramètres, puis cliquez sur Créer pour créer l'autorité de certification.
gcloud
Pour créer un pool d'autorités de certification, exécutez la commande suivante:
gcloud privateca pools create POOL_ID
Remplacez POOL_ID par le nom du pool d'autorités de certification.
Pour en savoir plus, consultez la section Créer un pool d'autorités de certification.
Pour plus d'informations sur cette commande
gcloud
, consultez la page gcloud privateca pools create.Créez une autorité de certification racine dans le pool d'autorités de certification que vous avez créé.
gcloud privateca roots create ROOT_CA_ID --pool=POOL_ID \ --key-algorithm=KEY_ALGORITHM \ --subject="CN=my-ca, O=Test LLC"
Remplacez les éléments suivants :
- ROOT_CA_ID: nom de l'autorité de certification.
- POOL_ID: nom du pool d'autorités de certification.
- KEY_ALGORITHM: algorithme à utiliser pour créer une clé Cloud KMS. Cette option est facultative. Si vous n'incluez pas cet indicateur, l'algorithme de clé est défini par défaut sur
rsa-pkcs1-4096-sha256
. Pour en savoir plus, consultez la section concernant l'indicateur --key-algorithm.
Par défaut, l'autorité de certification est créée à l'état
STAGED
. Pour activer une autorité de certification par défaut, incluez l'option--auto-enable
.Si vous souhaitez utiliser un bucket Cloud Storage géré par le client pour publier des certificats CA et des LRC, ajoutez
--bucket bucket-name
à la commande. Remplacez bucket-name par le nom du bucket Cloud Storage.Pour afficher la liste complète des paramètres, exécutez la commande suivante:
gcloud privateca roots create --help
Terraform
Pour créer une autorité de certification racine à l'aide d'une clé gérée par Google, utilisez l'exemple de configuration suivant:
Pour créer une autorité de certification racine à l'aide d'une clé autogérée, utilisez l'exemple de configuration suivant:
Go
Pour vous authentifier auprès du service CA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour vous authentifier auprès du service CA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour vous authentifier auprès du service CA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
API REST
Créez une autorité de certification racine.
Méthode HTTP et URL :
POST https://privateca.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/caPools/POOL_ID/certificateAuthorities?certificate_authority_id=ROOT_CA_ID
Corps JSON de la requête :
{ "type": "SELF_SIGNED", "lifetime": { "seconds": 315576000, "nanos": 0 }, "config": { "subject_config": { "subject": { "organization": "ORGANIZATION_NAME", "common_name": "COMMON_NAME" } }, "x509_config":{ "ca_options":{ "is_ca":true }, "key_usage":{ "base_key_usage":{ "cert_sign":true, "crl_sign":true } } } }, "key_spec":{ "algorithm":"RSA_PKCS1_4096_SHA256" } }
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/operation-UUID", "metadata": {...}, "done": false }
Interrogez l'opération jusqu'à ce qu'elle soit terminée.
Méthode HTTP et URL :
GET https://privateca.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/operation-UUID
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/operation-UUID", "metadata": {...}, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.security.privateca.v1.CertificateAuthority", "name": "...", } }
Après avoir vérifié que l'autorité de certification fonctionne comme prévu, vous pouvez l'activer pour commencer à émettre des certificats à équilibrage de charge pour le pool d'autorités de certification.
Activer une autorité de certification racine
gcloud
Pour activer une autorité de certification racine, exécutez la commande gcloud
suivante:
gcloud privateca roots enable ROOT_CA_ID --pool=POOL_ID
Remplacez les éléments suivants :
- ROOT_CA_ID: nom de l'autorité de certification.
- POOL_ID: nom du pool d'autorités de certification.
Terraform
Si vous utilisez Terraform pour créer une autorité de certification racine, celle-ci est activée lors de la création. Pour créer une autorité de certification racine à l'état STAGED
, définissez le champ desired_state
sur STAGED
lors de la création de l'autorité de certification.
Vous pouvez définir le champ desired_state
sur ENABLED
ou DISABLED
après la création de l'autorité de certification.
Go
Pour vous authentifier auprès du service CA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour vous authentifier auprès du service CA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour vous authentifier auprès du service CA, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
API REST
Autorisez l'autorité de certification à émettre des certificats à partir du pool d'autorités de certification.
Méthode HTTP et URL :
POST https://privateca.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/caPools/POOL_ID/certificateAuthorities/ROOT_CA_ID:enable
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/operation-UUID", "metadata": {...}, "done": false }
Interrogez l'opération jusqu'à ce qu'elle soit terminée.
Méthode HTTP et URL :
GET https://privateca.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/operation-UUID
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/operation-UUID", "metadata": {...}, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.security.privateca.v1.CertificateAuthority", "name": "...", } }
Tester une autorité de certification
Pour vérifier qu'une autorité de certification est en mesure d'émettre des certificats, demandez un certificat au pool d'autorités de certification associé et mentionnez explicitement le nom de l'autorité de certification que vous souhaitez tester à l'aide de l'option --ca
.
Vous pouvez utiliser les méthodes suivantes pour demander un certificat à partir d'un pool d'autorités de certification:
- Demandez à CA Service de créer une clé privée ou publique.
- Générez votre propre clé privée ou publique et envoyez une demande de signature de certificat (CSR).
Il est plus facile d'utiliser une clé privée ou une clé publique générée automatiquement pour demander un certificat à une autorité de certification dans un pool d'autorités de certification. Cette section fournit des informations sur le test d'une autorité de certification à l'aide de cette méthode.
Pour demander un certificat à une autorité de certification d'un pool d'autorités de certification à l'aide d'une clé privée ou publique générée automatiquement, exécutez la commande gcloud
suivante:
gcloud privateca certificates create \
--issuer-pool=POOL_ID \
--ca=ROOT_CA_ID \
--generate-key \
--key-output-file=KEY_FILENAME \
--cert-output-file=CERT_FILENAME \
--dns-san=DNS_NAME
Remplacez les éléments suivants :
- POOL_ID: nom du pool d'autorités de certification.
- ROOT_CA_ID: identifiant unique de l'autorité de certification que vous souhaitez tester.
- KEY_FILENAME: fichier dans lequel la clé générée est écrite au format PEM.
- CERT_FILENAME: fichier dans lequel le fichier de chaîne de certificat encodé au format PEM est écrit L'ordre de la chaîne de certificats va de la feuille à la racine.
DNS_NAME: un ou plusieurs noms d'objet alternatifs (SAN) DNS séparés par une virgule.
L'option
--generate-key
génère une nouvelle clé privée RSA-2048 sur votre ordinateur.
Pour demander un certificat auprès d'une autorité de certification d'un pool d'autorités de certification à l'aide d'une demande de signature de certificat, ou pour en savoir plus sur la demande de certificats, consultez la section Demander un certificat et afficher les certificats émis.
Cloner les autorités de certification
Pour cloner une autorité de certification existante afin de la renouveler ou pour créer une autorité de certification avec la même configuration, exécutez la commande suivante:
gcloud privateca roots create NEW_CA_ID --pool=POOL_ID \
--from-ca=EXISTING_CA_ID \
--key-algorithm "ec-p384-sha384"
Remplacez les éléments suivants :
- NEW_CA_ID: identifiant unique de la nouvelle autorité de certification.
- POOL_ID: nom du pool d'autorités de certification dans lequel vous souhaitez créer l'autorité de certification.
L'option --from-ca
est compatible avec la création d'autorités de certification racine et subordonnées. L'autorité de certification existante doit se trouver dans le même pool d'autorités de certification que la nouvelle.
L'option --key-algorithm
copie toute la configuration de l'autorité de certification à partir de l'autorité de certification existante (à l'exception de la version de clé Cloud KMS et du bucket Cloud Storage). Toutefois, vous pouvez toujours remplacer les valeurs de configuration de la nouvelle autorité de certification en fournissant explicitement l'option appropriée. Par exemple, vous pouvez toujours spécifier "--subject SUBJECT pour utiliser un nouvel objet.
Si vous omettez l'option --key-algorithm
, l'algorithme est défini par défaut sur:
rsa-pkcs1-4096-sha256
pour les autorités de certification racine.rsa-pkcs1-2048-sha256
pour les autorités de certification subordonnées.
Pour plus d'informations sur cette commande gcloud
, consultez la page gcloud privateca roots create.
Étapes suivantes
- Découvrez comment créer une autorité de certification subordonnée.
- Découvrez comment demander des certificats.
- En savoir plus sur les modèles et les règles d'émission