Créer et gérer des ressources Apigee Spaces

Cette page s'applique à Apigee et à Apigee hybrid.

Consultez la documentation d' Apigee Edge.

Cette page explique comment créer des espaces Apigee dans votre organisation Apigee pour gérer Identity and Access Management (IAM) à grande échelle les stratégies pour les ressources d'API Apigee.

Ce guide décrit les étapes nécessaires pour :

Pour en savoir plus sur les avantages de l'utilisation d'Apigee Spaces pour gérer vos ressources d'API, consultez la section Apigee Spaces.

Avant de commencer

Avant de commencer à utiliser les espaces :

  • Provisionnez Apigee. Vérifiez que l'organisation Apigee avec abonnement ou en paiement à l'usage que vous souhaitez utiliser est provisionnée. Pour en savoir plus sur les étapes requises pour provisionner Apigee, consultez la section Présentation du provisionnement.
  • Obtenez vos identifiants d'authentification. Avant d'exécuter des commandes pour créer et gérer des espaces sur la ligne de commande, obtenez vos identifiants d'authentification gcloud à l'aide de la commande suivante :
    export TOKEN=$(gcloud auth print-access-token)

Rôles et autorisations requis

Assurez-vous de disposer des rôles suivants sur le projet : Apigee > Administrateur de l'organisation Apigee

Vérifier les rôles

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

    Accéder à IAM
  2. Sélectionnez le projet.
  3. Dans la colonne Compte principal, recherchez toutes les lignes qui vous identifient ou identifient un groupe dont vous faites partie. Pour savoir à quels groupes vous appartenez, contactez votre administrateur.

  4. Pour toutes les lignes qui vous spécifient ou vous incluent, consultez la colonne Rôle pour vous assurer que la liste inclut les rôles requis.

Attribuer les rôles

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

    Accéder à IAM
  2. Sélectionnez le projet.
  3. Cliquez sur Accorder l'accès.
  4. Dans le champ Nouveaux comptes principaux, saisissez votre identifiant utilisateur. Il s'agit généralement de l'adresse e-mail d'un compte Google.

  5. Cliquez sur Sélectionner un rôle, puis recherchez le rôle.
  6. Pour attribuer des rôles supplémentaires, cliquez sur Ajouter un autre rôle et ajoutez tous les rôles supplémentaires.
  7. Cliquez sur Enregistrer.

Créer un espace

Pour effectuer cette tâche, vous devez disposer de l'autorisation apigee.spaces.create. Cette autorisation est incluse dans le rôle Apigee Organization Admin.

Créez un espace dans votre organisation Apigee à l'aide de la console Apigee ou de l'API, comme décrit dans les sections suivantes.

Console Apigee

Pour créer un espace à l'aide de l'interface utilisateur Apigee :

  1. Dans l'interface utilisateur d'Apigee de la console Cloud, accédez à la page Espaces.
    Accéder à Espaces
  2. Cliquez sur Créer. Le panneau Ajouter des détails sur l'espace s'ouvre.
  3. Dans le champ Nom, saisissez un identifiant unique pour l'espace. Le nom doit comporter moins de 63 caractères, commencer par une lettre minuscule et ne contenir que des caractères minuscules. Pour connaître toutes les exigences de nommage, consultez AIP-122 : Noms de ressources.
  4. (Facultatif) Dans le champ Nom à afficher, saisissez un libellé lisible par l'humain pour l'espace.
  5. Cliquez sur Ajouter.

Une fois l'espace créé, les membres de l'organisation le verront comme paramètre disponible lors de la création de ressources d'API.

API Apigee

Pour créer un espace dans votre organisation Apigee, exécutez la commande suivante :

curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces" \
    --data-raw '{
       "name":"SPACE_NAME",
       "displayName":"DISPLAY_NAME"
    }'

Où :

  • ORG_NAME est le nom de votre organisation Apigee.
  • SPACE_NAME est le nom et l'identifiant unique de l'espace. Le nom doit comporter moins de 63 caractères, commencer par une lettre minuscule et ne contenir que des caractères minuscules. Pour connaître toutes les exigences de nommage, consultez AIP-122 : Noms de ressources.
  • DISPLAY_NAME est le nom lisible par l'humain de l'espace tel qu'il apparaît dans l'interface utilisateur d'Apigee de la console Cloud.

