Configurer des stratégies IAM

Cette page explique comment configurer des stratégies IAM (Identity and Access Management) qui permettent aux membres de créer et de gérer des ressources de Certificate Authority Service. Pour en savoir plus sur IAM, consultez la présentation d'IAM.

Stratégies IAM générales

Dans le service d'autorité de certification, vous attribuez des rôles IAM aux utilisateurs ou aux comptes de service pour créer et gérer des ressources de service d'autorité de certification. Vous pouvez ajouter ces liaisons de rôle aux niveaux suivants:

  • Niveau du pool d'autorités de certification pour gérer l'accès à un pool d'autorités de certification spécifique et aux autorités de certification de ce pool.
  • Au niveau du projet ou de l'organisation pour accorder l'accès à tous les pools d'autorités de certification de cette portée.

Les rôles sont hérités s'ils sont accordés à un niveau de ressource supérieur. Par exemple, un utilisateur auquel le rôle d'auditeur (roles/privateca.auditor) est attribué au niveau du projet peut afficher toutes les ressources du projet. Les stratégies IAM définies sur un pool d'autorités de certification sont héritées par toutes les autorités de certification de ce pool.

Vous ne pouvez pas attribuer de rôles IAM aux certificats et aux ressources d'autorité de certification.

Stratégies IAM conditionnelles

Si vous disposez d'un pool d'autorités de certification partagé pouvant être utilisé par plusieurs utilisateurs autorisés à demander différents types de certificats, vous pouvez définir des conditions IAM pour appliquer un accès basé sur les attributs afin d'effectuer certaines opérations sur un pool d'autorités de certification.

Les liaisons de rôles conditionnelles IAM vous permettent d'accorder l'accès aux comptes principaux que si les conditions spécifiées sont remplies. Par exemple, si le rôle Demandeur de certificat est associé à l'utilisateur alice@example.com dans un pool d'autorités de certification avec la condition que les SAN DNS demandés soient un sous-ensemble de ['alice@example.com', 'bob@example.com'], cet utilisateur ne peut demander des certificats à partir du même pool d'autorités de certification que si le SAN demandé est l'une de ces deux valeurs autorisées. Vous pouvez définir des conditions sur les liaisons IAM à l'aide d'expressions CEL (Common Expression Language). Ces conditions peuvent vous aider à restreindre davantage le type de certificats qu'un utilisateur peut demander. Pour en savoir plus sur l'utilisation d'expressions CEL pour les conditions IAM, consultez la section Dialecte CEL (Common Expression Language) pour les règles IAM.

Avant de commencer

  • Activez l'API.
  • Créez une autorité de certification et un pool d'autorités de certification en suivant les instructions de l'un des guides de démarrage rapide.
  • Découvrez les rôles IAM disponibles pour Certificate Authority Service.

Configurer des liaisons de stratégie IAM au niveau du projet

Les scénarios suivants décrivent comment accorder aux utilisateurs l'accès aux ressources du service d'autorité de certification au niveau du projet.

Gérer les ressources

Un administrateur du service d'autorité de certification (roles/privateca.admin) dispose des autorisations nécessaires pour gérer toutes les ressources du service d'autorité de certification, et définir des stratégies IAM sur les pools d'autorités de certification et les modèles de certificat.

Pour attribuer le rôle "Administrateur de services d'autorité de certification" (roles/privateca.admin) à un utilisateur au niveau du projet, procédez comme suit:

Console

  1. Dans la console Google Cloud, accédez à la page IAM.

    Accéder à Identity and Access Management

  2. Sélectionnez le projet.

  3. Cliquez sur Accorder l'accès.

  4. Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail du compte principal ou un autre identifiant.

  5. Dans la liste Sélectionner un rôle, sélectionnez le rôle Administrateur de services d'autorité de certification.

  6. Cliquez sur Enregistrer.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member=MEMBER \
  --role=roles/privateca.admin

