Wyszukaj użytkowników

Możesz wyszukiwać użytkowników pasujących do określonych atrybutów za pomocą metody users.list() interfejsu Directory API. Ta metoda akceptuje parametr query, który jest zapytaniem łączącym co najmniej 1 klauzulę wyszukiwania. Każda klauzula wyszukiwania składa się z 3 części:

Pole
Przeszukiwany atrybut użytkownika. Na przykład: givenName.
Operator
Test wykonywany na danych w celu znalezienia dopasowania. Na przykład operator : sprawdza, czy atrybut tekstowy zawiera wartość.
Wartość
Zawartość testowanego atrybutu. Na przykład: Jane.

Aby przeszukać wiele pól w zapytaniu, dodaj klauzulę wyszukiwania oddzieloną spacją. Ta operacja jest niejawna AND.

Pola

Pole Typ wartości Operatory Opis
Nie określono string, Porównaj z wartością w givenName, familyName lub email.
name string, =, : Połączona wartość givenName i familyName.
email string, =, :, :{PREFIX}* Adresy e-mail użytkownika (w tym aliasy).
givenName string, =, :, :{PREFIX}* Imię lub nazwisko użytkownika.
familyName string, =, :, :{PREFIX}* Nazwisko lub nazwisko użytkownika.
isAdmin boolean = Informacja, czy użytkownik ma uprawnienia superadministratora.
isDelegatedAdmin boolean = Określa, czy użytkownik ma delegowane uprawnienia administratora.
isSuspended boolean = Określa, czy konto użytkownika jest zawieszone.
isArchived boolean = Określa, czy konto użytkownika jest archiwizowane.
im string, =, : Identyfikator sieci komunikatora.
externalId string, =, : Wartość identyfikatora zewnętrznego.
manager string, = Adres e-mail przełożonego użytkownika bezpośrednio lub na wyższym poziomie hierarchii.
managerId string, = Identyfikator kierownika użytkownika bezpośrednio lub na wyższym poziomie zarządzania.
directManager string, = Adres e-mail bezpośredniego przełożonego użytkownika.
directManagerId string, = Identyfikator bezpośredniego menedżera użytkownika.
address string, : Dopasowuje wszystkie pola adresu.
addressPoBox string, =, : Skrytka pocztowa.
addressExtended string, =, : rozszerzony adres, na przykład zawierający podregion;
addressStreet string, =, : Ulica i numer.
addressLocality string, =, : Miasto lub miejscowość powiązana z tym adresem.
addressRegion string, =, : Skrócona prowincja lub stan.
addressPostalCode string, =, : Kod pocztowy.
addressCountry string, =, : Kraj.
orgName string, =, : Nazwa organizacji.
orgTitle string, =, : Stanowisko użytkownika w organizacji.
orgDepartment string, =, : Dział w organizacji.
orgDescription string, =, : Opis organizacji.
orgCostCenter string, =, : Centrum kosztów organizacji.
phone string, = Numer telefonu użytkownika.
orgUnitPath string, = Pełna ścieżka jednostki organizacyjnej. Pasuje do wszystkich łańcuchów jednostek organizacyjnych w ramach środowiska docelowego. Na przykład 'orgUnitPath=/' zwraca wszystkich użytkowników w organizacji. Tego pola można używać tylko wtedy, gdy viewType=admin_view.
isEnrolledIn2Sv boolean = Określa, czy użytkownik zarejestrował się w usłudze weryfikacji dwuetapowej.
isEnforcedIn2Sv boolean = Określa, czy na kontach użytkowników jest wymuszane korzystanie z weryfikacji dwuetapowej.
schemaName.fieldName ? ? Niestandardowy atrybut użytkownika, do którego odwołuje się jego schemat i nazwa pola. Właściwość indexed tego pola musi być ustawiona na true.

Typy wartości

Typ wartości Odpowiednik fieldType schematu Uwagi
string, STRING, EMAIL, PHONE Jeśli zapytanie zawiera spacje, ujmij je w pojedyncze cudzysłowy '. Jeśli w zapytaniach używasz znaku \', zmień znaczenie pojedynczego cudzysłowu, np. 'Valentine\'s Day'.
boolean BOOL Musi mieć wartość true lub false. Obsługuje tylko operator =.
Liczba INT64, DOUBLE Jako separatora dziesiętnego należy użyć kropki, a nie separatora tysięcy, np. 150430.25.
date DATE Jest podany w formacie RRRR-MM-DD, np. 2001-02-15.

Operatory

