Obtener y mostrar grupos POSIX
En este documento se explica cómo obtener y mostrar grupos POSIX.
Obtener miembros de grupos POSIX
Puedes obtener información de un grupo mediante el nombre del grupo de Google, el nombre del grupo POSIX, el ID del grupo POSIX o el correo electrónico.
Obtener un grupo POSIX por su nombre
En el siguiente ejemplo se muestra cómo obtener un grupo POSIX mediante el nombre del grupo:
REST
Para obtener un grupo POSIX por su nombre, llama al método groups.get()
con el nombre del recurso del grupo.
GET "https://cloudidentity.googleapis.com/v1beta1/groups/GROUP_RESOURCE_NAME"
Haz los cambios siguientes:
GROUP_RESOURCE_NAME
: el nombre del recurso del grupo de Google. Para encontrar el nombre de recurso de un grupo, ejecuta el comandogcloud identity groups describe
.
Python
En el siguiente ejemplo se muestra cómo obtener un grupo POSIX por nombre mediante la biblioteca de cliente de Python:
def get_posix_group_by_name(name):
service = build_service()
response = service.groups().get(name=name).execute()
return response
Obtener un grupo POSIX por su nombre
En el siguiente ejemplo se muestra cómo obtener información de un grupo, como el nombre del grupo POSIX:
REST
Para buscar un grupo POSIX por nombre de grupo POSIX, llama al
método groups.search()
con la siguiente cadena de consulta:
query=parent=='customers/CUSTOMER_ID' && 'cloudidentity.googleapis.com/groups.posix' in labels && posix_groups.exists(pg, pg.name=='POSIX_NAME')
Sustituye POSIX_NAME
por el nombre que quieras asignar al grupo POSIX.
A continuación se muestra 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"
Haz los cambios siguientes:
CUSTOMER_ID
: el ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comandogcloud organizations list
.POSIX_NAME
: el nombre que quieres asignar al grupo POSIXVIEW
:FULL
oBASIC
Python
En el siguiente ejemplo se muestra cómo obtener un grupo POSIX por su nombre mediante la biblioteca de 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
Obtener un grupo POSIX por su ID
En el siguiente ejemplo se muestra cómo obtener información de un grupo mediante el ID del grupo:
REST
Para buscar un grupo POSIX por ID, llama al método groups.search()
con la siguiente cadena de consulta:
query=parent=='customers/CUSTOMER_ID' && 'cloudidentity.googleapis.com/groups.posix' in labels && posix_groups.exists(pg, pg.gid==GIDu)
Haz los cambios siguientes:
CUSTOMER_ID
: el ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comandogcloud organizations list
.GROUP_ID
: el ID de grupo (GID) que quieres asignar al grupo POSIX.
A continuación se muestra 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"
Haz los cambios siguientes:
CUSTOMER_ID
: el ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comandogcloud organizations list
.GROUP_ID
: el ID de grupo (GID) que quieres asignar al grupo POSIX.VIEW
:FULL
oBASIC
Python
En el siguiente ejemplo se muestra cómo recuperar un grupo POSIX por ID de grupo mediante la biblioteca de 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
Obtener un grupo POSIX por correo electrónico
En el siguiente ejemplo se muestra cómo obtener información de un grupo mediante el correo del grupo:
gcloud
Usa el comando gcloud beta identity groups describe
para mostrar todos los grupos POSIX de una organización:
gcloud beta identity groups describe EMAIL_ADDRESS
Sustituye EMAIL_ADDRESS
por la dirección de correo del grupo que se va a buscar.
REST
Para obtener un grupo POSIX por correo electrónico, sigue estos pasos:
Llama al método
groups.lookup()
con la dirección de correo del grupo:GET "https://cloudidentity.googleapis.com/v1beta1/groups:lookup?groupKey.id=EMAIL_ADDRESS"
Anota el nombre del recurso del grupo devuelto.
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 POSIX por correo electrónico mediante la biblioteca de 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
Mostrar grupos POSIX
En los siguientes ejemplos se muestra cómo enumerar todos los grupos POSIX de tu organización:
gcloud
Usa el comando gcloud identity groups search
para mostrar todos los grupos POSIX de una organización:
gcloud identity groups search \ --labels=cloudidentity.googleapis.com/groups.posix \ --organization=ORGANIZATION
Sustituye ORGANIZATION
por el ID de la organización del grupo que se va a buscar.
REST
Para buscar todos los grupos POSIX, llama al método groups.search()
con la siguiente cadena de consulta:
query=parent=='customers/CUSTOMER_ID' && 'cloudidentity.googleapis.com/groups.posix' in labels
Sustituye CUSTOMER_ID
por el ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comando gcloud organizations list
.
A continuación se muestra 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"
Haz los cambios siguientes:
CUSTOMER_ID
: el ID de cliente de tu organización. Para encontrar el ID de cliente, ejecuta el comandogcloud organizations list
.GROUP_ID
: el ID de grupo (GID) que quieres asignar al grupo POSIX.VIEW
:FULL
oBASIC
Python
En el siguiente ejemplo se muestra una función auxiliar para buscar grupos POSIX mediante la biblioteca de 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