user.get

Opis

integer/array user.get(object parameters)

Ta metoda umożliwia pobieranie użytkowników zgodnie z podanymi parametrami.

Ta metoda jest dostępna dla użytkowników dowolnego typu. Uprawnienia do wywoływania tej metody mogą zostać cofnięte w ustawieniach roli użytkownika. Więcej informacji można znaleźć w sekcji Role użytkowników.

Parametry

(object) Parametry definiujące oczekiwany wynik.

Metoda obsługuje następujące parametry.

Od Zabbix 7.0.9, podczas pobierania informacji o mediach użytkownika, uprawnieniach lub roli, użytkownicy typu Admin i User mogą pobierać dane tylko o własnym użytkowniku. Przykład: zobacz Pobieranie użytkowników jako Admin.

Parameter Type Description
mediaids ID/array Zwraca tylko użytkowników korzystających z podanych mediów.
mediatypeids ID/array Zwraca tylko użytkowników korzystających z podanych typów mediów.
userids ID/array Zwraca tylko użytkowników o podanych identyfikatorach.
usrgrpids ID/array Zwraca tylko użytkowników należących do podanych grup użytkowników.
getAccess flag Dodaje dodatkowe informacje o uprawnieniach użytkownika.

Dodaje następujące właściwości dla każdego użytkownika:
gui_access - (integer) metoda uwierzytelniania użytkownika w frontend. Zobacz właściwość gui_access obiektu grupy użytkowników, aby poznać listę możliwych wartości.
debug_mode - (integer) wskazuje, czy debugowanie jest włączone dla użytkownika. Możliwe wartości: 0 - debugowanie wyłączone, 1 - debugowanie włączone.
users_status - (integer) wskazuje, czy użytkownik jest wyłączony. Możliwe wartości: 0 - użytkownik włączony, 1 - użytkownik wyłączony.
selectMedias query Zwraca media używane przez użytkownika we właściwości medias.
selectMediatypes query Zwraca typy mediów używane przez użytkownika we właściwości mediatypes.

Zobacz mediatype.get, aby poznać ograniczenia zależne od typu użytkownika.
selectUsrgrps query Zwraca grupy użytkowników, do których należy użytkownik, we właściwości usrgrps.

Zobacz usergroup.get, aby poznać ograniczenia zależne od typu użytkownika.
selectRole query Zwraca rolę użytkownika we właściwości role.
filter object Zwraca tylko te wyniki, które dokładnie pasują do podanego filtra.

Przyjmuje obiekt, w którym klucze są nazwami właściwości, a wartościami są pojedyncza wartość lub tablica wartości, z którymi ma nastąpić dopasowanie.

Nie obsługuje właściwości typu danych text data type.

Możliwe właściwości obiektu User dla użytkowników typu Admin i User podczas pobierania danych o użytkownikach w ich grupie użytkowników (od Zabbix 7.0.9): userid, name, surname, username.
output query Właściwości obiektu User, które mają zostać zwrócone.

Od Zabbix 7.0.9 użytkownicy typu Admin i User mogą pobierać tylko następujące właściwości:
- Dla własnego użytkownika: userid, attempt_clock, attempt_failed, attempt_ip, autologin, autologout, lang, name, provisioned, refresh, roleid, rows_per_page, surname, theme, timezone, url, username.
- Dla użytkowników w ich grupie użytkowników: userid, name, surname, username.

Domyślnie: extend.
search object Zwraca wyniki pasujące do podanego wzorca (bez uwzględniania wielkości liter).

Przyjmuje obiekt, w którym klucze są nazwami właściwości, a wartościami są ciągi znaków do wyszukania. Jeśli nie podano dodatkowych opcji, zostanie wykonane wyszukiwanie LIKE "%…%".

Obsługuje tylko właściwości typu danych string i text data type.

Możliwe właściwości obiektu User dla użytkowników typu Admin i User podczas pobierania danych o użytkownikach w ich grupie użytkowników (od Zabbix 7.0.9): name, surname, username.
sortfield string/array Sortuje wynik według podanych właściwości.

Możliwe wartości: userid, username.
countOutput boolean Te parametry są opisane w komentarzu referencyjnym.
editable boolean
excludeSearch boolean
limit integer
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Zwracane wartości

(integer/array) Zwraca:

  • tablicę obiektów;
  • liczbę pobranych obiektów, jeśli został użyty parametr countOutput.

Przykłady

Pobieranie użytkowników

