object userdirectory.test(array userDirectory)
This method allows to test user directory connection settings.
This method is only available to Super admin user type.
(object)
User directory properties.
Since userdirectory.get
API does not return bind_password
field, userdirectoryid
and/or bind_password
should be supplied.
Additionally to the standard user directory properties, the method accepts the following parameters.
Parameter | Type | Description |
---|---|---|
test_username | string | Username to test in user directory. |
test_password | string | Username associated password to test in user directory. |
(bool)
成功した場合はtrueを返します。
"user1"のユーザーディレクトリ"3"をテストします。
リクエスト :
{
"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
}
レスポンス :
存在しない"user2"でユーザーディレクトリ"3"のテストをします。
リクエスト :
{
"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
}
レスポンス :
{
"jsonrpc": "2.0",
"error": {
"code": -32500,
"message": "Application error.",
"data": "Incorrect user name or password or account is temporarily blocked."
},
"id": 1
}
"user3"プロビジョニングのユーザーディレクトリ設定と一致する構成されたデータのユーザーディレクトリ"3"をテストします (例えば、何かユーザーの役割、ユーザーグループ、ユーザーメディアがユーザーに割り当てられます)。
{
"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
}
レスポンス:
{
"jsonrpc": "2.0",
"result": {
"username": "user3",
"name": "John",
"surname": "Doe",
"medias": [],
"usrgrps": [
{
"usrgrpid": "8"
},
{
"usrgrpid": "7"
}
],
"roleid": "2",
"userdirectoryid": "2"
},
"id": 1
}
CUserDirectory::test() in ui/include/classes/api/services/CUserDirectory.php.