Puoi cercare gli utenti corrispondenti a determinati attributi con il metodo
users.list()
dell'
API Directory. Questo metodo accetta il parametro query
, che è una query di ricerca che combina una o più clausole di ricerca. Ogni clausola di ricerca è composta da tre parti:
- Campo
- Attributo utente per cui viene eseguita la ricerca. Ad esempio,
givenName
. - Operatore
- Test eseguito sui dati per trovare una corrispondenza. Ad esempio, l'operatore
:
verifica se un attributo di testo contiene un valore. - Valore
- I contenuti dell'attributo sottoposto a test. Ad esempio,
Jane
.
Per cercare in più campi in una query, aggiungi ogni clausola di ricerca separata da uno spazio. L'operazione è un AND
implicito.
Campi
Campo | Tipo di valore | Operatori | Descrizione |
---|---|---|---|
Nessun valore specificato | stringa | Confronta con il valore in givenName , familyName o email . |
|
name |
stringa | =, : |
Il valore concatenato di givenName e familyName . |
email |
stringa | = , : , :{PREFIX}* |
Gli indirizzi email dell'utente, inclusi gli alias. |
givenName |
stringa | = , : , :{PREFIX}* |
Il nome o il nome di battesimo di un utente. |
familyName |
stringa | = , : , :{PREFIX}* |
Il cognome o il nome di un utente. |
isAdmin |
booleano | = |
Indica se un utente dispone dei privilegi di super amministratore. |
isDelegatedAdmin |
booleano | = |
Indica se un utente ha i privilegi di amministratore delegati. |
isSuspended |
booleano | = |
Indica se l'account di un utente è sospeso. |
isArchived |
booleano | = |
Indica se l'account di un utente è archiviato. |
im |
stringa | =, : |
ID rete IM. |
externalId |
stringa | =, : |
Valore dell'ID esterno. |
manager |
stringa | = |
L'indirizzo email del responsabile di un utente direttamente o nella catena di gestione. |
managerId |
stringa | = |
L'ID dell'amministratore di un utente direttamente o nella catena di gestione. |
directManager |
stringa | = |
L'indirizzo email del responsabile diretto di un utente. |
directManagerId |
stringa | = |
L'ID dell'amministratore diretto di un utente. |
address |
stringa | : |
Corrisponde a tutti i campi indirizzo. |
addressPoBox |
stringa | =, : |
Una casella postale. |
addressExtended |
stringa | =, : |
Un indirizzo esteso, ad esempio uno che include una sottoregione. |
addressStreet |
stringa | =, : |
Indirizzo e numero civico. |
addressLocality |
stringa | =, : |
Una città o un paese dell'indirizzo. |
addressRegion |
stringa | =, : |
Una provincia o uno stato abbreviati. |
addressPostalCode |
stringa | =, : |
Un CAP o un codice postale. |
addressCountry |
stringa | =, : |
Un paese. |
orgName |
stringa | =, : |
Il nome di un'organizzazione. |
orgTitle |
stringa | =, : |
Il titolo di un utente all'interno dell'organizzazione. |
orgDepartment |
stringa | =, : |
Un reparto all'interno dell'organizzazione. |
orgDescription |
stringa | =, : |
La descrizione di un'organizzazione. |
orgCostCenter |
stringa | =, : |
Il centro di costo di un'organizzazione. |
phone |
stringa | = |
Il numero di telefono di un utente. |
orgUnitPath |
stringa | = |
Il percorso completo di un'unità organizzativa. Corrisponde a tutte le catene di unità organizzative sotto il target. Ad esempio, 'orgUnitPath=/' restituisce tutti gli utenti dell'organizzazione. Questo campo può essere utilizzato solo quando viewType=admin_view . |
isEnrolledIn2Sv |
booleano | = |
Indica se un utente è registrato per la verifica in due passaggi. |
isEnforcedIn2Sv |
booleano | = |
Indica se la verifica in due passaggi è impostata per l'utente. |
schemaName.fieldName |
? | ? | Un attributo utente personalizzato, a cui viene fatto riferimento tramite il nome dello schema e del campo. La proprietà indexed del campo deve essere impostata su true . |
Tipi di valori
Tipo di valore | fieldType dello schema equivalente | Note |
---|---|---|
stringa | STRING , EMAIL , PHONE |
Racchiudi la query tra virgolette singole ' se contiene spazi vuoti. Inserisci un carattere di escape per le virgolette singole nelle query con \' , ad esempio 'Valentine\'s Day' . |
booleano | BOOL |
Deve avere un valore true o false . Supporta solo l'operatore = . |
numero | INT64 , DOUBLE |
Deve essere utilizzato un punto come separatore decimale e nessun separatore di migliaia, ad esempio 150430.25 . |
data | DATE |
Specificato nel formato AAAA-MM-GG, ad esempio 2001-02-15 . |
Operatori
Operatore | Tipi di valori supportati | Note |
---|---|---|
= |
stringa, booleano, numero, data | Il campo e il valore corrispondono esattamente. Ad esempio, givenName=Jane corrisponde a tutti gli utenti con l'attributo givenName "Jane" , ma non a "Jane Ann" . Supportato dalla maggior parte dei campi di stringa (vedi sopra). |
: |
stringa | Il campo contiene le parole intere all'interno del valore, in ordine. Ad esempio, una query con givenName:Jane trova gli utenti con valori givenName pari a "Jane" e "Jane Ann" , ma non "Janet" . Una query di più parole per 'givenName:Mary Ann' corrisponde ai valori di "Mary Ann Evans" e "Sarah Mary Ann" , ma non a "Ann Mary" . Supportato dalla maggior parte dei campi di stringa (vedi sopra). |
:{PREFIX}* |
stringa | Il campo inizia con il valore. Ad esempio, una query con givenName:Jane* trova gli utenti con valori givenName pari a "Jane" , "Jane Ann" e "Janet" , ma non "Sarah Jane" . Supportato solo per un insieme limitato di campi di stringa (vedi sopra). Non supportato per gli attributi personalizzati. |
:[{MIN},{MAX}] |
number, date | Il campo rientra in un intervallo. Per la corrispondenza, il valore del campo deve essere maggiore o uguale a {MIN} e minore di {MAX} . Gli attributi numerici personalizzati devono specificare un numericIndexingSpec per supportare questo operatore. |
> |
number, date | Il campo è maggiore del valore. Gli attributi numerici personalizzati devono specificare un numericIndexingSpec per supportare questo operatore. |
>= |
number, date | Il campo è maggiore o uguale al valore. Gli attributi numerici personalizzati devono specificare un numericIndexingSpec per supportare questo operatore. |
< |
number, date | Il campo è inferiore al valore. Gli attributi numerici personalizzati devono specificare un numericIndexingSpec per supportare questo operatore. |
<= |
number, date | Il campo è minore o uguale al valore. Gli attributi numerici personalizzati devono specificare un numericIndexingSpec per supportare questo operatore. |
Esempi
Tutte le query utilizzano il metodo users.list
, che ha una richiesta HTTP simile alla seguente (interruzioni di riga incluse per la leggibilità):
GET https://admin.googleapis.com/admin/directory/v1/users?domain=DOMAIN_NAME&query=QUERY_PARAMETERS
Cercare un utente per nome
Il campo di query name
esegue test sul valore concatenato di givenName
e familyName
. Una query per name='Jane'
non restituisce risultati per un utente con givenName='Jane'
e familyName='Smith'
.
name='Jane Smith'
Cercare utenti con un givenName
OPPURE familyName
che contiene un valore
name:'Jane'
Cercare gli utenti corrispondenti a un prefisso email
email:admin*
Cercare tutti i super amministratori
isAdmin=true
Cerca gli utenti con orgTitles
contenente "Gestore"
orgTitle:Manager
Cercare gli utenti con un responsabile comune nella catena di generazione di report
manager='janesmith@example.com'
Cercare gli utenti con lo stesso amministratore diretto
directManager='bobjones@example.com'
Cercare utenti in un determinato paese
addressCountry='Sweden'
Cercare utenti in un'organizzazione specifica
orgName='Human Resources'
Cercare i gestori di un'organizzazione specifica
orgName=Engineering orgTitle:Manager
Cercare gli attributi utente personalizzati
Cercare tutti i dipendenti che lavorano a un progetto specifico
EmploymentData.projects:'GeneGnomes'
Cercare tutti i dipendenti in una località specifica
EmploymentData.location='Atlanta'
Cercare tutti i dipendenti di livello superiore al 7
EmploymentData.jobLevel>=7
Cerca tutti i dipendenti con livelli di lavoro compresi tra 5 e 8
EmploymentData.jobLevel:[5,8]
Cercare tutti i dipendenti che hanno eseguito la registrazione alla verifica in due passaggi
isEnrolledIn2Sv=true
Cercare tutti i dipendenti per i quali è stata impostata la verifica in due passaggi
isEnforcedIn2Sv=true