Ajouter des conditions IAM

Les conditions IAM vous permettent de définir et d'appliquer un contrôle d'accès conditionnel basé sur des attributs pour les ressources Google Cloud, y compris les ressources Apigee Integration. Pour en savoir plus sur les conditions IAM, consultez la page Présentation des conditions IAM.

Dans Apigee Integration, vous pouvez appliquer un accès conditionnel en fonction des attributs suivants :

  • Attributs de date/heure : permettent de définir un accès temporaire (expiration), de planification ou de durée limitée aux ressources Apigee Integration. Par exemple, vous pouvez autoriser un utilisateur à accéder à une intégration jusqu'à une date spécifiée. Pour en savoir plus, consultez la section Configurer un accès temporaire.
  • Attributs de ressource : permettent de configurer un accès conditionnel en fonction du nom d'une ressource, d'un type de ressource ou des attributs de service d'une ressource. Par exemple, vous pouvez autoriser un utilisateur à gérer les intégrations créées dans une région spécifique. Pour obtenir la liste des valeurs acceptées. Pour en savoir plus, consultez la section Configurer un accès basé sur les ressources.

Ajouter une condition IAM

Pour ajouter une condition IAM à un compte principal existant (utilisateur, groupe ou compte de service), procédez comme suit :

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

    Accéder à IAM

  2. Sélectionnez votre projet, dossier ou organisation.
  3. Dans la liste des comptes principaux, recherchez le compte principal pour lequel vous souhaitez ajouter la condition IAM, puis cliquez sur (Modifier le compte principal).

    Le volet Modifier l'accès s'affiche.

  4. Recherchez le rôle auquel vous souhaitez ajouter la condition IAM, puis cliquez sur + Ajouter une condition IAM.
  5. Dans le volet Ajouter une condition, fournissez les informations suivantes :
    1. Titre : saisissez un nom pour la condition que vous ajoutez au rôle.
    2. Description : (facultatif) saisissez une description de la condition.
    3. Vous pouvez ajouter une condition à l'aide du générateur de conditions ou de l'éditeur de conditions.

      Le générateur de conditions fournit une interface interactive permettant de sélectionner le type de condition, l'opérateur et d'autres informations applicables concernant l'expression. L'éditeur de conditions fournit une interface textuelle permettant de saisir manuellement une expression de condition à l'aide de la syntaxe CEL.

      Pour obtenir des instructions détaillées sur l'utilisation du générateur de conditions ou de l'éditeur de conditions, consultez la page Configurer un accès basé sur les ressources.

    4. Cliquez sur Enregistrer pour appliquer la condition.
    5. Pour en savoir plus sur les attributs de ressource compatibles avec Apigee Integration, consultez la section Valeurs d'attributs de ressource

  6. Cliquez à nouveau sur Enregistrer dans le volet Modifier l'accès pour mettre à jour le compte principal.

Valeurs d'attribut de ressource

Le tableau suivant répertorie les valeurs que l'attribut de type de ressource peut contenir pour Apigee Integration :

Nom de la ressource Type de ressource Reference
Emplacement SERVICE_ENDPOINT-integrations.googleapis.com/Location Documentation de référence sur l'API
Intégration SERVICE_ENDPOINT-integrations.googleapis.com/Integration Documentation de référence sur l'API
IntegrationVersion SERVICE_ENDPOINT-integrations.googleapis.com/IntegrationVersion Documentation de référence sur l'API
Exécution SERVICE_ENDPOINT-integrations.googleapis.com/Execution Documentation de référence sur l'API
Suspension SERVICE_ENDPOINT-integrations.googleapis.com/Suspension Documentation de référence sur l'API
AuthConfig SERVICE_ENDPOINT-integrations.googleapis.com/AuthConfig Documentation de référence sur l'API

Exemples d'utilisation des conditions IAM pour Apigee Integration

Exemple 1 : Limiter l'accès à une ressource IntegrationVersion dans une région.

Vous pouvez utiliser l'expression de condition suivante dans l'éditeur de conditions pour limiter l'accès à la ressource IntegrationVersion. Si vous limitez l'accès, les opérations create, delete, download, get, list, patch, publish, unpublish et upload sont limitées aux versions d'intégration dans la région.

!resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION/products/apigee/integrations/INTEGRATION_NAME")

Remplacez les éléments suivants :

Exemple 2 : Autoriser l'accès à n'importe quelle ressource IntegrationVersion dans une région

Vous pouvez utiliser l'expression de condition suivante dans l'éditeur de conditions pour autoriser l'accès à la ressource IntegrationVersion :

resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION/products/apigee/integrations/INTEGRATION_NAME") || resource.type == "cloudresourcemanager.googleapis.com/Project")

Remplacez les éléments suivants :

Exemple 3 : Autoriser l'accès à une ressource AuthConfig spécifique

Vous pouvez utiliser l'expression de condition suivante dans l'éditeur de conditions pour autoriser l'accès à une ressource AuthConfig spécifique :

(resource.name.extract("authConfigs/{end}" == "AUTH_CONFIG_NAME") || resource.type == "integrations.googleapis.com/Location" || resource.type == "cloudresourcemanager.googleapis.com/Project")

Remplacez les éléments suivants :

Exemple 4 : Autoriser l'accès à toutes les ressources AuthConfig dans une région

Vous pouvez utiliser l'expression de condition suivante dans l'éditeur de conditions pour autoriser l'accès à n'importe quelle ressource AuthConfig :

(resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION/products/apigee") && resource.type == "integrations.googleapis.com/AuthConfig" || resource.type == "integrations.googleapis.com/Location" || resource.type == "cloudresourcemanager.googleapis.com/Project")

Remplacez les éléments suivants :