userdirectory.get

Descripción

integer/array userdirectory.get(object parameters)

El método permite recuperar directorios de usuarios según los parámetros dados.

Este método solo está disponible para los tipos de usuario Super admin.

Parámetros

(object) Parámetros que definen la salida deseada.

El método admite los siguientes parámetros.

Parameter Type Description
userdirectoryids ID/array Devuelve solo directorios de usuario con los IDs dados.
selectUsrgrps query Devuelve una propiedad usrgrps con grupos de usuarios asociados a un directorio de usuario.

Admite count.
selectProvisionMedia query Devuelve una propiedad provision_media con asignaciones de tipos de medios asociadas a un directorio de usuario.
selectProvisionGroups query Devuelve una propiedad provision_groups con asignaciones de grupos de aprovisionamiento asociadas a un directorio de usuario.
sortfield string/array Ordena el resultado por las propiedades indicadas.

Valores posibles: name.
filter object Devuelve solo los resultados que coinciden exactamente con el filtro dado.

Acepta un objeto, donde las claves son nombres de propiedades y los valores son un único valor o un array de valores.

Admite las propiedades: userdirectoryid, idp_type, provision_status.
search object Devuelve resultados que coinciden con el patrón dado (sin distinguir mayúsculas y minúsculas).

Acepta un objeto, donde las claves son nombres de propiedades y los valores son cadenas en las que buscar. Si no se proporcionan opciones adicionales, esto realizará una búsqueda LIKE "%…%".

Propiedades admitidas: name, description.

Un directorio de usuario de tipo SAML tendrá un valor vacío para las propiedades name y description. Ambas propiedades se pueden cambiar con la operación userdirectory.update.
countOutput boolean Estos parámetros se describen en el comentario de referencia.
excludeSearch boolean
limit integer
output query
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valores de retorno

(integer/array) Devuelve cualquiera de los siguientes:

  • un array de objetos;
  • el número de objetos recuperados, si se ha utilizado el parámetro countOutput.

Ejemplos

Recuperar directorios de usuarios

Recupera todos los directorios de usuarios con propiedades adicionales que muestran los mapeos de tipos de medios y los mapeos de grupos de aprovisionamiento asociados a cada directorio de usuarios.

Solicitud:

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

Respuesta:

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

Véase también

Fuente

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