userdirectory.create
Description
object userdirectory.create(object/array userDirectory)
Cette méthode permet de créer de nouveaux répertoires d’utilisateurs.
Cette méthode est disponible uniquement pour le type d’utilisateur Super admin.
Paramètres
(object/array) Répertoires utilisateur à créer.
La méthode accepte des répertoires utilisateur avec les propriétés standard des répertoires utilisateur.
Valeurs de retour
(object) Renvoie un objet contenant les ID des répertoires utilisateurs créés dans la propriété userdirectoryids.
L’ordre des ID renvoyés correspond à l’ordre des répertoires utilisateurs transmis.
Exemples
Création d’un répertoire d’utilisateurs
Créez un répertoire d’utilisateurs pour authentifier les utilisateurs avec StartTLS via LDAP. Notez que pour authentifier les utilisateurs via LDAP, l’authentification LDAP doit être activée.
Requête :
{
"jsonrpc": "2.0",
"method": "userdirectory.create",
"params": {
"idp_type": "1",
"name": "LDAP API server #1",
"host": "ldap://local.ldap",
"port": "389",
"base_dn": "ou=Users,dc=example,dc=org",
"bind_dn": "cn=ldap_search,dc=example,dc=org",
"bind_password": "ldapsecretpassword",
"search_attribute": "uid",
"start_tls": "1"
},
"id": 1
}
Réponse :
{
"jsonrpc": "2.0",
"result": {
"userdirectoryids": [
"3"
]
},
"id": 1
}
Création d’un annuaire d’utilisateurs (provisionnement JIT activé)
Créez un annuaire d’utilisateurs pour authentifier les utilisateurs via LDAP (avec le provisionnement JIT activé). Notez que pour authentifier les utilisateurs via LDAP, l’authentification LDAP doit être activée.
Requête :
{
"jsonrpc": "2.0",
"method": "userdirectory.create",
"params": {
"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": [
{
"name": "example.com",
"mediatypeid": "1",
"attribute": "[email protected]"
}
],
"provision_groups": [
{
"name": "*",
"roleid": "4",
"user_groups": [
{
"usrgrpid": "8"
}
]
},
{
"name": "Zabbix administrators",
"roleid": "2",
"user_groups": [
{
"usrgrpid": "7"
},
{
"usrgrpid": "8"
}
]
}
]
},
"id": 1
}
Réponse :
{
"jsonrpc": "2.0",
"result": {
"userdirectoryids": [
"2"
]
},
"id": 1
}
Source
CUserDirectory::create() dans ui/include/classes/api/services/CUserDirectory.php.