user.get

Description

integer/array user.get(object parameters)

La méthode permet de récupérer des utilisateurs selon les paramètres fournis.

Cette méthode est disponible pour les utilisateurs de tout type. Les autorisations d’appeler la méthode peuvent être révoquées dans les paramètres du rôle utilisateur. Voir User roles pour plus d’informations.

Paramètres

(object) Paramètres définissant la sortie souhaitée.

La méthode prend en charge les paramètres suivants.

Lors de la demande d’informations sur les médias utilisateur, les autorisations ou les rôles, les utilisateurs de type Admin et User ne peuvent récupérer des données que sur leur propre utilisateur. Pour un exemple, voir Récupération des utilisateurs en tant qu’Admin.

Paramètre Type Description
mediaids ID/array Retourner uniquement les utilisateurs qui utilisent le média donné.
mediatypeids ID/array Retourner uniquement les utilisateurs qui utilisent les types de média donnés.
userids ID/array Retourner uniquement les utilisateurs ayant les ID donnés.
usrgrpids ID/array Retourner uniquement les utilisateurs appartenant aux groupes d’utilisateurs donnés.
getAccess flag Ajoute des informations supplémentaires sur les autorisations de l’utilisateur.

Ajoute les propriétés suivantes pour chaque utilisateur :
gui_access - (integer) méthode d’authentification frontend de l’utilisateur. Reportez-vous à la propriété gui_access de l’objet groupe d’utilisateurs pour la liste des valeurs possibles.
debug_mode - (integer) indique si le débogage est activé pour l’utilisateur. Valeurs possibles : 0 - débogage désactivé, 1 - débogage activé.
users_status - (integer) indique si l’utilisateur est désactivé. Valeurs possibles : 0 - utilisateur activé, 1 - utilisateur désactivé.
selectMedias query Retourner les médias utilisés par l’utilisateur dans la propriété medias.
selectMediatypes query Retourner les types de média utilisés par l’utilisateur dans la propriété mediatypes.

Voir mediatype.get pour les restrictions selon le type d’utilisateur.
selectUsrgrps query Retourner les groupes d’utilisateurs auxquels l’utilisateur appartient dans la propriété usrgrps.

Voir usergroup.get pour les restrictions selon le type d’utilisateur.
selectRole query Retourner le rôle utilisateur dans la propriété role.
filter object Retourner uniquement les résultats qui correspondent exactement au filtre donné.

Accepte un objet où les clés sont des noms de propriété et les valeurs sont soit une valeur unique, soit un tableau de valeurs à comparer.

Ne prend pas en charge les propriétés du type de données text.

Propriétés possibles de l’objet User pour les utilisateurs de type Admin et User lors de la demande de données sur des utilisateurs de leur groupe d’utilisateurs : userid, name, surname, username.
output query Propriétés de l’objet User à retourner.

Les utilisateurs de type Admin et User ne peuvent récupérer que les propriétés suivantes :
- Pour leur propre utilisateur : userid, attempt_clock, attempt_failed, attempt_ip, autologin, autologout, lang, name, provisioned, refresh, roleid, rows_per_page, surname, theme, timezone, url, username.
- Pour les utilisateurs de leur groupe d’utilisateurs : userid, name, surname, username.

Par défaut : extend.
search object Retourner les résultats correspondant au motif donné (insensible à la casse).

Accepte un objet où les clés sont des noms de propriété et les valeurs sont des chaînes à rechercher. Si aucune option supplémentaire n’est fournie, cela effectuera une recherche LIKE "%…%".

Prend en charge uniquement les propriétés des types de données string et text.

Propriétés possibles de l’objet User pour les utilisateurs de type Admin et User lors de la demande de données sur des utilisateurs de leur groupe d’utilisateurs : name, surname, username.
sortfield string/array Trier le résultat selon les propriétés données.

Valeurs possibles : userid, username.
countOutput boolean Ces paramètres sont décrits dans le commentaire de référence.
editable boolean
excludeSearch boolean
limit integer
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valeurs retournées

(integer/array) Renvoie soit :

  • un tableau d'objets ;
  • le nombre d'objets récupérés, si le paramètre countOutput a été utilisé.

Exemples

Récupération des utilisateurs

Récupérez tous les utilisateurs configurés.

Requête:

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

Réponse :

{
    "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
}

Récupération des utilisateurs en tant qu’Admin

En tant qu’utilisateur de type Admin, récupérez des données détaillées sur votre propre utilisateur ainsi que des données limitées pour les utilisateurs de votre groupe d’utilisateurs.

Requête:

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

Réponse :

{
    "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
}

Récupération des données utilisateur

Récupérez les données d'un utilisateur avec l'ID « 12 ».

Requête :

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

Réponse :

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

Voir également

Source

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