用户目录创建

描述

object userdirectory.create(object/array userDirectory)

此方法允许create新的用户目录。

此方法仅适用于超级管理员用户类型。

参数

(object/array) 要创建的用户目录。

该方法接受带有 用户目录 的用户目录。

返回值

(object) 返回一个 object,其中包含在 userdirectoryids 属性下列出的已创建用户目录的 ID。
返回的 ID 顺序与传入的用户目录顺序一致。

示例

创建用户目录

创建一个用户目录,通过 StartTLS 使用 LDAP 对用户进行身份验证。 请注意,要通过 LDAP 对用户进行身份验证,必须启用 认证-object

执行请求:

{
    "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
}

响应:

{
    "jsonrpc": "2.0",
    "result": {
        "userdirectoryids": [
            "3"
        ]
    },
    "id": 1
}
创建用户目录(启用JIT配置)

创建一个用户目录,通过 LDAP 对用户进行身份验证(启用 JIT 预配)。 请注意,要通过 LDAP 对用户进行身份验证,必须启用 认证-object

执行请求:

{
    "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
}

响应:

{
    "jsonrpc": "2.0",
    "result": {
        "userdirectoryids": [
            "2"
        ]
    },
    "id": 1
}

来源

CUserDirectory::create() 在 ui/include/classes/api/services/CUserDirectory.php 中。