You are viewing documentation for the development version, it may be incomplete.
Join our translation project and help translate Zabbix documentation into your native language.

userdirectory.test

説明

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
       }

レスポンス :

{
           "jsonrpc": "2.0",
           "result": true,
           "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.