Crear y buscar grupo con asignaciones de identidad

En esta página se explica cómo crear y buscar grupos con asignaciones de identidad. Un grupo con mapeo de identidades es un tipo de grupo que refleja un grupo de una fuente de identidad externa, como un grupo de Active Directory. Los grupos asignados por identidad se usan al crear un conector de identidades para Google Cloud Search.

Para obtener más información sobre los grupos de identidades asignadas, consulta el artículo Descripción general de la API Groups.

En las siguientes secciones se muestra cómo gestionar grupos con asignaciones de identidad.

Antes de empezar

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

Crear un grupo con asignaciones de identidad

REST

Para crear un grupo con asignaciones de identidad, llama a groups.create() con una instancia del nuevo grupo. La instancia de grupo debe incluir groupKey, Parent y label con el valor system/groups/external. El groupKey es una combinación de namespace y groupId que identifica de forma única al grupo.

Python

En el siguiente ejemplo se muestra una función auxiliar para crear un grupo de identidades mediante la biblioteca de cliente de Python. Usa el ID de la fuente de identidad, que obtuviste al crearla en la consola de administración de Google, para llamar a la función auxiliar y crear un 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"
  )

Al proporcionar el espacio de nombres, te aseguras de que no haya colisiones de nombres y de que el grupo mapeado de identidades se coloque en el contexto adecuado de otros grupos de la misma fuente de identidad externa.

Buscar grupos con asignaciones de identidad

REST

Para buscar grupos con asignaciones de identidad, llama a groups.search() con una cadena de consulta. Para buscar todos los grupos, solo tienes que proporcionar la etiqueta system/groups/external.

Python

En el siguiente ejemplo se muestra una función auxiliar que se usa para buscar grupos asignados por identidad mediante la biblioteca de cliente de 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

Siguientes pasos

Una vez que hayas creado un grupo, podrás crear membresías para él. Para crear suscripciones a un grupo con asignaciones de identidad, consulta el artículo Gestionar suscripciones de grupos con asignaciones de identidad.