创建

描述

object userdirectory.create(object/array userDirectory)

此方法用于创建新的用户目录。

此方法仅适用于Super admin(超级管理员)类型的用户。

参数

(object/array) 要创建的用户目录。 该方法接受具有标准用户目录属性的用户目录。

返回值

(object) 返回一个对象,该对象包含在userdirectoryids属性下创建的用户目录id。 返回的id的顺序与传递的用户目录的顺序匹配。

示例

创建一个用户目录

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

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "userdirectory.create",
  4. "params": {
  5. "idp_type": "1",
  6. "name": "LDAP API server #1",
  7. "host": "ldap://local.ldap",
  8. "port": "389",
  9. "base_dn": "ou=Users,dc=example,dc=org",
  10. "bind_dn": "cn=ldap_search,dc=example,dc=org",
  11. "bind_password": "ldapsecretpassword",
  12. "search_attribute": "uid",
  13. "start_tls": "1"
  14. },
  15. "id": 1
  16. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "userdirectoryids": [
  5. "3"
  6. ]
  7. },
  8. "id": 1
  9. }
创建一个用户目录 (已启用JIT设置)

创建用户目录以通过LDAP对用户进行身份验证 (已启用JIT设置)。 请注意,通过LDAP对用户进行身份验证时,LDAP 身份认证必须开启。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "userdirectory.create",
  4. "params": {
  5. "idp_type": "1",
  6. "name": "AD server",
  7. "provision_status": "1",
  8. "description": "",
  9. "host": "host.example.com",
  10. "port": "389",
  11. "base_dn": "DC=zbx,DC=local",
  12. "search_attribute": "sAMAccountName",
  13. "bind_dn": "CN=Admin,OU=Users,OU=Zabbix,DC=zbx,DC=local",
  14. "start_tls": "0",
  15. "search_filter": "",
  16. "group_basedn": "OU=Zabbix,DC=zbx,DC=local",
  17. "group_name": "CN",
  18. "group_member": "member",
  19. "group_filter": "(%{groupattr}=CN=%{ref},OU=Users,OU=Zabbix,DC=zbx,DC=local)",
  20. "group_membership": "",
  21. "user_username": "givenName",
  22. "user_lastname": "sn",
  23. "user_ref_attr": "CN",
  24. "provision_media": [
  25. {
  26. "name": "example.com",
  27. "mediatypeid": "1",
  28. "attribute": "[email protected]"
  29. }
  30. ],
  31. "provision_groups": [
  32. {
  33. "name": "*",
  34. "roleid": "4",
  35. "user_groups": [
  36. {
  37. "usrgrpid": "8"
  38. }
  39. ]
  40. },
  41. {
  42. "name": "Zabbix administrators",
  43. "roleid": "2",
  44. "user_groups": [
  45. {
  46. "usrgrpid": "7"
  47. },
  48. {
  49. "usrgrpid": "8"
  50. }
  51. ]
  52. }
  53. ]
  54. },
  55. "id": 1
  56. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "userdirectoryids": [
  5. "2"
  6. ]
  7. },
  8. "id": 1
  9. }

来源

CUserDirectory::create() in ui/include/classes/api/services/CUserDirectory.php.