Inleiding
In dit document wordt beschreven hoe u bestemmingslijsten kunt beheren via curl met Secure Access API.
Voorwaarden
Vereisten
Cisco raadt kennis van de volgende onderwerpen aan:
- beveiligde toegang
- Secure Access API
- krullen
- Json
Gebruikte componenten
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
- beveiligde toegang
- API's voor beveiligde toegang
- krullen
- Json
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Configureren
1. Maak uw API-sleutel
Navigeer naar het Secure Access Dashboard.
- Klik op
Admin
> Api Keys
> Add
Maak uw API-sleutel 1
Maak uw API-sleutel 2
- Gewenste
API Key Name
,Description (Optional)
, indienExpiry Date
nodig toevoegen
Maak uw API-sleutel 3
- Kies onder
Key Scope
BeleidPolicies
uitbreiden
- Kies
Destination Lists
en Destinations
- Wijzigen
Scope
indien nodig, anders houden als Read/Write
- Klik op
CREATE KEY
Maak uw API-sleutel 4
- Kopieer de
API Key
en de Key Secret
en klik vervolgens op ACCEPT AND CLOSE
Maak uw API-sleutel 5
Opmerking: er is maar één mogelijkheid om uw API-geheim te kopiëren. Secure Access slaat uw API-geheim niet op en u kunt het niet ophalen na de eerste creatie.
2.Genereer een API Access Token
Om het API Access Token te genereren, dient u een Token Authorization Request in:
Token-autorisatieaanvraag
Gebruik de Secure Access API-referenties die u voor uw organisatie hebt gemaakt om een API-toegangstoken te genereren.
- Vervang in het curl-voorbeeld uw Secure Access API-sleutel en geheim
curl --user key:secret --request POST --url https://api.sse.cisco.com/auth/v2/token -H Content-Type: application/x-www-form-urlencoded -d grant_type=client_credentials
- De gegenereerde API-token voor de drager kopiëren en opslaan
Opmerking: Een Secure Access OAuth 2.0-toegangstoken verloopt binnen een uur (3600 seconden). Het wordt aanbevolen om een toegangstoken niet te vernieuwen totdat het token bijna is verlopen.
3.Bestemmingslijsten beheren
Er zijn verschillende manieren om bestemmingslijsten te beheren, waaronder:
Alle bestemmingslijsten ophalen
Open Windows-opdrachtprompt of Mac-terminal om de opdracht uit te voeren:
curl -L --location-trusted --request GET --url https://api.sse.cisco.com/policies/v2/destinationlists -H "Authorization: Bearer YourAccessToken" -H "Content-Type: application/json"
Fragment van monsteruitvoer:
{"id":23456789,"organizationId":1234567,"access":"none","isGlobal":false,"name":" Test Block list","thirdpartyCategoryId":null,"createdAt":1694070823,"modifiedAt":1702819637,"isMspDefault":false,"markedForDeletion":false,"bundleTypeId":2,"meta":
{"destinationCount":2,"domainCount":2,"urlCount":0,"ipv4Count":0,"applicationCount":0}
Maak een notitie van de destinationListId die wordt vermeld onder "id" veld van de uitvoer die verder wordt gebruikt voor GET, POST of DELETE verzoeken specifiek voor deze bestemmingslijst.
Alle bestemmingen in een bestemmingslijst ophalen
Open Windows-opdrachtprompt of Mac-terminal om de opdracht uit te voeren:
curl -L --location-trusted --request GET --url https://api.sse.cisco.com/policies/v2/destinationlists/destinationListId/destinations -H "Authorization: Bearer YourAccessToken"
Voorbeelduitvoer:
{"status":{"code":200,"text":"OK"},"meta":{"page":1,"limit":100,"total":3},"data":
[
{"id":"415214","destination":"cisco.com","type":"domain","comment":null,"createdAt":"2024-02-20 09:15:46"},{"id":"7237895","destination":"www.cisco.com","type":"domain","comment":null,"createdAt":"2024-02-20 10:19:51"},{"id":"29275814","destination":"10.10.10.10","type":"ipv4","comment":null,"createdAt":"2024-02-20 09:15:46"},{"id":"71918495","destination":"www.subdomain.cisco.com/resoucre","type":"url","comment":null,"createdAt":"2024-02-20 10:29:02"}
]}
Een nieuwe bestemmingslijst maken
Open Windows-opdrachtprompt of Mac-terminal om de opdracht uit te voeren:
curl -L --location-trusted --request POST --url https://api.sse.cisco.com/policies/v2/destinationlists -H "Authorization: Bearer YourAccessToken" -H "Content-Type: application/json" -H "Accept: application/json" -d "{\"access\":\"none\",\"isGlobal\":false,\"name\":\"Destination List Name\"}"
Opmerking: Vervang 'Naam bestemmingslijst' door de gewenste naam.
Voorbeelduitvoer:
{"id":23456789,"organizationId":1234567,"access":"none","isGlobal":false,"name":"API List 1","thirdpartyCategoryId":null,"createdAt":1708417690,"modifiedAt":1708417690,"isMspDefault":false,"markedForDeletion":false,"bundleTypeId":1,"meta":{"destinationCount":0}}
Bestemmingen toevoegen aan een bestemmingslijst
Open Windows-opdrachtprompt of Mac-terminal om de opdracht uit te voeren:
curl -L --location-trusted --request POST --url https://api.sse.cisco.com/policies/v2/destinationlists/{destinationListId}/destinations -H "Authorization: Bearer YourAccessToken" -H "Content-Type: application/json" -d "[{\"destination":"cisco.com\"},{\"destination\":\"10.10.10.10\"},{\"destination\":\"www.subdomain.cisco.com\/resource\"}]"
Voorbeelduitvoer:
{"status":{"code":200,"text":"OK"},"data":{"id":17804929,"organizationId":1234567,"access":"none","isGlobal":false,"name":"API List 1","thirdpartyCategoryId":null,"createdAt":1708417690,"modifiedAt":1708420546,"isMspDefault":false,"markedForDeletion":false,"bundleTypeId":1,"meta":
{"destinationCount":3}}}
Een bestemmingslijst verwijderen
Open Windows-opdrachtprompt of Mac-terminal om de opdracht uit te voeren:
curl -L --location-trusted --request DELETE --url https://api.sse.cisco.com/policies/v2/destinationlists/destinationListId -H "Authorization: Bearer YourAccessToken"
Voorbeelduitvoer:
{"status":{"code":200,"text":"OK"},"data":[]}
Bestemmingen uit een bestemmingslijst verwijderen
Open Windows-opdrachtprompt of Mac-terminal om de opdracht uit te voeren:
curl -L --location-trusted --request DELETE --url https://api.sse.cisco.com/policies/v2/destinationlists/destinationListId/destinations/remove -H "Authorization: Bearer YourAccessToken" -H "Content-Type: application/json" -H "Accept: application/json" -d "[id1,id2]"
Voorbeelduitvoer:
{"status":{"code":200,"text":"OK"},"data":{"id":17804929,"organizationId":1234567,"access":"none","isGlobal":false,"name":"API List 1","thirdpartyCategoryId":null,"createdAt":1708417690,"modifiedAt":1708525645,"isMspDefault":false,"markedForDeletion":false,"bundleTypeId":1,"meta":{"destinationCount":2}}}
Problemen oplossen
De Secure Access API-eindpunten gebruiken HTTP-antwoordcodes om het succes of falen van een API-verzoek aan te geven. Over het algemeen geven codes in het 2xx-bereik succes aan, codes in het 4xx-bereik geven een fout aan die het gevolg is van de verstrekte informatie en codes in het 5xx-bereik geven serverfouten aan. De aanpak om het probleem op te lossen is afhankelijk van de responscode die wordt ontvangen:
REST API - Responscodes 1
REST API - Responscodes 2Bovendien, terwijl het oplossen van API-gerelateerde fouten of problemen, hier zijn de snelheidslimieten om op de hoogte te zijn van:
Gerelateerde informatie