Gérer les membres et les rôles dans un espace

Une fois que vous avez créé un espace, vous pouvez y ajouter des membres de l'équipe et attribuer les rôles IAM requis pour créer et gérer des ressources d'API.

Ajouter un membre de l'organisation à un espace

Pour effectuer cette tâche, vous devez disposer de l'autorisation apigee.spaces.setIamPolicy.

Console Apigee

Pour accorder à un membre l'accès à un espace à l'aide de l'interface utilisateur Apigee :

  1. Dans l'interface utilisateur d'Apigee de la console Cloud, accédez à la page Espaces.
  2. Cliquez sur le nom de l'espace que vous souhaitez gérer.
  3. Dans la section Détails de l'accès, cliquez sur Accorder l'accès.
  4. Dans le champ Ajouter des membres, saisissez les adresses e-mail des utilisateurs ou des groupes que vous souhaitez ajouter.
  5. Sous Attribuer un rôle, sélectionnez Éditeur de contenu ou Lecteur de contenu.
  6. Cliquez sur Ajouter.

API Apigee

Pour ajouter un membre d'une organisation à un espace et lui attribuer un rôle IAM, utilisez la commande suivante :

curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME:setIamPolicy" -d \
      '{
        "policy":{
          "bindings":[
            {
              "members": ["user:USER_EMAIL"],
              "role": "roles/IAM_ROLE"
            }
          ]
        }
      }'

Où :

  • ORG_NAME est le nom de votre organisation Apigee.
  • SPACE_NAME est le nom de l'espace.
  • USER_EMAIL est l'adresse e-mail de l'utilisateur que vous ajoutez à l'espace. Pour ajouter un groupe Google au lieu d'un seul utilisateur, remplacez le préfixe user: par group: et indiquez l'adresse e-mail du groupe.
  • IAM_ROLE est le nom du rôle IAM que vous attribuez au membre.

Exclure des membres d'un espace

Pour effectuer cette tâche, vous devez disposer de l'autorisation apigee.spaces.setIamPolicy.

Console Apigee

Pour supprimer un membre d'un espace à l'aide de l'interface utilisateur Apigee :

  1. Dans l'interface utilisateur d'Apigee de la console Cloud, accédez à la page Espaces , puis cliquez sur le nom de l'espace.
  2. Dans le tableau Détails de l'accès, cochez la case correspondant à un ou plusieurs membres que vous souhaitez supprimer.
  3. Cliquez sur Supprimer l'accès.
  4. Dans la boîte de dialogue de confirmation, cliquez sur Confirmer.

API Apigee

Pour supprimer des membres d'un espace, définissez une nouvelle stratégie IAM pour l'espace avec la liste révisée des membres à l'aide de la setIamPolicy méthode. Cette méthode crée une stratégie IAM qui remplace la stratégie existante.

Par exemple, pour mettre à jour les membres de l'espace dédié à l'équipe blue, vous pouvez d'abord vérifier la stratégie IAM actuelle à l'aide de la commande suivante :

curl -X GET -H "Authorization: Bearer $TOKEN" \
  "https://apigee.googleapis.com/v1/organizations/acme/spaces/blue:getIamPolicy"

Le résultat de la commande renvoie la stratégie IAM actuelle pour l'espace et devrait se présenter comme suit :

{
  "version": "0",
  "bindings": [
    {
      "role": "roles/apigee.spaceContentEditor",
      "members": [
        "group:blue-team@acme.com",
        "user:user-a@acme.com",
        "user:user-b@acme.com",
        "user:user-c@acme.com"
      ]
    }
  ]
}

Pour supprimer user-b@acme.com de l'espace, utilisez la commande suivante :

curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-type: application/json" \
  "https://apigee.googleapis.com/v1/organizations/acme/spaces/blue:setIamPolicy" -d \
    '{
      "policy":{
        "bindings":[
          {
            "members": [
              "group:blue-team@acme.com",
              "user:user-a@acme.com",
              "user:user-c@acme.com"
            ],
            "role": "roles/apigee.spaceContentEditor"
          }
        ]
      }
    }'

La nouvelle stratégie IAM de l'espace n'inclura plus user-b@acme.com.