Operator Obsługiwane typy wartości Uwagi
= string, boolean, number, date Pole i wartość są dokładnie takie same. Na przykład givenName=Jane pasuje do wszystkich użytkowników z atrybutem givenName "Jane", ale nie pasuje do "Jane Ann". Obsługiwana w przypadku większości pól ciągu znaków (patrz wyżej).
: string, Pole zawiera całe wyrazy w określonej kolejności. Na przykład zapytanie z parametrem givenName:Jane odpowiada użytkownikom, których givenName ma wartość "Jane" i "Jane Ann", ale nie "Janet". Zapytanie wielowyrazowe 'givenName:Mary Ann' zwróciłoby się z wartościami "Mary Ann Evans" i "Sarah Mary Ann", ale nie "Ann Mary". Obsługiwana w przypadku większości pól ciągu znaków (patrz wyżej).
:{PREFIX}* string, Pole zaczyna się od wartości. Na przykład zapytanie z parametrem givenName:Jane* odpowiada użytkownikom, których givenName ma wartości "Jane", "Jane Ann" i "Janet", ale nie "Sarah Jane". Ta funkcja jest obsługiwana tylko w przypadku ograniczonej liczby pól ciągów tekstowych (patrz wyżej). Nieobsługiwane w przypadku atrybutów niestandardowych.
:[{MIN},{MAX}] liczba, data Pole mieści się w zakresie. Aby można było dopasować, wartość pola musi być większa lub równa {MIN} i mniejsza niż {MAX}. Aby można było obsługiwać ten operator, atrybuty niestandardowych liczb muszą zawierać parametr numericIndexingSpec.
> liczba, data Wartość w polu jest większa od wartości. Aby można było obsługiwać ten operator, atrybuty niestandardowych liczb muszą zawierać parametr numericIndexingSpec.
>= liczba, data Wartość w polu jest większa od wartości lub jej równa. Aby można było obsługiwać ten operator, atrybuty niestandardowych liczb muszą zawierać parametr numericIndexingSpec.
< liczba, data Wartość w polu jest mniejsza od wartości. Aby można było obsługiwać ten operator, atrybuty niestandardowych liczb muszą zawierać parametr numericIndexingSpec.
<= liczba, data Wartość w polu jest mniejsza od wartości lub jej równa. Aby można było obsługiwać ten operator, atrybuty niestandardowych liczb muszą zawierać parametr numericIndexingSpec.

Przykłady

Wszystkie zapytania korzystają z metody users.list, która zawiera żądanie HTTP podobne do tego (podziały wierszy uwzględnione w celu zwiększenia czytelności):

GET https://admin.googleapis.com/admin/directory/v1/users?domain=DOMAIN_NAME&query=QUERY_PARAMETERS

Wyszukiwanie użytkownika według nazwy

Pole zapytania name testuje połączone wartości givenName i familyName. Zapytanie name='Jane' nie zwraca żadnych wyników dla użytkownika z atrybutami givenName='Jane' i familyName='Smith'.

name='Jane Smith'

Wyszukiwanie użytkowników z elementem givenName LUB familyName zawierającym wartość

name:'Jane'

Wyszukiwanie użytkowników pasujących do prefiksu adresu e-mail

email:admin*

Wyszukaj wszystkich superadministratorów

isAdmin=true

Wyszukaj użytkowników, których orgTitles zawiera słowo „Menedżer”

orgTitle:Manager

Wyszukiwanie użytkowników z wspólnym menedżerem w łańcuchu raportowania

manager='janesmith@example.com'

Wyszukiwanie użytkowników z tym samym bezpośrednim menedżerem

directManager='bobjones@example.com'

Wyszukiwanie użytkowników w danym kraju

addressCountry='Sweden'

Wyszukiwanie użytkowników w określonej organizacji

orgName='Human Resources'

Wyszukiwanie menedżerów w określonej organizacji

orgName=Engineering orgTitle:Manager

Wyszukaj niestandardowe atrybuty użytkownika

Wyszukaj wszystkich pracowników, którzy pracują nad określonym projektem

EmploymentData.projects:'GeneGnomes'

Wyszukiwanie wszystkich pracowników w określonej lokalizacji

EmploymentData.location='Atlanta'

Wyszukaj wszystkich pracowników na poziomie wyższym niż 7

EmploymentData.jobLevel>=7

Wyszukaj wszystkich pracowników na poziomach >= 5 i <8

EmploymentData.jobLevel:[5,8]

Wyszukaj wszystkich pracowników, którzy korzystają z weryfikacji dwuetapowej

isEnrolledIn2Sv=true

Wyszukaj wszystkich pracowników, którzy mają wymuszoną weryfikację dwuetapową

isEnforcedIn2Sv=true