Introduzione
Questo documento descrive il processo di attivazione e download di un pacchetto di supporto ISE tramite l'API ERS con PostMan come client REST.
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza dei seguenti argomenti:
- ISE
- Servizi REST esterni
- I clienti REST come Postman, RESTED, Insonnia, e così via.
Componenti usati
Le informazioni fornite in questo documento si basano sulle seguenti versioni software:
- Cisco ISE 3.1 patch 6
- Postman REST client v10.17.4
Nota: la procedura è simile o identica per altre versioni ISE e client REST. Se non specificato diversamente, è possibile eseguire la procedura seguente su tutte le versioni software ISE 2.x e 3.x.
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.
Configurazione
Abilita ERS (porta 9060)
Le API ERS sono API REST solo HTTPS che operano sulla porta 443 e sulla porta 9060. La porta 9060 è chiusa per impostazione predefinita, quindi deve essere aperta per prima. Se i client che tentano di accedere a questa porta non attivano prima ERS, viene visualizzato un timeout del server. Pertanto, il primo requisito è abilitare ERS dall'interfaccia utente di amministrazione di Cisco ISE.
Passare a Amministrazione > Impostazioni > Impostazioni API e abilitare il pulsante di commutazione ERS (Lettura/Scrittura).
Nota: le API ERS supportano TLS 1.1 e TLS 1.2. Le API ERS non supportano TLS 1.0, a prescindere dall'abilitazione di TLS 1.0 nella finestra Security Settings (Impostazioni protezione) dell'interfaccia utente di Cisco ISE (Amministrazione > Sistema > Impostazioni > Impostazioni protezione). L'attivazione di TLS 1.0 nella finestra Impostazioni protezione è correlata solo al protocollo EAP e non influisce sulle API ERS.
Crea amministratore ERS
Creare un Cisco ISE Administrator, assegnare una password e aggiungere l'utente al gruppo admin come Amministratore ERS. È possibile lasciare vuota la parte restante della configurazione.
Imposta postino
Scarica o utilizza la versione online di Postman.
- Creare un utente e un workspace facendo clic su Crea workspace nella scheda Workspace.
2. Selezionare Spazio di lavoro vuoto e assegnare un nome al workspace. È possibile aggiungere una descrizione e renderla pubblica. Per questo esempio è selezionato Personalis.
Una volta creata l'area di lavoro, è ora possibile configurare le chiamate API.
Pacchetto di supporto trigger
Per configurare qualsiasi chiamata, è necessario accedere a ISE ERS SDK (Software Developer Kit). Questo strumento compila l'intero elenco di chiamate API che ISE può eseguire:
- Visitare il sito Web all'indirizzo https://{ise-ip}/ers/sdk
- Eseguire il login utilizzando le credenziali ISE Admin.
- Espandere la documentazione API
- Scorrere verso il basso fino a individuare Support Bundle Trigger Configuration (Configurazione trigger pacchetto di supporto) e fare clic su di esso.
- Sotto questa opzione è ora possibile trovare tutte le operazioni disponibili che è possibile eseguire per questa opzione su ISE. Selezionare Crea.
6. È ora possibile visualizzare la configurazione richiesta per eseguire la chiamata API utilizzando XML o JSON su qualsiasi client REST, nonché un esempio di risposta prevista.
7.Back to Postman consente di configurare l'autenticazione di base per ISE. Nella scheda Authorization (Autorizzazione), selezionare Basic Auth (Autenticazione di base) come tipo di autenticazione, quindi aggiungere le credenziali utente ISE ERS precedentemente create su ISE.
Nota: la password viene visualizzata come testo non crittografato a meno che non siano configurate variabili in Postman
8. In Postman passare alla scheda Intestazioni e configurare le intestazioni necessarie per la chiamata API utilizzando XML o JSON come mostrato nell'SDK. Nell'esempio viene utilizzato JSON. La configurazione dell'intestazione deve essere simile alla seguente:
9. Spostarsi sull'intestazione Body e selezionare raw. In questo modo è possibile incollare il modello XML o JSON necessario per l'attivazione del pacchetto di supporto.
10. Incollare il modello XML o JSON nella sezione Body modificando i valori come necessario:
XML:
<?xml version="1.0" encoding="UTF-8"?> <ns0:supportbundle xmlns:ns0="supportbundle.ers.ise.cisco.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="ers.ise.cisco.com" xmlns:ers="ers.ise.cisco.com" description="Support Bundle Generation" name="supportBundle"> <hostName>Node hostname the SB is being collected from </hostName> <supportBundleIncludeOptions> <fromDate>mm/dd/yyyy</fromDate> <includeConfigDB>true|false</includeConfigDB> <includeCoreFiles>true|false</includeCoreFiles> <includeDebugLogs>true|false</includeDebugLogs> <includeLocalLogs>true|false</includeLocalLogs> <includeSystemLogs>true|false</includeSystemLogs> <mntLogs>true|false</mntLogs> <policyXml>true|false</policyXml> <toDate>mm/dd/yyyy</toDate> </supportBundleIncludeOptions> </ns0:supportbundle>
JSON:
{ "SupportBundle": { "name": "supportBundle", "description": "Support Bundle Generation", "hostName": "node hostname the SB is being collected from", "supportBundleIncludeOptions": { "includeConfigDB": true|false, "includeDebugLogs": true|false, "includeLocalLogs": true|false, "includeCoreFiles": true|false, "mntLogs": true|false, "includeSystemLogs": true|false, "policyXml": true|false, "fromDate": "mm/dd/yyyy", "toDate": "mm/dd/yyyy" } } }
11. Selezionare POST come metodo, incollare https://{ISE-ip}/ers/config/supportbundle e fare clic su Send. Se tutti gli elementi sono stati configurati correttamente, è necessario visualizzare un messaggio "201 Created" e il risultato è vuoto.
Verifica stato bundle di supporto
È possibile verificare se il pacchetto di supporto è stato attivato o completato eseguendo una serie di chiamate GET.
Nota: il completamento del Pacchetto di supporto deve richiedere 5-20 minuti a seconda della quantità di informazioni raccolte dai log.
- Nell'SDK sotto la scheda Stato bundle di supporto selezionare Get-All. Si desidera ottenere l'ID in modo da poter eseguire la prossima chiamata GET. Come già visto, di seguito sono riportate le intestazioni necessarie per eseguire la chiamata e la risposta prevista.
2. Passare alla scheda Intestazioni e configurare le intestazioni necessarie per la chiamata API come mostrato nell'SDK. In questo esempio viene utilizzato JSON. La configurazione dell'intestazione deve essere simile alla seguente:
3. Selezionare GET come metodo, incollare https://{ISE-ip}/ers/config/supportbundlestatus e fare clic su Invia. Se la configurazione è stata eseguita correttamente, è necessario visualizzare un messaggio "200 OK" e il risultato con le informazioni relative all'ultimo pacchetto di supporto attivato. Questa chiamata non consente di sapere se il pacchetto di supporto è stato completato correttamente o meno. Da questa chiamata raccogliere l'ID in modo da poterlo utilizzare alla prossima chiamata GET.
4. Una volta raccolto l'ID, passare all'SDK, nella scheda Statustab del bundle di supporto e selezionare Get-By-Id. Come illustrato in precedenza, di seguito sono riportate le intestazioni necessarie per eseguire la chiamata e la risposta prevista.
5. Passare alla scheda Intestazioni e configurare le intestazioni necessarie per la chiamata API come mostrato nell'SDK. In questo esempio viene utilizzato JSON. La configurazione dell'intestazione deve essere simile alla seguente:
6. Selezionare GET come metodo, incollare https://{ISE-ip}/ers/config/supportbundlestatus/{id} e l'ID raccolto dal passaggio 3, infine fare clic su Invia. Se la configurazione è stata eseguita correttamente, è necessario visualizzare il messaggio "200 OK" e il risultato con le informazioni relative al completamento o meno dell'ultimo pacchetto di supporto attivato. Prendere nota di fileName da questa chiamata poiché è necessario per la chiamata PUT.
Scarica il pacchetto di supporto
Dopo aver confermato che il pacchetto di supporto è nello stato completato. È possibile procedere al download.
- Nell'SDK sotto la scheda Download del pacchetto di supporto selezionare Download SupportBundle. Come illustrato in precedenza, di seguito sono riportate le intestazioni necessarie per eseguire la chiamata, i modelli XML e JSON e la risposta prevista.
2. Passare alla scheda Intestazioni e configurare le intestazioni necessarie per la chiamata API come mostrato nell'SDK. In questo esempio viene utilizzato JSON. La configurazione dell'intestazione deve essere simile alla seguente:
3. Spostarsi sull'intestazione Body e selezionare raw. In questo modo è possibile incollare il modello XML o JSON necessario per il download del pacchetto di supporto.
4. Incollare il modello XML o JSON nella sezione Body modificando i valori in base alle esigenze. Il nome del file corrisponderà al nome del file raccolto al passaggio 6 (ise-support-bundle-pk-ise3-1test-external-09-26-2023-01-26.tar.gpg):
XML
<?xml version="1.0" encoding="UTF-8"?> <ns0:supportbundle xmlns:ns0="supportbundle.ers.ise.cisco.com" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="ers.ise.cisco.com" xmlns:ers="ers.ise.cisco.com"> <fileName>Support bundle file name to be picked for download</fileName> </ns0:supportbundle>
JSON:
{ "ErsSupportBundleDownload" : { "fileName" : "Support bundle file name to be picked for download" } }
5. Selezionare PUT come metodo, incollare https://{ISE-ip}/ers/config/supportbundledownload e fare clic su Invia. Se la configurazione è stata eseguita correttamente, è necessario visualizzare il messaggio "200 OK" e scaricare il file.
Verifica
Se è possibile accedere alla pagina dell'interfaccia utente del servizio API, ad esempio https://{iseip}:{port}/api/swagger-ui/index.html o https://{iseip}:9060/ers/sdk, significa che il servizio API funziona come previsto.
Risoluzione dei problemi
- Tutte le operazioni REST vengono controllate e i log vengono registrati nei log di sistema.
- Per risolvere i problemi relativi alle API aperte, impostare il livello di log per il componente apiservice su DEBUG nella finestra Configurazione log di debug.
- Per risolvere i problemi relativi alle API ERS, impostare il livello di log per il componente ers su DEBUG nella finestra Configurazione log di debug. Per visualizzare questa finestra, passare all'interfaccia grafica di Cisco ISE, fare clic sull'icona Menu e scegliere Operazioni > Risoluzione dei problemi > Debug guidato > Debug Log Configuration.
- È possibile scaricare i log dalla finestra Scarica log. Per visualizzare questa finestra, passare all'interfaccia utente di Cisco ISE, fare clic sull'icona Menu e scegliere Operazioni > Risoluzione dei problemi > Download log.
- È possibile scegliere di scaricare un bundle di supporto dalla scheda Support Bundle facendo clic sul pulsante Download nella scheda, oppure scaricare i log di debug api-service dalla scheda Debug Logs facendo clic sul valore Log File per il log di debug api-service.