Créer et mettre à jour un groupe dynamique

Cette page explique comment créer et mettre à jour un groupe dynamique.

Avant de commencer

Effectuez les tâches suivantes avant d'utiliser les informations fournies sur cette page :

Créer un groupe dynamique

Voici un exemple de création d'un groupe dynamique :

REST

Pour créer un groupe dynamique, appelez groups.create() avec une instance du groupe. L'instance du groupe doit contenir le paramètre dynamicGroupMetadata avec la requête utilisée pour renseigner le groupe.

Python

Pour créer un groupe dynamique, appelez la méthode service.groups().create avec une instance du groupe. L'instance du groupe doit contenir le paramètre dynamicGroupMetadata avec la requête utilisée pour renseigner le groupe. L'exemple suivant montre comment créer un groupe dynamique contenant tous les utilisateurs du service d'ingénierie:

def create_dynamic_group(customer_id, email, query):
  service = build_service()
  groupDef = {
      "parent": "customerId/{}".format(customer_id),
      "groupKey": {"id": email},
      "labels": {"cloudidentity.googleapis.com/groups.discussion_forum": ""},
      "dynamicGroupMetadata": {
          "queries": [
              {
                  "resourceType": "USER",
                  "query": "user.organizations.exists(org, org.department=='engineering')"
              }
          ]
      }
  }
  request = service.groups().create(body=groupDef)
  request.uri += "&initialGroupConfig=EMPTY"
  response = request.execute()
  return response

Mettre à jour un groupe dynamique

Voici un exemple de mise à jour d'un groupe dynamique:

REST

Pour mettre à jour un groupe dynamique, appelez groups.patch() avec une instance du groupe. L'instance du groupe doit contenir le champ dynamicGroupMetadata avec la nouvelle requête utilisée pour remplir le groupe.

Python

Pour mettre à jour un groupe dynamique, appelez la méthode service.groups().patch avec le nom du groupe à mettre à jour et une instance du groupe. L'instance du groupe doit contenir l'identifiant dynamicGroupMetadata avec la requête utilisée pour renseigner le groupe. L'exemple suivant montre comment mettre à jour un groupe dynamique contenant tous les utilisateurs de l'équipe d'ingénierie vers un groupe contenant tous les utilisateurs des services d'ingénierie ou des finances:

# name (i.e. groups/01234abcdeef) uniquely identifies the group
def update_dynamic_group(name, query):
  service = build_service()
  groupDef = {
    "dynamicGroupMetadata": {
    "queries": [
        {
          "resourceType": "USER",
          "query": "user.organizations.exists(org, org.department=='engineering' || org.department=='finance')"
        }
      ]
    }
  }
  request = service.groups().patch(name=name, body=groupDef)
  request.uri += "&updateMask=dynamicGroupMetadata"
  response = request.execute()

  return response

Étape suivante

Une fois que le groupe dynamique existe, vous pouvez le récupérer et répertorier ses adhésions. Pour en savoir plus, consultez la section Récupérer un groupe dynamique et répertorier les membres.