userdirectory.get

Descrizione

integer/array userdirectory.get(object parameters)

Questo metodo consente di recuperare le directory utente in base ai parametri specificati.

Questo metodo è disponibile solo per i tipi di utente Super admin.

Parametri

(object) Parametri che definiscono l'output desiderato.

Il metodo supporta i seguenti parametri.

Parametro Tipo Descrizione
userdirectoryids ID/array Restituisce solo le directory utente con gli ID specificati.
selectUsrgrps query Restituisce una proprietà usrgrps con i gruppi utenti associati a una directory utente.

Supporta count.
selectProvisionMedia query Restituisce una proprietà provision_media con le mappature dei tipi di supporto associate a una directory utente.
selectProvisionGroups query Restituisce una proprietà provision_groups con le mappature dei gruppi di provisioning associate a una directory utente.
sortfield string/array Ordina il risultato in base alle proprietà specificate.

Valori possibili: name.
filter object Restituisce solo i risultati che corrispondono esattamente al filtro specificato.

Accetta un oggetto, in cui le chiavi sono nomi di proprietà e i valori sono un singolo valore oppure un array di valori.

Supporta le proprietà: userdirectoryid, idp_type, provision_status.
search object Restituisce i risultati che corrispondono al modello specificato (senza distinzione tra maiuscole e minuscole).

Accetta un oggetto, in cui le chiavi sono nomi di proprietà e i valori sono stringhe da cercare. Se non vengono fornite opzioni aggiuntive, verrà eseguita una ricerca LIKE "%…%".

Proprietà supportate: name, description.

La directory utente di tipo SAML avrà un valore vuoto sia per la proprietà name sia per la proprietà description. Entrambe le proprietà possono essere modificate con l'operazione userdirectory.update.
countOutput boolean Questi parametri sono descritti nel commento di riferimento.
excludeSearch boolean
limit integer
output query
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valori restituiti

(integer/array) Restituisce:

  • un array di oggetti
  • il numero di oggetti recuperati, se è stato utilizzato il parametro countOutput

Esempi

Recupero delle directory utente

Recupera tutte le directory utente con proprietà aggiuntive che mostrano le mappature dei tipi di supporto e le mappature dei gruppi di provisioning associate a ciascuna directory utente.

Richiesta:

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

Risposta:

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

Guarda anche

Fonte

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