Crear y actualizar un grupo dinámico

En esta página se explica cómo crear y actualizar un grupo dinámico.

Antes de empezar

Realiza las siguientes tareas antes de continuar con la información de esta página:

Crear grupos dinámicos

A continuación, se muestra un ejemplo de cómo crear un grupo dinámico:

REST

Para crear un grupo dinámico, llama a groups.create() con una instancia del grupo. La instancia del grupo debe contener el dynamicGroupMetadata con la consulta utilizada para rellenar el grupo.

Python

Para crear un grupo dinámico, llama al método service.groups().create con una instancia del grupo. La instancia del grupo debe contener el dynamicGroupMetadata con la consulta utilizada para rellenar el grupo. En el siguiente ejemplo se muestra cómo crear un grupo dinámico que contenga a todos los usuarios del departamento de Ingeniería:

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

Actualizar un grupo dinámico

A continuación, se muestra un ejemplo de cómo actualizar un grupo dinámico:

REST

Para actualizar un grupo dinámico, llama a groups.patch() con una instancia del grupo. La instancia del grupo debe contener el dynamicGroupMetadata con la nueva consulta utilizada para rellenar el grupo.

Python

Para actualizar un grupo dinámico, llama al método service.groups().patch con el nombre del grupo que quieras actualizar y una instancia del grupo. La instancia del grupo debe contener el dynamicGroupMetadata con la consulta usada para rellenar el grupo. En el siguiente ejemplo se muestra cómo actualizar un grupo dinámico que contiene a todos los usuarios del departamento de Ingeniería para que contenga a todos los usuarios de los departamentos de Ingeniería o Finanzas:

# 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

Siguientes pasos

Una vez que el grupo dinámico se haya creado, puedes obtenerlo y ver sus miembros. Para obtener más información, consulta el artículo Obtener grupos dinámicos y ver sus miembros.