Pour supprimer un membre d'un groupe inclus dans un espace, commencez par le supprimer du groupe, puis exécutez à nouveau la commande setIamPolicy afin de mettre à jour la stratégie IAM de l'espace avec l'appartenance correcte pour l' alias de messagerie du groupe.

Répertorier tous les espaces d'une organisation

Pour effectuer cette tâche, vous devez disposer de l'autorisation apigee.spaces.list.

Console Apigee

Pour afficher tous les espaces, accédez à la page Espaces de l' interface utilisateur d'Apigee dans la console Cloud.

Accéder à Espaces

Le tableau "Espaces" répertorie tous les espaces de votre organisation, y compris leur Nom, Nom à afficher et le nombre total de Membres.

API Apigee

Pour lister tous les espaces d'une organisation Apigee, utilisez la commande suivante :

curl -X GET -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces"

Où :

  • ORG_NAME est le nom de votre organisation Apigee.

Obtenir les détails de l'espace

Pour effectuer cette tâche, vous devez disposer de l'autorisation apigee.spaces.get.

Console Apigee

Pour afficher les détails d'un espace dans l'interface utilisateur Apigee :

  1. Dans l'interface utilisateur d'Apigee de la console Cloud, accédez à la page Espaces.
  2. Cliquez sur le nom de l'espace que vous souhaitez afficher. La page d'informations affiche le Nom, le Nom à afficher, les détails de l’accès, et la liste des Membres.

API Apigee

Pour obtenir les détails d'un espace, exécutez la commande suivante :

curl -X GET -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME"

Où :

  • ORG_NAME est le nom de votre organisation Apigee.
  • SPACE_NAME est le nom de l'espace.

Mettre à jour un espace

Pour effectuer cette tâche, vous devez disposer de l'autorisation apigee.spaces.update.

Vous pouvez modifier le Nom à afficher d'un espace existant. Le nom unique ne peut pas être modifié après la création.

Console Apigee

Pour mettre à jour un espace dans l'interface utilisateur Apigee :

  1. Dans l'interface utilisateur d'Apigee de la console Cloud, accédez à la page Espaces , puis cliquez sur le nom de l'espace que vous souhaitez mettre à jour.
  2. Cliquez sur le bouton Modifier (icône en forme de crayon) à côté du titre "Détails de l'espace".
  3. Modifiez le Nom à afficher si nécessaire.
  4. Cliquez sur Enregistrer.

API Apigee

Pour mettre à jour un espace à l'aide de l'API, exécutez la commande suivante :

curl -X PATCH -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME" \
      --data-raw '{
        "displayName":"DISPLAY_NAME"
      }'

Où :

  • ORG_NAME est le nom de votre organisation Apigee.
  • SPACE_NAME est le nom de l'espace.
  • DISPLAY_NAME est le nouveau nom à afficher pour l'espace.

Supprimer un espace

Pour effectuer cette tâche, vous devez disposer de l'autorisation apigee.spaces.delete.

Console Apigee

Pour supprimer un espace à l'aide de l'interface utilisateur Apigee :

  1. Dans l'interface utilisateur d'Apigee de la console Cloud, accédez à la page Espaces.
  2. Cliquez sur Supprimer dans la ligne de l' espace que vous souhaitez supprimer.
  3. Dans la boîte de dialogue de confirmation, saisissez le nom exact de l'espace pour confirmer.
  4. Cliquez sur Supprimer.

API Apigee

Avant de supprimer un espace à l'aide de l'API, assurez-vous que toutes les ressources qu'il contient ont été supprimées ou déplacées.

curl -X DELETE -H "Authorization: Bearer $TOKEN" \
    "https://apigee.googleapis.com/v1/organizations/ORG_NAME/spaces/SPACE_NAME"

Où :

  • ORG_NAME est le nom de votre organisation Apigee.
  • SPACE_NAME est le nom de l'espace.

Si vous tentez de supprimer un espace qui contient encore des ressources actives, la suppression échouera et une réponse semblable à la suivante s'affichera :

{
  "error": {
    "code": 400,
    "message": "Space \"red\" has resources associated with it. Please delete the resources before deleting the space.",
    "status": "FAILED_PRECONDITION"
  }
}

Pour résoudre cette erreur, supprimez ou déplacez toutes les ressources de l'espace avant de tenter de le supprimer.

Étape suivante