m4rv1n

Descrizione

string/object user.login(object parameters)

Questo metodo consente di effettuare l'accesso all'API e generare un token di autenticazione.

Quando si utilizza questo metodo, è inoltre necessario eseguire user.logout per evitare la generazione di un numero elevato di record di sessione aperti.

Questo metodo è disponibile solo per gli utenti non autenticati che non appartengono ad alcun gruppo di utenti con l'autenticazione a più fattori abilitata.

Parametri

(object) Parametri contenenti il nome utente e la password.

Il metodo accetta i seguenti parametri.

Parametro Type Descrizione
password string Password dell'utente.

Comportamento del parametro:
- obbligatorio
username string Nome utente.

Comportamento del parametro:
- obbligatorio
userData flag Restituisce informazioni sull'utente autenticato.

Valori restituiti

(string/object) Se viene utilizzato il parametro userData, restituisce un oggetto contenente informazioni sull'utente autenticato.

Oltre alle proprietà utente standard, vengono restituite le seguenti informazioni:

Proprietà Tipo Descrizione
auth_type integer Autenticazione predefinita per l'utente.

Fare riferimento alla proprietà authentication_type dell'oggetto Authentication per un elenco dei valori possibili.
debug_mode integer Indica se la modalità di debug è abilitata o disabilitata per l'utente.

Fare riferimento alla proprietà debug_mode dell'oggetto User group per un elenco dei valori possibili.
deprovisioned boolean Indica se l'utente appartiene a un gruppo di utenti deprovisionati.
gui_access string Metodo di autenticazione dell'utente al frontend.

Fare riferimento alla proprietà gui_access dell'oggetto User group per un elenco dei valori possibili.
mfaid integer ID del metodo MFA da utilizzare per l'utente durante l'accesso.

Restituisce "0" se MFA è disabilitato globalmente o per tutti i gruppi di utenti a cui l'utente appartiene.
secret string Stringa casuale di 32 caratteri. Viene generata all'accesso dell'utente.
sessionid string Token di autenticazione, che deve essere utilizzato nelle successive richieste API.
type integer Tipo di utente.

Fare riferimento alla proprietà type dell'oggetto Role per un elenco dei valori possibili.
userip string Indirizzo IP dell'utente.

Se un utente è stato autenticato correttamente dopo uno o più tentativi non riusciti, il metodo restituirà i valori correnti delle proprietà attempt_clock, attempt_failed e attempt_ip e quindi le reimposterà.

Se il parametro userData non viene utilizzato, il metodo restituisce un token di autenticazione richiesto per l'autenticazione.

Esempi

Autenticazione di un utente

Autenticare un utente.

Request:

{
    "jsonrpc": "2.0",
    "method": "user.login",
    "params": {
        "username": "Admin",
        "password": "zabbix"
    },
    "id": 1
}

Risposta:

{
    "jsonrpc": "2.0",
    "result": "0424bd59b807674191e7d77572075f33",
    "id": 1
}

Richiesta delle informazioni dell'utente autenticato

Autentica l'utente e restituisce informazioni aggiuntive sull'utente.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "user.login",
    "params": {
        "username": "Admin",
        "password": "zabbix",
        "userData": true
    },
    "id": 1
}

Risposta:

{
    "jsonrpc": "2.0",
    "result": {
        "userid": "1",
        "username": "Admin",
        "name": "Zabbix",
        "surname": "Administrator",
        "url": "",
        "autologin": "1",
        "autologout": "0",
        "lang": "ru_RU",
        "refresh": "0",
        "theme": "default",
        "attempt_failed": "0",
        "attempt_ip": "127.0.0.1",
        "attempt_clock": "1355919038",
        "rows_per_page": "50",
        "timezone": "Europe/Riga",
        "roleid": "3",
        "userdirectoryid": "0",
        "type": 3,
        "userip": "127.0.0.1",
        "debug_mode": 0,
        "gui_access": "0",
        "mfaid": "1",
        "deprovisioned": false,
        "auth_type": 0,
        "sessionid": "5b56eee8be445e98f0bd42b435736e42",
        "secret": "cd0ba923319741c6586f3d866423a8f4"
    },
    "id": 1
}

Guarda anche

Fonte

CUser::login() in ui/include/classes/api/services/CUser.php.