Criar e pesquisar grupos mapeados por identidade

Esta página explica como criar e pesquisar grupos mapeados por identidade. Um grupo com mapeamento de identidade é um tipo de grupo que reflete um grupo numa origem de identidade externa, como um grupo do Active Directory. Os grupos mapeados por identidade são usados quando cria um conetor de identidade para o Google Cloud Search.

Para mais informações sobre grupos mapeados por identidade, consulte a vista geral da API Groups.

As secções seguintes demonstram como gerir grupos mapeados por identidade.

Antes de começar

Realize as seguintes tarefas antes de continuar com as informações nesta página:

Criar um grupo com mapeamento de identidade

REST

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

Python

O exemplo seguinte mostra uma função auxiliar para criar um grupo de identidades com a biblioteca cliente Python. Use o ID da origem de identidade, obtido quando criou a origem de identidade na consola do administrador Google, 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"
  )

A indicação do espaço de nomes garante que não ocorrem colisões de nomes e coloca o grupo mapeado por identidade no contexto adequado de outros grupos da mesma origem de identidade externa.

Pesquisar grupos com mapeamento de identidade

REST

Para pesquisar grupos mapeados por identidade, chame groups.search() com uma string de consulta. Para pesquisar todos os grupos, só tem de indicar a etiqueta system/groups/external.

Python

O exemplo seguinte mostra uma função auxiliar usada para pesquisar grupos mapeados por identidade através da biblioteca cliente 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

O que se segue?

Depois de existir um grupo, pode criar subscrições para o mesmo. Para criar associações para um grupo mapeado por identidade, consulte o artigo Gerir associações de grupos mapeados por identidade.