userdirectory.get

Опис

integer/array userdirectory.get(object parameters)

Метод омогућава преузимање корисничких директоријума према датим параметрима.

Овај метод је доступан само типовима корисника Супер администратор.

Параметри

(object) Параметри који дефинишу жељени излаз.

Метода подржава следеће параметре.

Parameter Type Description
userdirectoryids ID/array Врати само корисничке директоријуме са датим ID-ијевима.
selectUsrgrps query Врати својство usrgrps са корисничке групе повезане са корисничким директоријумом.

Подржава count.
selectProvisionMedia query Врати својство provision_media са мапирањем типа медија повезано са корисничким директоријумом.
selectProvisionGroups query Врати својство provision_groups са мапирањем групе за провизију повезано са корисничким директоријумом.
sortfield string/array Сортирај резултат према датим особинама.

Могуће вредности: name.
filter object Врати само оне резултате који се тачно подударају са датим филтером.

Прихвата објекат, где су кључеви имена својстава, а вредности су или једна вредност или низ вредности.

Подржава својства: userdirectoryid, idp_type, provision_status.
search object Врати резултате који се поклапају са датим обрасцем (без обзира на велика и мала слова).

Прихвата објекат, где су кључеви имена својстава, а вредности низови за претраживање. Ако се не дају додатне опције, ово ће извршити претрагу LIKE "%…%".

Подржана својства: име, опис.

Кориснички директоријум типа SAML ће имају празну вредност за својства name and description. Оба својства се могу променити операцијом userdirectory.update.
countOutput boolean Ови параметри који су заједнички за све get методе су детаљно описани у референтном коментару.
excludeSearch boolean
limit integer
output query
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Повратне вредности

(integer/array) Враћа било:

  • низ објеката;
  • број преузетих објеката, ако је параметар countOutput коришћен.

Примери

Преузимање корисничких директоријума

Преузима све корисничке директоријуме са додатним својствима која приказују мапирања типова медија и мапирања група за обезбеђивање повезаних са сваким корисничким директоријумом.

Захтев:

{
           "jsonrpc": "2.0",
           "method": "userdirectory.get",
           "params": {
               "output": "extend",
               "selectProvisionMedia": "extend",
               "selectProvisionGroups": "extend"
           },
           "id": 1
       }

Одговор:

{
           "jsonrpc": "2.0",
           "result": [
              {
                   "userdirectoryid": "1",
                   "idp_type": "2",
                   "name": "",
                   "provision_status": "1",
                   "description": "",
                   "group_name": "groups",
                   "user_username": "",
                   "user_lastname": "",
                   "idp_entityid": "http://example.com/simplesaml/saml2/idp/metadata.php",
                   "sso_url": "http://example.com/simplesaml/saml2/idp/SSOService.php",
                   "slo_url": "",
                   "username_attribute": "uid",
                   "sp_entityid": "zabbix",
                   "nameid_format": "",
                   "sign_messages": "0",
                   "sign_assertions": "0",
                   "sign_authn_requests": "0",
                   "sign_logout_requests": "0",
                   "sign_logout_responses": "0",
                   "encrypt_nameid": "0",
                   "encrypt_assertions": "0",
                   "scim_status": "1",
                   "provision_media": [
                       {
                           "userdirectory_mediaid": "1",
                           "name": "example.com",
                           "mediatypeid": "1",
                           "attribute": "[email protected]",
                           "active": "0",
                           "severity": "63",
                           "period": "1-7,00:00-24:00"
                       }
                   ],
                   "provision_groups": [
                       {
                           "name": "*",
                           "roleid": "1",
                           "user_groups": [
                               {
                                   "usrgrpid": "13"
                               }
                           ]
                       }
                   ]
               },
               {
                   "userdirectoryid": "2",
                   "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": [
                       {
                           "userdirectory_mediaid": "2",
                           "name": "example.com",
                           "mediatypeid": "1",
                           "attribute": "[email protected]",
                           "active": "0",
                           "severity": "63",
                           "period": "1-7,00:00-24:00"
                       }
                   ],
                   "provision_groups": [
                       {
                           "name": "*",
                           "roleid": "4",
                           "user_groups": [
                               {
                                   "usrgrpid": "8"
                               }
                           ]
                       },
                       {
                           "name": "Zabbix administrators",
                           "roleid": "2",
                           "user_groups": [
                               {
                                   "usrgrpid": "7"
                               },
                               {
                                   "usrgrpid": "8"
                               }
                           ]
                       }
                   ]
               },
               {
                   "userdirectoryid": "3",
                   "idp_type": "1",
                   "name": "LDAP API server #1",
                   "provision_status": "0",
                   "description": "",
                   "host": "ldap://local.ldap",
                   "port": "389",
                   "base_dn": "ou=Users,dc=example,dc=org",
                   "search_attribute": "uid",
                   "bind_dn": "cn=ldap_search,dc=example,dc=org",
                   "start_tls": "1",
                   "search_filter": "",
                   "group_basedn": "",
                   "group_name": "",
                   "group_member": "",
                   "group_filter": "",
                   "group_membership": "",
                   "user_username": "",
                   "user_lastname": "",
                   "user_ref_attr": "",
                   "provision_media": [],
                   "provision_groups": []
               }
           ],
           "id": 1
       }

Погледајте такође

Извор

CUserDirectory::get() у ui/include/classes/api/services/CUserDirectory.php.