Recupera y enumera los grupos de POSIX

En este documento, se explica cómo recuperar y enumerar grupos de POSIX.

Recupera miembros de grupos de POSIX

Puedes recuperar información del grupo con el nombre del grupo de Google, el nombre del grupo POSIX, el ID de grupo POSIX o el correo electrónico.

Recupera un grupo de POSIX por nombre de grupo

En el siguiente ejemplo, se muestra cómo recuperar un grupo de POSIX con el nombre del grupo:

REST

Para recuperar un grupo de POSIX por nombre, llama al método groups.get() con el nombre del recurso del grupo.

GET "https://cloudidentity.googleapis.com/v1beta1/groups/GROUP_RESOURCE_NAME"

Reemplaza lo siguiente:

Python

En el siguiente ejemplo, se muestra cómo recuperar un grupo de POSIX por nombre mediante la biblioteca cliente de Python:

def get_posix_group_by_name(name):
  service = build_service()
  response = service.groups().get(name=name).execute()
  return response

Recupera un grupo de POSIX por nombre de grupo POSIX

En el siguiente ejemplo, se muestra cómo recuperar información del grupo sobre el nombre del grupo de POSIX:

REST

Para buscar un grupo de POSIX por nombre de grupo POSIX, llama al método groups.search() con la siguiente string de consulta:

query=parent=='customers/CUSTOMER_ID' && 'cloudidentity.googleapis.com/groups.posix' in labels && posix_groups.exists(pg, pg.name=='POSIX_NAME')

Reemplaza POSIX_NAME por el nombre que deseas asignar al grupo de POSIX.

La siguiente es una solicitud GET que usa la consulta:

GET "https://cloudidentity.googleapis.com/v1beta1/groups:search?query=parent=='customers/CUSTOMER_ID'%26%26'cloudidentity.googleapis.com/groups.posix'%20in%20labels%26%26posix_groups.exists(pg,pg.name=='POSIX_GROUP_NAME')&view=VIEW"

Reemplaza lo siguiente:

  • CUSTOMER_ID: El ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comando gcloud organizations list
  • POSIX_NAME: es el nombre que quieres asignar al grupo de POSIX.
  • VIEW: FULL o BASIC

Python

En el siguiente ejemplo, se muestra cómo recuperar un grupo de POSIX por nombre de grupo de POSIX con la biblioteca cliente de Python:

def get_posix_group_by_posix_name((service, customer_id, posix_group_name, page_size, view):
  # Set the label to search for a POSIX group
  searchQuery = ("&query=parent=='customers/{customer_id}' "
         "&& 'cloudidentity.googleapis.com/groups.posix' in labels "
         "&& posix_groups.exists(pg, pg.name=='{posix_group_name}')"
         "?pageSize={page_size}&view={view}".format(
             customer_id=customer_id, posix_group_name=posix_group_name,
             page_size=page_size, view=view))
  try:
    searchGroupsRequest = service.groups().search()
    searchGroupsRequest.uri += searchQuery
    response = searchGroupsRequest.execute()
    print response
  except Exception as e:
    print e

Recupera un grupo de POSIX por ID de grupo POSIX

En el siguiente ejemplo, se muestra cómo recuperar información del grupo con el ID del grupo:

REST

Para buscar un grupo de POSIX por ID, llama al método groups.search() con la siguiente string de consulta:

query=parent=='customers/CUSTOMER_ID' && 'cloudidentity.googleapis.com/groups.posix' in labels && posix_groups.exists(pg, pg.gid==GIDu)

Reemplaza lo siguiente:

  • CUSTOMER_ID: El ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comando gcloud organizations list
  • GROUP_ID: es el ID de grupo (GID) que deseas asignar al grupo de POSIX.

La siguiente es una solicitud GET que usa la consulta:

GET "https://cloudidentity.googleapis.com/v1beta1/groups:search?query=parent=='customers/CUSTOMER_ID'%26%26'cloudidentity.googleapis.com/groups.posix'%20in%20labels%26%26posix_groups.exists(pg,pg.gid==GROUP_IDu)&view=VIEW"

Reemplaza lo siguiente:

  • CUSTOMER_ID: El ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comando gcloud organizations list
  • GROUP_ID: es el ID de grupo (GID) que deseas asignar al grupo de POSIX.
  • VIEW: FULL o BASIC

Python

En el siguiente ejemplo, se muestra cómo recuperar un grupo de POSIX por ID de grupo con la biblioteca cliente de Python:

def get_posix_group_by_gid(service, customer_id, posix_group_id, page_size, view):
  # Set the label to search for a POSIX group
  searchQuery = ("&query=parent=='customers/{customer_id}' "
         "&& 'cloudidentity.googleapis.com/groups.posix' in labels "
         "&& posix_groups.exists(pg, pg.gid=={posix_group_id}u)"
         "?pageSize={page_size}&view={view}".format(
             customer_id=customer_id, posix_group_id=posix_group_id,
             page_size=page_size, view=view))
  try:
    searchGroupsRequest = service.groups().search()
    searchGroupsRequest.uri += searchQuery
    response = searchGroupsRequest.execute()
    print response
  except Exception as e:
    print e

Recupera un grupo de POSIX por correo electrónico

El siguiente ejemplo muestra cómo recuperar información del grupo con el correo electrónico del grupo:

gcloud

Usa el comando gcloud beta identity groups describe para enumerar todos los grupos de POSIX en una organización:

gcloud beta identity groups describe EMAIL_ADDRESS

Reemplaza EMAIL_ADDRESS por la dirección de correo electrónico del grupo que se busca.

REST

Para recuperar un grupo de POSIX por correo electrónico, haz lo siguiente:

  1. Llama al método groups.lookup() con la dirección de correo electrónico del grupo:

    GET "https://cloudidentity.googleapis.com/v1beta1/groups:lookup?groupKey.id=EMAIL_ADDRESS"
    

    Anota el nombre de recurso del grupo que se muestra.

  2. Llama al método groups.get() con el nombre del recurso del grupo:

    GET "https://cloudidentity.googleapis.com/v1beta1/groups/GROUP_RESOURCE_NAME"
    

Python

En el siguiente ejemplo, se muestra cómo recuperar un grupo de POSIX por correo electrónico mediante la biblioteca cliente de Python:

def get_posix_group_by_email(email):
  service = build_service()

  # First we use the email to get the groups name calling lookup()
  lookup_group_name_request = service.groups().lookup()
  param = "&groupKey.id=" + email
  lookup_group_name_request.uri += param
  lookup_group_name_response = lookup_group_name_request.execute()
  name = lookup_group_name_response.get("name")

  # Then we can call get() by passing in the group's name
  response = service.groups().get(name=name).execute()
  return response

Enumera grupos de POSIX

En los siguientes ejemplos, se muestra cómo enumerar todos los grupos de POSIX en tu organización:

gcloud

Usa el comando gcloud identity groups search para enumerar todos los grupos de POSIX en una organización:

gcloud identity groups search \
    --labels=cloudidentity.googleapis.com/groups.posix \
    --organization=ORGANIZATION

Reemplaza ORGANIZATION por el ID de la organización para el grupo que se busca.

REST

Para buscar todos los grupos POSIX, llama al método groups.search() con la siguiente string de consulta:

query=parent=='customers/CUSTOMER_ID' && 'cloudidentity.googleapis.com/groups.posix' in labels

Reemplaza CUSTOMER_ID por el ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comando gcloud organizations list.

La siguiente es una solicitud GET que usa la consulta:

GET "https://cloudidentity.googleapis.com/v1beta1/groups:search?query=parent=='customers/CUSTOMER_ID'%26%26'cloudidentity.googleapis.com/groups.posix'%20in%20labels&view=VIEW"

Reemplaza lo siguiente:

  • CUSTOMER_ID: El ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comando gcloud organizations list
  • GROUP_ID: es el ID de grupo (GID) que deseas asignar al grupo de POSIX.
  • VIEW: FULL o BASIC

Python

En el siguiente ejemplo, se muestra una función de ayuda para buscar grupos de POSIX mediante la biblioteca cliente de Python:

def search_posix_groups(service, customer_id, page_size, view):
  # Set the label to search for all POSIX groups
  searchQuery = ("&query=parent=='customers/{customer_id}' "
         "&& 'cloudidentity.googleapis.com/groups.posix' in labels "
         "?pageSize={page_size}&view={view}".format(
             customer_id=customer_id, page_size=page_size, view=view))
  try:
    searchGroupsRequest = service.groups().search()
    searchGroupsRequest.uri += searchQuery
    response = searchGroupsRequest.execute()
    print response
  except Exception as e:
    print e