Remplacez les éléments suivants :

  • PROJECT_ID: identifiant unique du projet.
  • MEMBER: l'utilisateur ou le compte de service auquel vous souhaitez attribuer le rôle "Administrateur de services d'autorité de certification".

L'indicateur --role utilise le rôle IAM que vous souhaitez attribuer au membre.

Créer des ressources

Un responsable des opérations du service CA (roles/privateca.caManager) peut créer, mettre à jour et supprimer des pools et des autorités de certification. Ce rôle permet également à l'appelant de révoquer les certificats émis par les autorités de certification du pool.

Pour attribuer le rôle "Gestionnaire des opérations du service d'autorité de certification" (roles/privateca.caManager) à un utilisateur au niveau du projet, procédez comme suit:

Console

  1. Dans la console Google Cloud, accédez à la page IAM.

    Accéder à Identity and Access Management

  2. Sélectionnez le projet.

  3. Cliquez sur Accorder l'accès.

  4. Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail du compte principal ou un autre identifiant.

  5. Dans la liste Sélectionner un rôle, sélectionnez le rôle Gestionnaire des opérations de service d'autorité de certification.

  6. Cliquez sur Enregistrer.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member=MEMBER \
  --role=roles/privateca.caManager

Remplacez les éléments suivants :

  • PROJECT_ID: identifiant unique du projet.
  • MEMBER: utilisateur ou compte de service pour lequel vous souhaitez ajouter le rôle IAM.

L'indicateur --role utilise le rôle IAM que vous souhaitez attribuer au membre.

Pour en savoir plus sur la commande gcloud projects add-iam-policy-binding, consultez gcloud projects add-iam-policy-binding.

Si vous choisissez de créer une autorité de certification à l'aide d'une clé Cloud KMS existante, l'appelant doit également être administrateur de la clé Cloud KMS.

L'administrateur Cloud KMS (roles/cloudkms.admin) dispose d'un accès complet à toutes les ressources Cloud KMS, à l'exception des opérations de chiffrement et de déchiffrement. Pour en savoir plus sur les rôles IAM pour Cloud KMS, consultez la page Cloud KMS: autorisations et rôles.

Pour attribuer le rôle d'administrateur Cloud KMS (roles/cloudkms.admin) à un utilisateur, suivez les instructions ci-dessous:

Console

  1. Dans la console Google Cloud, accédez à la page Service de gestion des clés Cloud.

    Accéder à Cloud Key Management Service

  2. Sous Trousseaux de clés, cliquez sur le trousseau contenant la clé de signature de l'autorité de certification.

  3. Cliquez sur la clé qui correspond à la clé de signature de l'autorité de certification.

  4. Si le panneau d'informations n'est pas déjà visible, cliquez sur Afficher le panneau d'informations. Cliquez ensuite sur Autorisations.

  5. Cliquez sur Ajouter un compte principal.

  6. Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail du compte principal ou un autre identifiant.

  7. Dans la liste Sélectionner un rôle, sélectionnez le rôle Administrateur Cloud KMS.

  8. Cliquez sur Enregistrer.

gcloud

gcloud kms keys add-iam-policy-binding KEY \
  --keyring=KEYRING --location=LOCATION \
  --member=MEMBER \
  --role=roles/cloudkms.admin

Remplacez les éléments suivants :

  • KEY: identifiant unique de la clé.
  • KEYRING: trousseau de clés qui inclut la clé. Pour en savoir plus sur les trousseaux de clés, consultez la section Trousseaux de clés.
  • MEMBER: l'utilisateur ou le compte de service pour lequel vous souhaitez ajouter la liaison IAM.

L'indicateur --role utilise le rôle IAM que vous souhaitez attribuer au membre.

Pour en savoir plus sur la commande gcloud kms keys add-iam-policy-binding, consultez gcloud kms keys add-iam-policy-binding.

Ressources d'audit

