Introduzione
In questo documento viene descritto come creare un client API AppDynamics, generare token e risolvere i problemi.
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza dei seguenti argomenti:
- Per creare il client API, un utente deve disporre del ruolo Proprietario account (predefinito) o di un ruolo personalizzato con l'autorizzazione Amministrazione, Agenti, Riquadro attività iniziale.
Componenti usati
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Premesse
In questo documento viene descritto il processo di creazione di client API per l'accesso protetto ai dati da AppDynamics Controller tramite chiamate REST (Representative State Transfer) e API (Application Programming Interface). I client API utilizzano l'autenticazione basata su token OAuth (Open Authorization). OAuth consente ai servizi di terze parti di accedere alle informazioni di un account utente finale senza esporre le credenziali dell'utente. Agisce da intermediario, fornendo al servizio di terze parti un token di accesso che autorizza la condivisione di informazioni specifiche sull'account. Gli utenti possono generare il token OAuth dopo aver configurato il client API. Inoltre, questo documento descrive la risoluzione dei problemi più comuni incontrati durante l'uso dei client API.
Configurazione
Crea un client API
- Accedere all'interfaccia utente del controller come ruolo del proprietario dell'account o con l'autorizzazione Amministrazione, Agenti, Guida introduttiva.
- Fare clic su Nome utente (in alto a destra) > Amministrazione.
- Fare clic su API Client Tab.
- Fate clic su + Crea (Create).
- Immettere il nome del client e la descrizione.
- Fare clic su Genera segreto per popolare il segreto client.
Nota: Il segreto client viene generato e visualizzato una sola volta. Copiare e memorizzare queste informazioni in modo sicuro.
-
Impostare la scadenza predefinita del token.
- Fare clic su + Aggiungi in sezione Ruoli per aggiungere il ruolo.
- Fare clic su Save (Salva) in alto a destra.
Visualizza client API esistente
- Accedere all'interfaccia utente del controller come ruolo del proprietario dell'account o con l'autorizzazione Amministrazione, Agenti, Guida introduttiva.
- Fare clic su Nome utente (angolo superiore destro) > Amministrazione.
- Fare clic sulla scheda Client API per visualizzare i client API esistenti.
Elimina client API esistente
- Accedere all'interfaccia utente del controller come ruolo del proprietario dell'account o con l'autorizzazione Amministrazione, Agenti, Guida introduttiva.
- Fare clic su Nome utente (angolo superiore destro) > Amministrazione > Client API.
- Individuare i client API specifici da eliminare e selezionarli.
- Fare clic sull'icona Delete o fare clic con il pulsante destro del mouse sui client API selezionati e selezionare Delete API Client(s) per eliminare i client API esistenti.
Avviso: L'eliminazione del client API invalida il token.
Genera token di accesso
Il token di accesso può essere generato tramite l'interfaccia utente dell'amministratore o l'API OAuth. L'interfaccia utente fornisce token di lunga durata, mentre l'API OAuth genera token di breve durata e regolarmente aggiornati.
-
Interfaccia utente amministratore (token di lunga durata)
- Accedere all'interfaccia utente del controller come ruolo del proprietario dell'account o con l'autorizzazione Amministrazione, Agenti, Guida introduttiva.
- Fare clic su Nome utente (angolo superiore destro) > Amministrazione > Client API.
- Selezionare il client API per il quale si desidera generare il token di accesso e fare clic su Genera token di accesso temporaneo.
- I token di accesso generati dall'interfaccia utente hanno una scadenza più lunga.
-
API OAuth (token di breve durata)
-
`È possibile utilizzare le API REST per generare un token di accesso di breve durata.
curl -X POST -H "Content-Type: application/x-www-form-urlencoded" "https:///controller/api/oauth/access_token" -d 'grant_type=client_credentials&client_id=@&client_secret='
Sostituisci:
-
con il Nome client immesso durante la creazione del client API o come condiviso dall'amministratore.
-
con il Nome account.
-
con il segreto client generato durante la creazione del client API o come condiviso dall'amministratore.
Nota: Token su richiesta non rilevato nell'interfaccia utente.
Esempio di risposta:
{
"access_token": "",
"expires_in": 300
}
Gestisci token di accesso
- I token di accesso generati dall'API REST possono essere invalidati solo eliminando il client API associato.
- I token di accesso generati tramite l'interfaccia utente del controller possono essere revocati o rigenerati.
- La rigenerazione di un token di accesso non invalida i token precedenti. I token meno recenti rimangono attivi fino alla scadenza.
- Non è possibile recuperare i token precedenti o attualmente validi. Pertanto, solo il token corrente può essere revocato.
-
Rigenera token di accesso
- Accedere all'interfaccia utente del controller come ruolo del proprietario dell'account o con l'autorizzazione Amministrazione, Agenti, Guida introduttiva.
- Fare clic su Nome utente (angolo superiore destro) > Amministrazione > Client API.
- Selezionare il client API per il quale si desidera rigenerare il token di accesso, fare clic su Rigenera > Salva (angolo in alto a destra).
-
Revoca token di accesso
- Accedere all'interfaccia utente del controller come ruolo del proprietario dell'account o con l'autorizzazione Amministrazione, Agenti, Guida introduttiva.
- Fare clic sul nome utente (angolo superiore destro) > Amministrazione > Client API.
- Selezionare il client API per il quale si desidera revocare il token di accesso, fare clic su Revoca > Salva (angolo in alto a destra).
Usa token di accesso per rendere l'API Rest
Problemi comuni e soluzioni
-
401 Non autorizzato
-
Risposta vuota.
- Problema: Gli utenti ricevono una risposta vuota quando eseguono una query su un endpoint REST, anche dopo la generazione corretta di un token di accesso.
- Risposta di esempio:
- Causa principale: Il problema si verifica in genere a causa di ruoli o autorizzazioni insufficienti assegnati al client API. Senza i ruoli necessari, il client API non può recuperare i dati previsti dall'endpoint.
- Soluzione:
- Accedere all'interfaccia utente del controller come ruolo del proprietario dell'account o con l'autorizzazione Amministrazione, Agenti, Guida introduttiva.
- Fare clic su Nome utente (angolo superiore destro) > Amministrazione.
- Fare clic sulla scheda Client API per visualizzare i client API esistenti.
- Selezionare il client API per il quale si desidera assegnare il ruolo
- Fare clic su + Aggiungi in sezione Ruoli per aggiungere il ruolo.
- Fare clic su Save (Salva) in alto a destra.
Nota: Accertarsi che al client API siano assegnati i ruoli appropriati. I ruoli devono essere allineati ai requisiti di accesso ai dati dell'endpoint REST.
-
Tipo di contenuto non valido
Informazioni correlate
Documentazione di AppDynamics
API AppDynamics Splunk
Client API
Gestisci token di accesso
Ulteriori informazioni
In caso di domande o problemi, creare una richiesta di assistenza con i seguenti dettagli:
- Dettagli errore o schermata: Fornire un messaggio di errore specifico o uno screenshot del problema.
- Comando utilizzato: Specificare il comando esatto che si stava eseguendo quando si è verificato il problema.
- Controller Server.log (solo in locale): Se pertinente, fornire i registri del server controller da <controller-install-dir>/logs/server.log*