Criar e atualizar um grupo dinâmico
Esta página explica como criar e atualizar um grupo dinâmico.
Antes de começar
Realize as seguintes tarefas antes de continuar com as informações nesta página:
Leia a vista geral da API Groups.
Leia a vista geral dos grupos dinâmicos.
(Opcional) Formule e teste uma consulta de membros.
Criar um grupo dinâmico
Segue-se um exemplo de criação de um grupo dinâmico:
REST
Para criar um grupo dinâmico, chame
groups.create()
com uma instância do grupo. A instância do grupo tem de conter o elemento
dynamicGroupMetadata
com a consulta usada para preencher o grupo.
Python
Para criar um grupo dinâmico, chame o método service.groups().create
com uma instância do grupo. A instância do grupo tem de conter o elemento
dynamicGroupMetadata
com a consulta usada para preencher o grupo. O exemplo seguinte mostra como criar um grupo dinâmico que contenha todos os utilizadores existentes no departamento de engenharia:
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
Atualizar um grupo dinâmico
Segue-se um exemplo de atualização de um grupo dinâmico:
REST
Para atualizar um grupo dinâmico, chame
groups.patch()
com uma instância do grupo. A instância do grupo tem de conter o elemento dynamicGroupMetadata
com a nova consulta usada para preencher o grupo.
Python
Para atualizar um grupo dinâmico, chame o método service.groups().patch
com o nome do grupo a atualizar e uma instância do grupo. A instância do grupo tem de conter o dynamicGroupMetadata
com a consulta usada para preencher o grupo. O exemplo seguinte mostra como atualizar um grupo dinâmico que contém todos os utilizadores no departamento de engenharia para um grupo que contém todos os utilizadores nos departamentos de engenharia ou finanças:
# 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
O que se segue?
Depois de o grupo dinâmico existir, pode obtê-lo e listar as respetivas associações. Para mais informações, consulte o artigo Obter um grupo dinâmico e listar membros.