Pobierz wszystkich skonfigurowanych użytkowników.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "user.get",
    "params": {
        "output": "extend"
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "userid": "1",
            "username": "Admin",
            "name": "Zabbix",
            "surname": "Administrator",
            "url": "",
            "autologin": "1",
            "autologout": "0",
            "lang": "en_US",
            "refresh": "0s",
            "theme": "default",
            "attempt_failed": "0",
            "attempt_ip": "",
            "attempt_clock": "0",
            "rows_per_page": "50",
            "timezone": "default",
            "roleid": "3",
            "userdirectoryid": "0",
            "ts_provisioned": "0"
        },
        {
            "userid": "2",
            "username": "guest",
            "name": "",
            "surname": "",
            "url": "",
            "autologin": "0",
            "autologout": "15m",
            "lang": "default",
            "refresh": "30s",
            "theme": "default",
            "attempt_failed": "0",
            "attempt_ip": "",
            "attempt_clock": "0",
            "rows_per_page": "50",
            "timezone": "default",
            "roleid": "4",
            "userdirectoryid": "0",
            "ts_provisioned": "0"
        },
        {
            "userid": "3",
            "username": "user",
            "name": "Zabbix",
            "surname": "User",
            "url": "",
            "autologin": "0",
            "autologout": "0",
            "lang": "ru_RU",
            "refresh": "15s",
            "theme": "dark-theme",
            "attempt_failed": "0",
            "attempt_ip": "",
            "attempt_clock": "0",
            "rows_per_page": "100",
            "timezone": "default",
            "roleid": "1",
            "userdirectoryid": "0",
            "ts_provisioned": "0"
        }
    ],
    "id": 1
}

Pobieranie użytkowników jako Admin

Jako użytkownik typu Admin pobierz szczegółowe dane o własnym użytkowniku oraz ograniczone dane użytkowników z własnej grupy użytkowników.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "user.get",
    "params": {
        "output": "extend",
        "getAccess": true,
        "selectMedias": "extend",
        "selectMediatypes": "extend",
        "selectUsrgrps": "extend",
        "selectRole": "extend"
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "userid": "1",
            "username": "Admin",
            "name": "Zabbix",
            "surname": "Administrator",
            "usrgrps": [
                {
                    "usrgrpid": "7",
                    "name": "Zabbix administrators",
                    "gui_access": "0",
                    "users_status": "0",
                    "debug_mode": "0",
                    "mfa_status": "0"
                }
            ]
        },
        {
            "userid": "3",
            "username": "database-admin",
            "name": "John",
            "surname": "Doe",
            "url": "",
            "autologin": "0",
            "autologout": "0",
            "lang": "default",
            "refresh": "30s",
            "theme": "default",
            "attempt_failed": "0",
            "attempt_ip": "",
            "attempt_clock": "0",
            "rows_per_page": "50",
            "timezone": "default",
            "roleid": "2",
            "provisioned": "0",
            "gui_access": "0",
            "debug_mode": "0",
            "users_status": "0",
            "usrgrps": [
                {
                    "usrgrpid": "7",
                    "name": "Zabbix administrators",
                    "gui_access": "0",
                    "users_status": "0",
                    "debug_mode": "0",
                    "mfa_status": "0"
                }
            ],
            "medias": [
                {
                    "mediaid": "2",
                    "mediatypeid": "1",
                    "sendto": [
                        "[email protected]"
                    ],
                    "active": "0",
                    "severity": "63",
                    "period": "1-7,00:00-24:00",
                    "provisioned": 0
                }
            ],
            "mediatypes": [
                {
                    "mediatypeid": "1",
                    "type": "0",
                    "name": "Email",
                    "status": "0",
                    "description": "",
                    "maxattempts": "3"
                }
            ],
            "role": {
                "roleid": "2",
                "name": "Admin role",
                "type": "2",
                "readonly": "0"
            }
        }
    ],
    "id": 1
}

Pobieranie danych użytkownika

Pobierz dane użytkownika o ID „12”.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "user.get",
    "params": {
        "output": ["userid", "username"],
        "selectRole": "extend",
        "userids": "12"
    },
    "id": 1
}

Odpowiedź:

{
  "jsonrpc": "2.0",
  "result": [
      {
          "userid": "12",
          "username": "John",
          "role": {
              "roleid": "5",
              "name": "Operator",
              "type": "1",
              "readonly": "0"
          }
      }
  ],
  "id": 1
}

Zobacz także

Źródło

CUser::get() w ui/include/classes/api/services/CUser.php.