object userdirectory.test(array userDirectory)
このメソッドは、ユーザーディレクトリの接続設定をテストします。
このメソッドは、ユーザープロビジョニングのユーザーディレクトリ設定と一致する設定データ(例:ユーザーに割り当てられるユーザーロール、ユーザーグループ、ユーザーメディア)をテストすることもできます。 このタイプのテストでは、provision_status
が有効に設定されている ユーザーディレクトリ に対して API リクエストを送信する必要があります。
このメソッドは、スーパー管理者 ユーザータイプでのみ使用できます。
(object)
ユーザーディレクトリのプロパティ
userdirectory.get
API は bind_password
フィールドを返さないため、userdirectoryid
または bind_password
を指定する必要があります。 標準のユーザーディレクトリのプロパティに加えて、このメソッドは以下のパラメータを受け入れます。
パラメータ | タイプ | 説明 |
---|---|---|
test_username | 文字列 | ユーザーディレクトリでテストするユーザー名 |
test_password | 文字列 | ユーザーディレクトリでテストするユーザー名に関連付けられたパスワード |
(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.