In dem Dokumentationssatz für dieses Produkt wird die Verwendung inklusiver Sprache angestrebt. Für die Zwecke dieses Dokumentationssatzes wird Sprache als „inklusiv“ verstanden, wenn sie keine Diskriminierung aufgrund von Alter, körperlicher und/oder geistiger Behinderung, Geschlechtszugehörigkeit und -identität, ethnischer Identität, sexueller Orientierung, sozioökonomischem Status und Intersektionalität impliziert. Dennoch können in der Dokumentation stilistische Abweichungen von diesem Bemühen auftreten, wenn Text verwendet wird, der in Benutzeroberflächen der Produktsoftware fest codiert ist, auf RFP-Dokumentation basiert oder von einem genannten Drittanbieterprodukt verwendet wird. Hier erfahren Sie mehr darüber, wie Cisco inklusive Sprache verwendet.
Cisco hat dieses Dokument maschinell übersetzen und von einem menschlichen Übersetzer editieren und korrigieren lassen, um unseren Benutzern auf der ganzen Welt Support-Inhalte in ihrer eigenen Sprache zu bieten. Bitte beachten Sie, dass selbst die beste maschinelle Übersetzung nicht so genau ist wie eine von einem professionellen Übersetzer angefertigte. Cisco Systems, Inc. übernimmt keine Haftung für die Richtigkeit dieser Übersetzungen und empfiehlt, immer das englische Originaldokument (siehe bereitgestellter Link) heranzuziehen.
In diesem Dokument wird das Verfahren zur Verwendung von OpenAPI zur Verwaltung Cisco Identity Services Engine (ISE) Richtlinie.
Cisco empfiehlt, dass Sie über Kenntnisse in folgenden Bereichen verfügen:
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
Ab Cisco ISE 3.1 sind neuere APIs im OpenAPI-Format verfügbar. Die Managementrichtlinien optimieren die Netzwerksicherheit und das Netzwerkmanagement, indem sie die Interoperabilität verbessern, die Effizienz der Automatisierung verbessern, die Sicherheit stärken, Innovationen fördern und die Kosten senken. Diese Richtlinie ermöglicht der ISE die nahtlose Integration in andere Systeme, eine automatisierte Konfiguration und Verwaltung, eine präzise Zugriffskontrolle, die Förderung von Innovationen von Drittanbietern und die Vereinfachung von Managementprozessen. Auf diese Weise werden Wartungskosten gesenkt und die Investitionsrendite insgesamt gesteigert.
Schritt 1: Fügen Sie ein OpenAPI-Administratorkonto hinzu.
Um einen API-Administrator hinzuzufügen, navigieren Sie zu Administration > System > Admin Access > Administrators > Admin Users > Add.
Schritt 2: Aktivieren Sie OpenAPI auf der ISE.
Die offene API ist auf der ISE standardmäßig deaktiviert. Navigieren Sie zu Administration > System > Settings > API Settings > API Service Settings. Schalten Sie die OpenAPI-Optionen um. Klicken Sie auf Speichern.
Schritt 3: Erkunden der ISE OpenAPI
Navigieren Sie zu Administration > System > Settings > API Settings > Overview. Klicken Sie auf OpenAPI, um den Link aufzurufen.
Diese API ruft Informationen zu den Admin-Richtliniensätzen des Geräts ab.
Schritt 1: Erforderliche Informationen für einen API-Aufruf.
Methode | HOLEN |
URL |
https://<ISE-PAN-IP>/api/v1/policy/device-admin/policy-set
|
Anmeldeinformationen | OpenAPI-Kontoinformationen verwenden. |
Header |
Akzeptieren
:
application/json
Inhaltstyp
:
application/json
|
Schritt 2: Suchen Sie nach der URL, die zum Abrufen von Informationen zu den Admin-Richtlinien für Geräte verwendet wird.
Schritt 3: Dies ist ein Beispiel für Python-Code. Kopieren Sie den Inhalt, und fügen Sie ihn ein. Ersetzen Sie die ISE-IP, den Benutzernamen und das Kennwort. Speichern Sie die Datei als Python, um sie auszuführen.
Stellen Sie eine gute Verbindung zwischen der ISE und dem Gerät sicher, auf dem das Python-Codebeispiel ausgeführt wird.
from requests.auth import HTTPBasicAuth
import requests
requests.packages.urllib3.disable_warnings()
if __name__ == "__main__":
url = "https://10.106.33.92/api/v1/policy/device-admin/policy-set"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
basicAuth = HTTPBasicAuth("ApiAdmin", "Admin123")
response = requests.get(url=url, auth=basicAuth, headers=headers, verify=False)
print("Return Code:")
print(response.status_code)
print("Expected Outputs:")
print(response.json())
Dies ist das Beispiel der erwarteten Ergebnisse.
Return Code: 200 Expected Outputs: {'version': '1.0.0', 'response': [{'default': True, 'id': '41ed8579-429b-42a8-879e-61861cb82bbf', 'name': 'Default', 'description': 'Tacacs Default policy set', 'hitCounts': 0, 'rank': 0, 'state': 'enabled', 'condition': None, 'serviceName': 'Default Device Admin', 'isProxy': False, 'link': {'rel': 'self', 'href': 'https://10.106.33.92/api/v1/policy/device-admin/policy-set/41ed8579-429b-42a8-879e-61861cb82bbf', 'type': 'application/json'}}]}
Diese API ruft Authentifizierungsregeln eines bestimmten Richtliniensatzes ab.
Schritt 1: Erforderliche Informationen für einen API-Aufruf.
Methode | HOLEN |
URL |
https://<ISE-PAN-IP>/api/v1/policy/device-admin/policy-set/<ID-Of-Policy-Set>/authentication
|
Anmeldeinformationen | OpenAPI-Kontoinformationen verwenden. |
Header |
Akzeptieren
:
application/json
Inhaltstyp
:
application/json
|
Schritt 2: Suchen Sie nach der URL, die zum Abrufen von Authentifizierungsregelinformationen verwendet wird.
Schritt 3: Dies ist ein Beispiel für Python-Code. Kopieren Sie den Inhalt, und fügen Sie ihn ein. Ersetzen Sie die ISE-IP, den Benutzernamen und das Kennwort. Speichern Sie die Datei als Python, um sie auszuführen.
Stellen Sie eine gute Verbindung zwischen der ISE und dem Gerät sicher, auf dem das Python-Codebeispiel ausgeführt wird.
from requests.auth import HTTPBasicAuth
import requests
requests.packages.urllib3.disable_warnings()
if __name__ == "__main__":
url = "https://10.106.33.92/api/v1/policy/device-admin/policy-set/41ed8579-429b-42a8-879e-61861cb82bbf/authentication"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
basicAuth = HTTPBasicAuth("ApiAdmin", "Admin123")
response = requests.get(url=url, auth=basicAuth, headers=headers, verify=False)
print("Return Code:")
print(response.status_code)
print("Expected Outputs:")
print(response.json())
Hinweis: Die ID stammt aus den API-Ausgaben in Schritt 3 von Device Admin - List Of Policy Sets. 41ed8579-429b-42a8-879e-61861cb82bbf ist beispielsweise der TACACS-Standardrichtliniensatz.
Dies ist das Beispiel der erwarteten Ergebnisse.
Return Code: 200 Expected Outputs: {'version': '1.0.0', 'response': [{'rule': {'default': True, 'id': '73461597-0133-45ce-b4cb-6511ce56f262', 'name': 'Default', 'hitCounts': 0, 'rank': 0, 'state': 'enabled', 'condition': None}, 'identitySourceName': 'All_User_ID_Stores', 'ifAuthFail': 'REJECT', 'ifUserNotFound': 'REJECT', 'ifProcessFail': 'DROP', 'link': {'rel': 'self', 'href': 'https://10.106.33.92/api/v1/policy/device-admin/policy-set/41ed8579-429b-42a8-879e-61861cb82bbf/authentication/73461597-0133-45ce-b4cb-6511ce56f262', 'type': 'application/json'}}]}
Diese API ruft Autorisierungsregeln eines bestimmten Richtliniensatzes ab.
Schritt 1: Erforderliche Informationen für einen API-Aufruf.
Methode | HOLEN |
URL |
https://<ISE-PAN-IP>/api/v1/policy/device-admin/policy-set/<ID-Of-Policy-Set>/authorization
|
Anmeldeinformationen | OpenAPI-Kontoinformationen verwenden. |
Header |
Akzeptieren
:
application/json
Inhaltstyp
:
application/json
|
Schritt 2: Suchen Sie nach der URL, die zum Abrufen der Autorisierungsregelinformationen verwendet wird.
Schritt 3: Dies ist ein Beispiel für Python-Code. Kopieren Sie den Inhalt, und fügen Sie ihn ein. Ersetzen Sie die ISE-IP, den Benutzernamen und das Kennwort. Speichern Sie die Datei als Python, um sie auszuführen.
Stellen Sie eine gute Verbindung zwischen der ISE und dem Gerät sicher, auf dem das Python-Codebeispiel ausgeführt wird.
from requests.auth import HTTPBasicAuth import requests requests.packages.urllib3.disable_warnings() if __name__ == "__main__": url = "https://10.106.33.92/api/v1/policy/device-admin/policy-set/41ed8579-429b-42a8-879e-61861cb82bbf/authorization" headers = {"Accept": "application/json", "Content-Type": "application/json"} basicAuth = HTTPBasicAuth("ApiAdmin", "Admin123") response = requests.get(url=url, auth=basicAuth, headers=headers, verify=False) print("Return Code:") print(response.status_code) print("Expected Outputs:") print(response.json())
Hinweis: Die ID stammt aus den API-Ausgaben in Schritt 3 von Device Admin - List Of Policy Sets. 41ed8579-429b-42a8-879e-61861cb82bbf ist beispielsweise der TACACS-Standardrichtliniensatz.
Dies ist das Beispiel der erwarteten Ergebnisse.
Return Code:
200
Expected Outputs:
{'version': '1.0.0', 'response': [{'rule': {'default': True, 'id': '39d9f546-e58c-4f79-9856-c0a244b8a2ae', 'name': 'Default', 'hitCounts': 0, 'rank': 0, 'state': 'enabled', 'condition': None}, 'commands': ['DenyAllCommands'], 'profile': 'Deny All Shell Profile', 'link': {'rel': 'self', 'href': 'https://10.106.33.92/api/v1/policy/device-admin/policy-set/41ed8579-429b-42a8-879e-61861cb82bbf/authorization/39d9f546-e58c-4f79-9856-c0a244b8a2ae', 'type': 'application/json'}}]}
Diese API ruft Netzwerkzugriffsrichtliniensätze von ISE-Bereitstellungen ab.
Schritt 1: Erforderliche Informationen für einen API-Aufruf.
Methode | HOLEN |
URL |
https://<ISE-PAN-IP>/api/v1/policy/network-access/policy-set
|
Anmeldeinformationen | OpenAPI-Kontoinformationen verwenden. |
Header |
Akzeptieren
:
application/json
Inhaltstyp
:
application/json
|
Schritt 2: Geben Sie die URL an, die zum Abrufen der spezifischen ISE-Knoteninformationen verwendet wird.
Schritt 3: Dies ist ein Beispiel für Python-Code. Kopieren Sie den Inhalt, und fügen Sie ihn ein. Ersetzen Sie die ISE-IP, den Benutzernamen und das Kennwort. Speichern Sie die Datei als Python, um sie auszuführen.
Stellen Sie eine gute Verbindung zwischen der ISE und dem Gerät sicher, auf dem das Python-Codebeispiel ausgeführt wird.
from requests.auth import HTTPBasicAuth
import requests
requests.packages.urllib3.disable_warnings()
if __name__ == "__main__":
url = "https://10.106.33.92/api/v1/policy/network-access/policy-set"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
basicAuth = HTTPBasicAuth("ApiAdmin", "Admin123")
response = requests.get(url=url, auth=basicAuth, headers=headers, verify=False)
print("Return Code:")
print(response.status_code)
print("Expected Outputs:")
print(response.json())
Dies ist das Beispiel der erwarteten Ergebnisse.
Return Code: 200 Expected Outputs: {'version': '1.0.0', 'response': [{'default': False, 'id': 'ba71a417-4a48-4411-8bc3-d5df9b115769', 'name': 'BGL_CFME02-FMC', 'description': None, 'hitCounts': 0, 'rank': 0, 'state': 'enabled', 'condition': {'link': None, 'conditionType': 'ConditionAndBlock', 'isNegate': False, 'children': [{'link': None, 'conditionType': 'ConditionAttributes', 'isNegate': False, 'dictionaryName': 'DEVICE', 'attributeName': 'Location', 'operator': 'equals', 'dictionaryValue': None, 'attributeValue': 'All Locations#BGL_CFME02'}, {'link': None, 'conditionType': 'ConditionAttributes', 'isNegate': False, 'dictionaryName': 'DEVICE', 'attributeName': 'Device Type', 'operator': 'equals', 'dictionaryValue': None, 'attributeValue': 'All Device Types#FMCv'}]}, 'serviceName': 'Default Network Access', 'isProxy': False, 'link': {'rel': 'self', 'href': 'https://10.106.33.92/api/v1/policy/network-access/policy-set/ba71a417-4a48-4411-8bc3-d5df9b115769', 'type': 'application/json'}}, {'default': False, 'id': 'f7d82b2d-1007-44f6-961b-efa721d6ebec', 'name': 'SPRT', 'description': None, 'hitCounts': 0, 'rank': 1, 'state': 'enabled', 'condition': {'link': None, 'conditionType': 'ConditionAttributes', 'isNegate': False, 'dictionaryName': 'DEVICE', 'attributeName': 'Device Type', 'operator': 'equals', 'dictionaryValue': None, 'attributeValue': 'All Device Types#SPRT'}, 'serviceName': 'Default Network Access', 'isProxy': False, 'link': {'rel': 'self', 'href': 'https://10.106.33.92/api/v1/policy/network-access/policy-set/f7d82b2d-1007-44f6-961b-efa721d6ebec', 'type': 'application/json'}}, {'default': True, 'id': '467f6a69-344d-407f-81a4-e87c5dc7e438', 'name': 'Default', 'description': 'Default policy set', 'hitCounts': 0, 'rank': 2, 'state': 'enabled', 'condition': None, 'serviceName': 'Default Network Access', 'isProxy': False, 'link': {'rel': 'self', 'href': 'https://10.106.33.92/api/v1/policy/network-access/policy-set/467f6a69-344d-407f-81a4-e87c5dc7e438', 'type': 'application/json'}}]}
Diese API ruft Authentifizierungsregeln eines bestimmten Richtliniensatzes ab.
Schritt 1: Erforderliche Informationen für einen API-Aufruf.
Methode | HOLEN |
URL |
https://<ISE-PAN-IP>/api/v1/policy/network-access/policy-set/<ID-Of-Policy-Set>/authentication
|
Anmeldeinformationen | OpenAPI-Kontoinformationen verwenden. |
Header |
Akzeptieren
:
application/json
Inhaltstyp
:
application/json
|
Schritt 2: Suchen Sie nach der URL, die zum Abrufen der Authentifizierungsregelinformationen verwendet wird.
Schritt 3: Dies ist ein Beispiel für Python-Code. Kopieren Sie den Inhalt, und fügen Sie ihn ein. Ersetzen Sie die ISE-IP, den Benutzernamen und das Kennwort. Speichern Sie die Datei als Python, um sie auszuführen.
Stellen Sie eine gute Verbindung zwischen der ISE und dem Gerät sicher, auf dem das Python-Codebeispiel ausgeführt wird.
from requests.auth import HTTPBasicAuth
import requests
requests.packages.urllib3.disable_warnings()
if __name__ == "__main__":
url = "https://10.106.33.92/api/v1/policy/network-access/policy-set/ba71a417-4a48-4411-8bc3-d5df9b115769/authentication"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
basicAuth = HTTPBasicAuth("ApiAdmin", "Admin123")
response = requests.get(url=url, auth=basicAuth, headers=headers, verify=False)
print("Return Code:")
print(response.status_code)
print("Expected Outputs:")
print(response.json())
Hinweis: Die ID stammt aus API-Ausgaben in Schritt 3 von Network Access - List Of Policy Sets. Zum Beispiel ba71a417-4a48-4411-8bc3-d5df9b115769
ist BGL_CFME02-FMC
.
Dies ist das Beispiel der erwarteten Ergebnisse.
Return Code: 200 Expected Outputs: {'version': '1.0.0', 'response': [{'rule': {'default': True, 'id': '03875777-6c98-4114-a72e-a3e1651e533a', 'name': 'Default', 'hitCounts': 0, 'rank': 0, 'state': 'enabled', 'condition': None}, 'identitySourceName': 'S.H.I.E.L.D', 'ifAuthFail': 'REJECT', 'ifUserNotFound': 'REJECT', 'ifProcessFail': 'DROP', 'link': {'rel': 'self', 'href': 'https://10.106.33.92/api/v1/policy/network-access/policy-set/ba71a417-4a48-4411-8bc3-d5df9b115769/authentication/03875777-6c98-4114-a72e-a3e1651e533a', 'type': 'application/json'}}]}
Diese API ruft Autorisierungsregeln eines bestimmten Richtliniensatzes ab.
Schritt 1: Erforderliche Informationen für einen API-Aufruf.
Methode | HOLEN |
URL |
https://<ISE-PAN-IP>/api/v1/policy/network-access/policy-set/<ID-Of-Policy-Set>/authorization
|
Anmeldeinformationen | OpenAPI-Kontoinformationen verwenden. |
Header |
Akzeptieren
:
application/json
Inhaltstyp
:
application/json
|
Schritt 2: Suchen Sie nach der URL, die zum Abrufen der Autorisierungsregelinformationen verwendet wird.
Schritt 3: Dies ist ein Beispiel für Python-Code. Kopieren Sie den Inhalt, und fügen Sie ihn ein. Ersetzen Sie die ISE-IP, den Benutzernamen und das Kennwort. Speichern Sie die Datei als Python, um sie auszuführen.
Stellen Sie eine gute Verbindung zwischen der ISE und dem Gerät sicher, auf dem das Python-Codebeispiel ausgeführt wird.
from requests.auth import HTTPBasicAuth
import requests
requests.packages.urllib3.disable_warnings()
if __name__ == "__main__":
url = "https://10.106.33.92/api/v1/policy/network-access/policy-set/ba71a417-4a48-4411-8bc3-d5df9b115769/authorization"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
basicAuth = HTTPBasicAuth("ApiAdmin", "Admin123")
response = requests.get(url=url, auth=basicAuth, headers=headers, verify=False)
print("Return Code:")
print(response.status_code)
print("Expected Outputs:")
print(response.json())
Hinweis: Die ID stammt aus den API-Ausgaben in Schritt 3 von "Network Access - List Of Policy Sets". Beispiel: ba71a417-4a48-4411-8bc3-d5df9b115769 lautet BGL_CFME02-FMC.
Dies ist das Beispiel der erwarteten Ergebnisse.
Return Code: 200 Expected Outputs: {'version': '1.0.0', 'response': [{'rule': {'default': False, 'id': 'bc67a4e5-9000-4645-9d75-7c2403ca22ac', 'name': 'FMC Admin', 'hitCounts': 0, 'rank': 0, 'state': 'enabled', 'condition': {'link': None, 'conditionType': 'ConditionAttributes', 'isNegate': False, 'dictionaryName': 'S.H.I.E.L.D', 'attributeName': 'ExternalGroups', 'operator': 'equals', 'dictionaryValue': None, 'attributeValue': 'cisco.com/Cisco/Lab/Groups/FmcAdmin'}}, 'profile': ['FMC-BGL_CFME02-Admin'], 'securityGroup': None, 'link': {'rel': 'self', 'href': 'https://10.106.33.92/api/v1/policy/network-access/policy-set/ba71a417-4a48-4411-8bc3-d5df9b115769/authorization/bc67a4e5-9000-4645-9d75-7c2403ca22ac', 'type': 'application/json'}}, {'rule': {'default': True, 'id': 'e9f3034c-b768-4479-b6c3-3bb64bb6722c', 'name': 'Default', 'hitCounts': 0, 'rank': 1, 'state': 'enabled', 'condition': None}, 'profile': ['DenyAccess'], 'securityGroup': None, 'link': {'rel': 'self', 'href': 'https://10.106.33.92/api/v1/policy/network-access/policy-set/ba71a417-4a48-4411-8bc3-d5df9b115769/authorization/e9f3034c-b768-4479-b6c3-3bb64bb6722c', 'type': 'application/json'}}]}
Um Probleme im Zusammenhang mit den OpenAPIs zu beheben, legen Sie dieProtokollstufe für dieAPIsKomponente im Fenster Konfiguration des Debug-Protokolls auf DEBUG fest.
Um das Debuggen zu aktivieren, navigieren Sie zu Operations > Troubleshoot > Debug Wizard > Debug Log Configuration > ISE Node > apiservice.
Um die Debug-Protokolldatei herunterzuladen, navigieren Sie zu Operations > Troubleshoot > Download Logs > ISE PAN Node > Debug Logs.
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
18-Sep-2024 |
Erstveröffentlichung |