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 usuarios Superadministrador.

Parámetros

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

El método admite los siguientes parámetros.

Parámetro Tipo Descripción
userdirectoryids cadena/matriz Devuelve solo directorios de usuarios con los ID proporcionados.
selectUsrgrps consulta Devuelve una propiedad usrgrps con grupos de usuarios asociado con un directorio de usuarios.

Admite count.
selectProvisionMedia consulta Devuelve una propiedad provision_media con asignaciones de tipo de medio asociada con un directorio de usuario.
selectProvisionGroups consulta Devuelve una propiedad provision_groups con asignaciones de grupos de aprovisionamiento asociado con un directorio de usuario.
sortfield cadena/matriz Ordena el resultado según las propiedades dadas.

Valores posibles: nombre.
filter objeto Devuelve solo aquellos resultados que coinciden exactamente con el filtro dado.

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

Claves admitidas: userdirectoryid, idp_type, provision_status.
search objeto Devuelve resultados que coinciden con el patrón dado (no distingue entre mayúsculas y minúsculas).

Valores posibles: nombre, descripción.

El directorio de usuarios de tipo SAML tendrá un directorio vacío valor para los campos nombre y descripción . Ambos campos se pueden cambiar con la operación userdirectory.update.
countOutput booleano Estos parámetros, que son comunes para todos los métodos get, se describen en detalle en el comentario de referencia.
excludeSearch booleano
limit entero
output consulta
preservekeys booleano
searchByAny booleano
searchWildcardsEnabled booleano
sortorder cadena/matriz
startSearch booleano

Valores de retorno

(entero/matriz) Devuelve:

  • una matriz de objetos;
  • el recuento de objetos recuperados, si el parámetro countOutput ha sido usado.

Ejemplos

Recuperar directorios de usuarios

Recupere todos los directorios de usuarios con propiedades adicionales que muestran asignaciones de tipos de medios y asignaciones de grupos de aprovisionamiento asociadas con 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": [
                       {
                           "name": "example.com",
                           "mediatypeid": "1",
                           "attribute": "[email protected]"
                       }
                   ],
                   "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": [
                       {
                           "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"
                               }
                           ]
                       }
                   ]
               },
               {
                   "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
       }

Ver también

Fuente

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