userdirectory.get

Beschreibung

integer/array userdirectory.get(object parameters)

Mit dieser Methode können Benutzerverzeichnisse entsprechend den angegebenen Parametern abgerufen werden.

Diese Methode ist nur für Benutzertypen vom Typ Super admin verfügbar.

Parameter

(object) Parameter, die die gewünschte Ausgabe definieren.

Die Methode unterstützt die folgenden Parameter.

Parameter Type Description
userdirectoryids ID/array Nur Benutzerverzeichnisse mit den angegebenen IDs zurückgeben.
selectUsrgrps query Eine usrgrps-Eigenschaft mit Benutzergruppen zurückgeben, die einem Benutzerverzeichnis zugeordnet sind.

Unterstützt count.
selectProvisionMedia query Eine provision_media-Eigenschaft mit Medientyp-Zuordnungen zurückgeben, die einem Benutzerverzeichnis zugeordnet sind.
selectProvisionGroups query Eine provision_groups-Eigenschaft mit Zuordnungen von Bereitstellungsgruppen zurückgeben, die einem Benutzerverzeichnis zugeordnet sind.
sortfield string/array Das Ergebnis nach den angegebenen Eigenschaften sortieren.

Mögliche Werte: name.
filter object Nur Ergebnisse zurückgeben, die genau dem angegebenen Filter entsprechen.

Akzeptiert ein Objekt, bei dem die Schlüssel Eigenschaftsnamen und die Werte entweder ein einzelner Wert oder ein Array von Werten sind.

Unterstützte Eigenschaften: userdirectoryid, idp_type, provision_status.
search object Nur Ergebnisse zurückgeben, die dem angegebenen Muster entsprechen (Groß-/Kleinschreibung wird nicht berücksichtigt).

Akzeptiert ein Objekt, bei dem die Schlüssel Eigenschaftsnamen und die Werte die zu suchenden Zeichenfolgen sind. Wenn keine zusätzlichen Optionen angegeben sind, wird eine LIKE "%…%"-Suche ausgeführt.

Unterstützte Eigenschaften: name, description.

Ein Benutzerverzeichnis vom Typ SAML hat für die Eigenschaften name und description jeweils einen leeren Wert. Beide Eigenschaften können mit der Operation userdirectory.update geändert werden.
countOutput boolean Diese Parameter werden in der Referenzkommentierung beschrieben.
excludeSearch boolean
limit integer
output query
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Rückgabewerte

(integer/array) Gibt entweder zurück:

  • ein Array von Objekten;
  • die Anzahl der abgerufenen Objekte, wenn der Parameter countOutput verwendet wurde.

Beispiele

Abrufen von Benutzerverzeichnissen

Rufen Sie alle Benutzerverzeichnisse mit zusätzlichen Eigenschaften ab, die Zuordnungen von Medientypen und Provisionierungsgruppen anzeigen, die jedem Benutzerverzeichnis zugeordnet sind.

Anfrage:

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

Antwort:

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

Siehe auch

Quelle

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