[comment]: # translation:outdated

[comment]: # ({caf91c6b-f9e8f670})
# userdirectory.test

[comment]: # ({/caf91c6b-f9e8f670})

[comment]: # ({99f1236b-b5ff62ed})
### Descripció

`object userdirectory.test(array userDirectory)`

Aquest mètode permet provar la configuració de connexió del directori d'usuari.

::: noteclassic
Aquest mètode també permet provar quines dades configurades coincideixen amb la configuració del directori d'usuari per al subministrament d'usuaris (p. ex., quina funció d'usuari, grups d'usuaris, mitjans d'usuari s'assignaran a l'usuari).
Per a aquest tipus de prova, la petició de l'API s'ha de fer per a un [directori d'usuari](/manual/api/reference/userdirectory/object#userdirectory) que tingui `provision_status` activat.
:::

::: noteclassic
Aquest mètode només és disponible per al tipus d'usuari *Superadministrador*.
:::

[comment]: # ({/99f1236b-b5ff62ed})

[comment]: # ({01dc85f0-d99c84a0})
### Paràmetres

`(objecte)` Propietats del directori d'usuari.

Com que l'API `userdirectory.get` no retorna el camp `bind_password`, s'haurien de proporcionar `userdirectoryid` i/o `bind_password`.\
A més de les [propietats del directori d'usuari estàndard] (objecte#directori d'usuari), el mètode admet els paràmetres següents.

|Paràmetre|[Tipus](/manual/api/reference_commentary#data_types)|Descripció|
|--|--|------|
|test_username|cadena|Nom d'usuari per provar al directori d'usuaris.|
|test_password|cadena|Mot de pas associat al nom d'usuari per provar al directori d'usuaris.|

[comment]: # ({/01dc85f0-d99c84a0})

[comment]: # ({0a19e6a5-99a75467})
### Valors de retorn

`(bool)` retorna cert si ha anat bé.

[comment]: # ({/0a19e6a5-99a75467})

[comment]: # ({b41637d2-47b9eb66})
### Exemples

[comment]: # ({/b41637d2-47b9eb66})

[comment]: # ({0ec66727-9f73d089})
##### Provar el directori d'usuari d'un usuari existent

Prova el directori d'usuari "3" per l'"user1".

[Petició](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "userdirectory.test",
    "params": {
        "userdirectoryid": "3",
        "host": "127.0.0.1",
        "port": "389",
        "base_dn": "ou=Users,dc=example,dc=org",
        "search_attribute": "uid",
        "bind_dn": "cn=ldap_search,dc=example,dc=org",
        "bind_password": "password",
        "test_username": "user1",
        "test_password": "password"
    },
    "id": 1
}
```

Resposta:

```json
{
    "jsonrpc": "2.0",
    "result": true,
    "id": 1
}
```

[comment]: # ({/0ec66727-9f73d089})

[comment]: # ({fa573532-a8a25347})
##### Provar el directori d'usuari d'un usuari no existent

Prova el directori d'usuari "3" per l'"user2" no existent.

[Petició](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "userdirectory.test",
    "params": {
        "userdirectoryid": "3",
        "host": "127.0.0.1",
        "port": "389",
        "base_dn": "ou=Users,dc=example,dc=org",
        "search_attribute": "uid",
        "bind_dn": "cn=ldap_search,dc=example,dc=org",
        "test_username": "user2",
        "test_password": "password"
    },
    "id": 1
}
```

Resposta:

```json
{
"jsonrpc": "2.0",
"error": {
"code": -32500,
"message": "Error d'aplicació.",
"data": "usuari o paraula de pas incorrectes, o bé el compte és blocat temporalment."
},
"id": 1
}
```

[comment]: # ({/fa573532-a8a25347})

[comment]: # ({79a981ca-54c18b14})
##### Provar el directori d'usuari per l'aprovisionament d'usuari

Prova el directori d'usuari "3" per la informació configurada que coincideixi amb les configuracions del directori d'usuari per l'aprovisionament de l'usuari "user3" (p.e., quin rol d'usuari, grups d'usuaris, suports d'usuari s'assignaran a l'usuari).

[Petició](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "userdirectory.test",
    "params": {
        "userdirectoryid": "2",
        "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",
        "test_username": "user3",
        "test_password": "password"
    },
    "id": 1
}
```

Resposta:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "username": "user3",
        "name": "John",
        "surname": "Doe",
        "medias": [],
        "usrgrps": [
            {
                "usrgrpid": "8"
            },
            {
                "usrgrpid": "7"
            }
        ],
        "roleid": "2",
        "userdirectoryid": "2"
    },
    "id": 1
}
```

[comment]: # ({/79a981ca-54c18b14})

[comment]: # ({e28d4bf9-0402a0f4})
### Font

CUserDirectory::test() a *ui/include/classes/api/services/CUserDirectory.php*.

[comment]: # ({/e28d4bf9-0402a0f4})
