Como criar e pesquisar grupos com identidades mapeadas

Nesta página, você aprenderá a criar e pesquisar grupos com identidades mapeadas. Um grupo de identidade é um tipo de grupo que espelha um grupo em uma fonte de identidade externa, como um grupo do Active Directory. Esses grupos são usados ao criar um conector de identidade para o Google Cloud Search.

Para mais informações sobre grupos com identidades mapeadas, consulte Visão geral da API Groups.

Nas seções a seguir, demonstramos como gerenciar grupos com identidades mapeadas.

Antes de começar

Execute as seguintes tarefas antes de continuar com as informações desta página:

Como criar um grupo com identidades mapeadas

REST

Para criar um grupo mapeado por identidade, chame groups.create() com uma instância do novo grupo. A instância do grupo precisa incluir groupKey, Parent e label definidos como system/groups/external. O groupKey é uma combinação de namespace e groupId que identifica exclusivamente o grupo.

Python

No exemplo a seguir, mostramos uma função auxiliar para criar um grupo de identidade usando a biblioteca de cliente do Python: Use o ID da origem de identidade, gerado ao criar a origem de identidade no Google Admin Console, para chamar a função auxiliar e criar um grupo:

def create_identity_group(service, identity_source_id, group_id, group_display_name,
  group_description):
  namespace = "identitysources/" + identity_source_id
  group_key = {"id": group_id, "namespace": namespace}
  group = {
    "parent": namespace,
    "description": group_description,
    "displayName": group_display_name,
    "groupKey": group_key,
    "labels": {
      # Set the label to specify creation of an identity group.
      "system/groups/external": ""
    }
  }

  try:
    response = service.groups().create(body=group).execute()
    print response
  except Exception, e:
    print e

  myNewGroup = create_identity_group(
    idSvc,
    "ABC1234",
    "zebra",
    "Zebra external group",
    "The Zebra group is an identity group representing the Zooland
      external identity"
  )

Ao fornecer o namespace, você não sofrerá conflitos de nomenclatura e coloca o grupo com identidades mapeadas no contexto apropriado de outros grupos da mesma origem de identidade externa.

Como pesquisar grupos com identidades mapeadas

REST

Para pesquisar grupos mapeados por identidade, chame groups.search() com uma string de consulta. Para pesquisar todos os grupos, só é necessário fornecer o rótulo system/groups/external.

Python

No exemplo a seguir, mostramos uma função auxiliar usada para pesquisar grupos com identidades mapeadas usando a biblioteca de cliente do Python:

def search_identity_groups(service, identity_source_id, pageSize, view):
  # Set the label to search for all identity groups
  searchQuery = "&query=namespace=identitysources/" + identity_source_id \
    + "%20AND%20" + "labels:system/groups/external" \
    + "&pageSize=" + pageSize + "&view=" + view
  try:
    searchGroupsRequest = service.groups().search()
    searchGroupsRequest.uri += searchQuery
    response = searchGroupsRequest.execute()
    print response
  except Exception, e:
    print e

A seguir

Você pode criar assinaturas para um grupo depois de criá-lo. Para criar assinaturas para um grupo com identidades mapeadas, consulte Como gerenciar assinaturas de grupo com identidades mapeadas.