Un auditeur du service CA (roles/privateca.auditor) dispose d'un accès en lecture à toutes les ressources du service CA. Lorsqu'il est accordé pour un pool d'autorités de certification spécifique, il accorde un accès en lecture au pool d'autorités de certification. Si le pool d'autorités de certification se trouve au niveau Enterprise, l'utilisateur disposant de ce rôle peut également afficher les certificats et les LRC émis par les autorités de certification du pool. Attribuez ce rôle aux personnes chargées de valider la sécurité et les opérations du pool d'autorités de certification.

Pour attribuer le rôle "Auditeur de services d'autorité de certification" (roles/privateca.auditor) à un utilisateur au niveau du projet, procédez comme suit:

Console

  1. Dans la console Google Cloud, accédez à la page IAM.

    Accéder à Identity and Access Management

  2. Sélectionnez le projet.

  3. Cliquez sur Accorder l'accès.

  4. Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail du compte principal ou un autre identifiant.

  5. Dans la liste Sélectionner un rôle, sélectionnez le rôle Auditeur de services d'autorité de certification.

  6. Cliquez sur Enregistrer.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member=MEMBER \
  --role=roles/privateca.auditor

Remplacez les éléments suivants :

  • PROJECT_ID: identifiant unique du projet.
  • MEMBER: identifiant unique de l'utilisateur auquel vous souhaitez attribuer le rôle d'auditeur de service de certification (roles/privateca.auditor).

L'indicateur --role utilise le rôle IAM que vous souhaitez attribuer au membre.

Configurer des liaisons de stratégie IAM au niveau de la ressource

Cette section explique comment configurer des liaisons de stratégie IAM pour une ressource spécifique dans le service CA.

Gérer des pools d'autorités de certification

Vous pouvez attribuer le rôle Administrateur du service d'autorité de certification (roles/privateca.admin) au niveau de la ressource pour gérer un pool d'autorités de certification ou un modèle de certificat spécifique.

Console

  1. Dans la console Google Cloud, accédez à la page Certificate Authority Service.

    Accéder à Certificate Authority Service

  2. Cliquez sur l'onglet Gestionnaire de pool d'autorités de certification, puis sélectionnez le pool d'autorités de certification pour lequel vous souhaitez accorder des autorisations.

  3. Si le panneau d'informations n'est pas déjà visible, cliquez sur Afficher le panneau d'informations. Cliquez ensuite sur Autorisations.

  4. Cliquez sur Ajouter un compte principal.

  5. Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail du compte principal ou un autre identifiant.

  6. Dans la liste Sélectionner un rôle, sélectionnez le rôle Administrateur de services d'autorité de certification.

  7. Cliquez sur Enregistrer. Le rôle sélectionné est attribué au compte principal sur la ressource du pool d'autorités de certification.

gcloud

Pour définir la stratégie IAM, exécutez la commande suivante:

gcloud privateca pools add-iam-policy-binding POOL_ID \
  --location LOCATION \
  --member MEMBER \
  --role roles/privateca.admin

Remplacez les éléments suivants :

  • POOL_ID: identifiant unique du pool d'autorités de certification pour lequel vous souhaitez définir la stratégie IAM.
  • LOCATION: emplacement du pool d'autorités de certification. Pour obtenir la liste complète des emplacements, consultez la section Emplacements.
  • MEMBER: utilisateur ou compte de service auquel vous souhaitez attribuer le rôle IAM.

L'indicateur --role utilise le rôle IAM que vous souhaitez attribuer au membre.

Pour en savoir plus sur la commande gcloud privateca pools add-iam-policy-binding, consultez gcloud privateca pools add-iam-policy-binding.

Suivez la même procédure pour attribuer le rôle Administrateur de services d'autorité de certification à un modèle de certificat.

Vous pouvez également attribuer le rôle "Responsable des opérations du service CA" (roles/privateca.caManager) à un pool d'autorités de certification spécifique. Ce rôle permet à l'appelant de révoquer les certificats émis par les autorités de certification de ce pool.

