Recupero e creazione di un elenco dei gruppi POSIX

Questo documento spiega come recuperare e elencare i gruppi POSIX.

Recupero dei membri dei gruppi POSIX

Puoi recuperare le informazioni del gruppo utilizzando il nome del gruppo Google, il nome del gruppo POSIX, l'ID gruppo POSIX o l'email.

Recupero di un gruppo POSIX per nome

Il seguente esempio mostra come recuperare un gruppo POSIX utilizzando il nome del gruppo:

REST

Per recuperare un gruppo POSIX per nome, chiama il metodo groups.get() con il nome della risorsa del gruppo.

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

Sostituisci quanto segue:

Python

L'esempio seguente mostra come recuperare un gruppo POSIX per nome utilizzando la libreria client Python:

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

Recupero di un gruppo POSIX in base al nome del gruppo POSIX

L'esempio seguente mostra come recuperare le informazioni sul gruppo Il nome del gruppo POSIX:

REST

Per cercare un gruppo POSIX in base al nome, chiama il metodo groups.search() con la seguente stringa di query:

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

Sostituisci POSIX_NAME con il nome da assegnare al gruppo POSIX.

Di seguito è riportata una richiesta GET che utilizza la query:

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"

Sostituisci quanto segue:

  • CUSTOMER_ID: l'ID cliente della tua organizzazione. Per trovare l'ID cliente, esegui il comando gcloud organizations list
  • POSIX_NAME: il nome da assegnare al gruppo POSIX
  • VIEW: FULL o BASIC

Python

L'esempio seguente mostra come recuperare un gruppo POSIX tramite il nome del gruppo POSIX utilizzando la libreria client 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

Recupero di un gruppo POSIX tramite l'ID gruppo POSIX

L'esempio seguente mostra come recuperare le informazioni del gruppo utilizzando l'ID gruppo:

REST

Per cercare un gruppo POSIX per ID, chiama il metodo groups.search() con la seguente stringa di query:

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

Sostituisci quanto segue:

  • CUSTOMER_ID: l'ID cliente della tua organizzazione. Per trovare l'ID cliente, esegui il comando gcloud organizations list
  • GROUP_ID: l'ID gruppo (GID) da assegnare al gruppo POSIX

Di seguito è riportata una richiesta GET che utilizza la query:

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"

Sostituisci quanto segue:

  • CUSTOMER_ID: l'ID cliente della tua organizzazione. Per trovare l'ID cliente, esegui il comando gcloud organizations list
  • GROUP_ID: l'ID gruppo (GID) da assegnare al gruppo POSIX
  • VIEW: FULL o BASIC

Python

Il seguente esempio mostra come recuperare un gruppo POSIX tramite l'ID gruppo utilizzando la libreria client 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

Recupero di un gruppo POSIX via email

L'esempio seguente mostra come recuperare le informazioni del gruppo utilizzando l'email del gruppo:

gcloud

Utilizza il comando gcloud beta identity groups describe per elencare tutti i gruppi POSIX di un'organizzazione:

gcloud beta identity groups describe EMAIL_ADDRESS

Sostituisci EMAIL_ADDRESS con l'indirizzo email del gruppo per cui vuoi eseguire la ricerca.

REST

Per recuperare un gruppo POSIX via email:

  1. Chiama il metodo groups.lookup() con l'indirizzo email del gruppo:

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

    Prendi nota del nome della risorsa del gruppo restituito.

  2. Chiama il metodo groups.get() con il nome della risorsa del gruppo:

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

Python

L'esempio seguente mostra come recuperare un gruppo POSIX via email utilizzando la libreria client 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

Elenco dei gruppi POSIX

Gli esempi riportati di seguito mostrano come elencare tutti i gruppi POSIX della tua organizzazione:

gcloud

Utilizza il comando gcloud identity groups search per elencare tutti i gruppi POSIX di un'organizzazione:

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

Sostituisci ORGANIZATION con l'ID dell'organizzazione per il gruppo cercato.

REST

Per cercare tutti i gruppi POSIX, chiama il metodo groups.search() con la seguente stringa di query:

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

Sostituisci CUSTOMER_ID con l'ID cliente della tua organizzazione. Per trovare l'ID cliente, esegui il comando gcloud organizations list.

Di seguito è riportata una richiesta GET che utilizza la query:

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

Sostituisci quanto segue:

  • CUSTOMER_ID: l'ID cliente della tua organizzazione. Per trovare l'ID cliente, esegui il comando gcloud organizations list
  • GROUP_ID: l'ID gruppo (GID) da assegnare al gruppo POSIX
  • VIEW: FULL o BASIC

Python

L'esempio seguente mostra una funzione di supporto per la ricerca di gruppi POSIX utilizzando la libreria client 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