Sommaire
userdirectory.get
Description
integer/array userdirectory.get(object parameters)
La méthode permet de récupérer les répertoires d’utilisateurs selon les paramètres fournis.
Cette méthode est disponible uniquement pour les types d’utilisateurs Super admin.
Paramètres
(object) Paramètres définissant la sortie souhaitée.
La méthode prend en charge les paramètres suivants.
| Parameter | Type | Description |
|---|---|---|
| userdirectoryids | ID/array | Ne renvoyer que les répertoires d'utilisateurs avec les ID donnés. |
| selectUsrgrps | query | Renvoyer une propriété usrgrps avec les groupes d'utilisateurs associés à un répertoire d'utilisateurs.Prend en charge count. |
| selectProvisionMedia | query | Renvoyer une propriété provision_media avec les mappages de types de média associés à un répertoire d'utilisateurs. |
| selectProvisionGroups | query | Renvoyer une propriété provision_groups avec les mappages de groupes de provisionnement associés à un répertoire d'utilisateurs. |
| sortfield | string/array | Trier le résultat selon les propriétés données. Valeurs possibles: name. |
| 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 seule valeur, soit un tableau de valeurs. Prend en charge les propriétés: userdirectoryid, idp_type, provision_status. |
| 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 les chaînes à rechercher. Si aucune option supplémentaire n'est fournie, cela effectuera une recherche LIKE "%…%".Propriétés prises en charge: name, description.Un répertoire d'utilisateurs de type SAML aura une valeur vide pour les propriétés name et description. Les deux propriétés peuvent être modifiées avec l'opération userdirectory.update. |
| countOutput | boolean | Ces paramètres sont décrits dans le commentaire de référence. |
| excludeSearch | boolean | |
| limit | integer | |
| output | query | |
| preservekeys | boolean | |
| searchByAny | boolean | |
| searchWildcardsEnabled | boolean | |
| sortorder | string/array | |
| startSearch | boolean |
Valeurs de retour
(integer/array) Renvoie soit :
- un tableau d'objets ;
- le nombre d'objets récupérés, si le paramètre
countOutputa été utilisé.
Exemples
Récupération des annuaires d’utilisateurs
Récupérez tous les annuaires d’utilisateurs avec des propriétés supplémentaires affichant les correspondances des types de média et les correspondances des groupes de provisionnement associées à chaque annuaire d’utilisateurs.
{
"jsonrpc": "2.0",
"method": "userdirectory.get",
"params": {
"output": "extend",
"selectProvisionMedia": "extend",
"selectProvisionGroups": "extend"
},
"id": 1
}
Réponse :
{
"jsonrpc": "2.0",
"result": [
{
"userdirectoryid": "1",
"idp_type": "2",
"name": "",
"provision_status": "1",
"description": "",
"group_name": "groups",
"user_username": "",
"user_lastname": "",
"idp_entityid": "http://example.com/simplesaml/saml2/idp/metadata.php",
"sso_url": "http://example.com/simplesaml/saml2/idp/SSOService.php",
"slo_url": "",
"username_attribute": "uid",
"sp_entityid": "zabbix",
"nameid_format": "",
"sign_messages": "0",
"sign_assertions": "0",
"sign_authn_requests": "0",
"sign_logout_requests": "0",
"sign_logout_responses": "0",
"encrypt_nameid": "0",
"encrypt_assertions": "0",
"scim_status": "1",
"provision_media": [
{
"userdirectory_mediaid": "1",
"name": "example.com",
"mediatypeid": "1",
"attribute": "[email protected]",
"active": "0",
"severity": "63",
"period": "1-7,00:00-24:00"
}
],
"provision_groups": [
{
"name": "*",
"roleid": "1",
"user_groups": [
{
"usrgrpid": "13"
}
]
}
]
},
{
"userdirectoryid": "2",
"idp_type": "1",
"name": "AD server",
"provision_status": "1",
"description": "",
"host": "host.example.com",
"port": "389",
"base_dn": "DC=zbx,DC=local",
"search_attribute": "sAMAccountName",
"bind_dn": "CN=Admin,OU=Users,OU=Zabbix,DC=zbx,DC=local",
"start_tls": "0",
"search_filter": "",
"group_basedn": "OU=Zabbix,DC=zbx,DC=local",
"group_name": "CN",
"group_member": "member",
"group_filter": "(%{groupattr}=CN=%{ref},OU=Users,OU=Zabbix,DC=zbx,DC=local)",
"group_membership": "",
"user_username": "givenName",
"user_lastname": "sn",
"user_ref_attr": "CN",
"provision_media": [
{
"userdirectory_mediaid": "2",
"name": "example.com",
"mediatypeid": "1",
"attribute": "[email protected]",
"active": "0",
"severity": "63",
"period": "1-7,00:00-24:00"
}
],
"provision_groups": [
{
"name": "*",
"roleid": "4",
"user_groups": [
{
"usrgrpid": "8"
}
]
},
{
"name": "Zabbix administrators",
"roleid": "2",
"user_groups": [
{
"usrgrpid": "7"
},
{
"usrgrpid": "8"
}
]
}
]
},
{
"userdirectoryid": "3",
"idp_type": "1",
"name": "LDAP API server #1",
"provision_status": "0",
"description": "",
"host": "ldap://local.ldap",
"port": "389",
"base_dn": "ou=Users,dc=example,dc=org",
"search_attribute": "uid",
"bind_dn": "cn=ldap_search,dc=example,dc=org",
"start_tls": "1",
"search_filter": "",
"group_basedn": "",
"group_name": "",
"group_member": "",
"group_filter": "",
"group_membership": "",
"user_username": "",
"user_lastname": "",
"user_ref_attr": "",
"provision_media": [],
"provision_groups": []
}
],
"id": 1
}
Voir aussi
Source
CUserDirectory::get() dans ui/include/classes/api/services/CUserDirectory.php.