Console

  1. Dans la console Google Cloud, accédez à la page Certificate Authority Service.

    Accéder à Certificate Authority Service

  2. Cliquez sur l'onglet Gestionnaire de pool d'autorités de certification, puis sélectionnez le pool d'autorités de certification pour lequel vous souhaitez accorder des autorisations.

  3. Si le panneau d'informations n'est pas déjà visible, cliquez sur Afficher le panneau d'informations. Cliquez ensuite sur Autorisations.

  4. Cliquez sur Ajouter un compte principal.

  5. Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail du compte principal ou un autre identifiant.

  6. Dans la liste Sélectionner un rôle, sélectionnez le rôle Gestionnaire des opérations de service d'autorité de certification.

  7. Cliquez sur Enregistrer. Le rôle sélectionné est attribué au compte principal sur la ressource de pool d'autorités de certification à laquelle l'autorité de certification appartient.

gcloud

Pour accorder le rôle à un pool d'autorités de certification spécifique, exécutez la commande gcloud suivante:

gcloud privateca pools add-iam-policy-binding POOL_ID \
  --location LOCATION \
  --member MEMBER \
  --role roles/privateca.caManager

Remplacez les éléments suivants :

  • POOL_ID: identifiant unique du pool d'autorités de certification.
  • LOCATION: emplacement du pool d'autorités de certification. Pour obtenir la liste complète des emplacements, consultez la section Emplacements.
  • MEMBER: identifiant unique de l'utilisateur auquel vous souhaitez attribuer le rôle de gestionnaire des opérations de service de certification (roles/privateca.caManager).

L'indicateur --role utilise le rôle IAM que vous souhaitez attribuer au membre.

Pour en savoir plus sur la commande gcloud privateca pools add-iam-policy-binding, consultez gcloud privateca pools add-iam-policy-binding.

Créer des certificats

Accordez le rôle Gestionnaire de certificats du service CA (roles/privateca.certificateManager) aux utilisateurs pour leur permettre d'envoyer des demandes d'émission de certificats à un pool d'autorités de certification. Ce rôle donne également un accès en lecture aux ressources du service CA. Pour n'autoriser que la création de certificats sans accès en lecture, attribuez le rôle Demandeur de certificat du service CA (roles/privateca.certificateRequester). Pour en savoir plus sur les rôles IAM pour le service CA, consultez la page Contrôle des accès avec IAM.

Pour accorder à l'utilisateur l'accès permettant de créer des certificats pour une autorité de certification spécifique, suivez les instructions ci-dessous.

Console

  1. Dans la console Google Cloud, accédez à la page Certificate Authority Service.

    Accéder à Certificate Authority Service

  2. Cliquez sur Gestionnaire de pool d'autorités de certification, puis sélectionnez le pool d'autorités de certification pour lequel vous souhaitez accorder des autorisations.

  3. Si le panneau d'informations n'est pas déjà visible, cliquez sur Afficher le panneau d'informations. Cliquez ensuite sur Autorisations.

  4. Cliquez sur Ajouter un compte principal.

  5. Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail du compte principal ou un autre identifiant.

  6. Dans la liste Sélectionner un rôle, sélectionnez le rôle Gestionnaire de certificats de service d'autorité de certification.

  7. Cliquez sur Enregistrer. Le rôle sélectionné est attribué au compte principal sur la ressource de pool d'autorités de certification à laquelle l'autorité de certification appartient.

gcloud

gcloud privateca pools add-iam-policy-binding 'POOL_ID' \
  --location LOCATION \
  --member MEMBER \
  --role roles/privateca.certificateManager

