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.

Depuis Zabbix 7.0.9, lors de la demande d'informations sur les médias utilisateur, les permissions ou les rôles, les utilisateurs de type Admin et User peuvent récupérer des données uniquement sur leur propre utilisateur. Pour un exemple, voir Récupération des utilisateurs en tant qu'Admin.

Parameter Type Description
mediaids ID/array Ne renvoyer que les utilisateurs qui utilisent les médias indiqués.
mediatypeids ID/array Ne renvoyer que les utilisateurs qui utilisent les types de médias indiqués.
userids ID/array Ne renvoyer que les utilisateurs ayant les IDs indiqués.
usrgrpids ID/array Ne renvoyer que les utilisateurs appartenant aux groupes d'utilisateurs indiqués.
getAccess flag Ajoute des informations supplémentaires sur les permissions de l'utilisateur.

Ajoute les propriétés suivantes pour chaque utilisateur :
gui_access - (integer) méthode d'authentification de l'interface de l'utilisateur. Consultez la propriété gui_access de l'objet groupe d'utilisateurs pour une 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 Renvoyer les médias utilisés par l'utilisateur dans la propriété medias.
selectMediatypes query Renvoyer les types de médias utilisés par l'utilisateur dans la propriété mediatypes.

Voir mediatype.get pour les restrictions basées sur le type d'utilisateur.
selectUsrgrps query Renvoyer les groupes d'utilisateurs auxquels l'utilisateur appartient dans la propriété usrgrps.

Voir usergroup.get pour les restrictions basées sur le type d'utilisateur.
selectRole query Renvoyer le rôle de l'utilisateur dans la propriété role.
filter object Ne renvoyer que les résultats correspondant exactement au filtre donné.

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

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

Propriétés possibles de l'objet User pour les utilisateurs de type Admin et User lors de la demande de données sur les utilisateurs de leur groupe d'utilisateurs (depuis Zabbix 7.0.9) : userid, name, surname, username.
output query Propriétés de l'objet User à renvoyer.

Depuis Zabbix 7.0.9, les utilisateurs de type Admin et User peuvent récupérer uniquement 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 Renvoyer les résultats correspondant au modèle donné (insensible à la casse).

Accepte un objet, où les clés sont des noms de propriétés 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 de type de données string et text data type.

Propriétés possibles de l'objet User pour les utilisateurs de type Admin et User lors de la demande de données sur les utilisateurs de leur groupe d'utilisateurs (depuis Zabbix 7.0.9) : name, surname, username.
sortfield string/array Trier le résultat selon les propriétés indiqué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 aussi

Source

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