Remplacez les éléments suivants :

  • POOL_ID: identifiant unique du pool d'autorités de certification.
  • LOCATION: emplacement du pool d'autorités de certification. Pour obtenir la liste complète des emplacements, consultez la section Emplacements.
  • MEMBER: identifiant unique de l'utilisateur auquel vous souhaitez attribuer le rôle Gestionnaire de certificats du service CA (roles/privateca.certificateManager).

L'indicateur --role utilise le rôle IAM que vous souhaitez attribuer au membre.

Ajouter des liaisons de stratégie IAM à un modèle de certificat

Pour ajouter une stratégie IAM à un modèle de certificat spécifique, suivez les instructions suivantes:

Console

  1. Dans la console Google Cloud, accédez à la page Certificate Authority Service.

    Accéder à Certificate Authority Service

  2. Cliquez sur l'onglet Gestionnaire de modèles, puis sélectionnez le modèle de certificat pour lequel vous souhaitez accorder des autorisations.

  3. Si le panneau d'informations n'est pas déjà visible, cliquez sur Afficher le panneau d'informations. Cliquez ensuite sur Autorisations.

  4. Cliquez sur Ajouter un compte principal.

  5. Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail du compte principal ou un autre identifiant.

  6. Sélectionnez un rôle à attribuer dans la liste déroulante Sélectionner un rôle.

  7. Cliquez sur Enregistrer.

gcloud

gcloud privateca templates add-iam-policy-binding TEMPLATE_ID \
  --location=LOCATION \
  --member=MEMBER \
  --role=ROLE

Remplacez les éléments suivants :

  • LOCATION: emplacement du modèle de certificat. Pour obtenir la liste complète des emplacements, consultez la section Emplacements.
  • MEMBER: utilisateur ou compte de service pour lequel vous souhaitez ajouter la liaison de stratégie IAM.
  • ROLE: rôle que vous souhaitez attribuer au membre.

Pour en savoir plus sur la commande gcloud privateca templates add-iam-policy-binding, consultez gcloud privateca templates add-iam-policy-binding.

Pour en savoir plus sur la modification du rôle IAM d'un utilisateur, consultez Accorder l'accès.

Supprimer des liaisons de stratégie IAM

Vous pouvez supprimer une association de stratégie IAM existante à l'aide de la commande remove-iam-policy-binding de la Google Cloud CLI.

Pour supprimer une stratégie IAM sur un pool d'autorités de certification spécifique, exécutez la commande gcloud suivante:

gcloud

gcloud privateca pools remove-iam-policy-binding POOL_ID \
  --location=LOCATION \
  --member=MEMBER \
  --role=ROLE

Remplacez les éléments suivants :

  • LOCATION: emplacement du pool d'autorités de certification. Pour obtenir la liste complète des emplacements, consultez la section Emplacements.
  • MEMBER: l'utilisateur ou le compte de service pour lequel vous souhaitez supprimer la liaison de stratégie IAM.
  • ROLE: rôle que vous souhaitez supprimer pour le membre.

Pour en savoir plus sur la commande gcloud privateca pools remove-iam-policy-binding, consultez gcloud privateca pools remove-iam-policy-binding.

Pour supprimer une stratégie IAM sur un modèle de certificat spécifique, utilisez la commande gcloud suivante:

gcloud

gcloud privateca templates remove-iam-policy-binding TEMPLATE_ID \
  --location=LOCATION \
  --member=MEMBER \
  --role=ROLE

Remplacez les éléments suivants :

  • LOCATION: emplacement du modèle de certificat. Pour obtenir la liste complète des emplacements, consultez la section Emplacements.
  • MEMBER: l'utilisateur ou le compte de service pour lequel vous souhaitez supprimer la liaison de stratégie IAM.
  • ROLE: rôle que vous souhaitez supprimer pour le membre.

Pour en savoir plus sur la commande gcloud privateca templates remove-iam-policy-binding, consultez gcloud privateca templates remove-iam-policy-binding.

Pour savoir comment supprimer le rôle IAM d'un utilisateur, consultez Révoquer l'accès.

Étape suivante