目录

简介

背景

先决条件

要求

使用的组件

配置

网络图

ISE上的配置

Python示例

检索集群中部署的所有节点的列表

检索已部署节点的详细信息

故障排除

简介

本文档介绍使用openAPI管理思科身份服务引擎(ISE)部署的步骤。

背景

在现代企业网络中，安全和管理变得越来越复杂和重要。为了应对这些挑战，从Cisco ISE 3.1开始，OpenAPI格式提供较新的API，可提供强大的网络访问控制和策略管理功能。管理员现在可以通过OpenAPI更有效地检查ISE部署，并主动采取行动，而不是等待最终用户提交问题报告。

先决条件

要求

Cisco 建议您了解以下主题：

- 思科身份服务引擎(ISE)

- REST API

- Python

使用的组件

- ISE 3.3

- Python 3.10.0

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

配置

网络图

拓扑

ISE上的配置

第1步：添加Open API admin帐户

要添加API管理员，请导航到管理>系统>管理员访问权限>管理员>管理员用户>添加。

API管理员

第2步：在ISE上启用开放式API

默认情况下，在ISE上禁用开放式API。要启用它，请导航到管理>System >设置> API设置> API服务设置。切换Open API选项。Click Save.

启用OpenAPI

第3步：探索ISE开放式API

导航到管理>系统>设置> API设置>概述。点击打开API访问链接。

访问OpenAPI

Python示例

检索集群中部署的所有节点的列表

API列出集群中部署的所有节点。

第1步：API调用的必需信息。

方法

GET

URL

https://<ISE-PAN-IP>/api/v1/deployment/node

凭证

使用Open API帐户凭证

信头

接受：application/json

内容类型：application/json

第2步：查找用于检索部署信息的URL。

API URI

第3步：以下是Python代码示例。复制并粘贴内容。替换ISE IP、用户名和密码。另存为要执行的python文件。

确保ISE与运行python代码的设备之间保持良好的连接。

from requests.auth import HTTPBasicAuth

import requests

requests.packages.urllib3.disable_warnings()

if __name__ == "__main__":

url = "https://10.106.33.92/api/v1/deployment/node"

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())

以下是预期输出的示例。

Return Code:

200

Expected Outputs:

{'response': [{'hostname': 'ISE-BGL-CFME01-PAN', 'fqdn': 'ISE-BGL-CFME01-PAN.cisco.com', 'ipAddress': '192.168.20.240', 'roles': ['PrimaryAdmin'], 'services': ['Session', 'Profiler', 'DeviceAdmin'], 'nodeStatus': 'Connected'}, {'hostname': 'ISE-BGL-CFME02-MNT', 'fqdn': 'ISE-BGL-CFME02-MNT.cisco.com', 'ipAddress': '192.168.21.240', 'roles': ['PrimaryMonitoring'], 'services': ['Session', 'Profiler', 'DeviceAdmin'], 'nodeStatus': 'Connected'}, {'hostname': 'ISE-DLC-CFME01-PSN', 'fqdn': 'ISE-DLC-CFME01-PSN.cisco.com', 'ipAddress': '192.168.40.240', 'roles': [], 'services': ['Session', 'Profiler', 'DeviceAdmin'], 'nodeStatus': 'Connected'}, {'hostname': 'ISE-DLC-CFME02-PSN', 'fqdn': 'ISE-DLC-CFME02-PSN.cisco.com', 'ipAddress': '192.168.41.240', 'roles': [], 'services': ['Session', 'Profiler', 'DeviceAdmin'], 'nodeStatus': 'Connected'}, {'hostname': 'ISE-RTP-CFME01-PAN', 'fqdn': 'ISE-RTP-CFME01-PAN.cisco.com', 'ipAddress': '192.168.10.240', 'roles': ['SecondaryAdmin'], 'services': ['Session', 'Profiler', 'DeviceAdmin'], 'nodeStatus': 'Connected'}, {'hostname': 'ISE-RTP-CFME02-MNT', 'fqdn': 'ISE-RTP-CFME02-MNT.cisco.com', 'ipAddress': '192.168.11.240', 'roles': ['SecondaryMonitoring'], 'services': ['Session', 'Profiler', 'DeviceAdmin'], 'nodeStatus': 'Connected'}], 'version': '1.0.0'}

检索已部署节点的详细信息

此API检索特定ISE节点的详细信息。

第1步：API调用的必需信息。

方法

GET

URL

https://<ISE-PAN-IP>/api/v1/deployment/node/<ISE-Node-Hostname>

凭证

使用Open API帐户凭证

信头

接受：application/json

内容类型：application/json

第2步：查找用于检索特定ISE节点信息的URL。

API URI

第三步：以下是Python代码的示例。复制并粘贴内容。替换ISE IP、用户名和密码。另存为要执行的python文件。

确保ISE与运行python代码的设备之间保持良好的连接。

from requests.auth import HTTPBasicAuth

import requests

requests.packages.urllib3.disable_warnings()

if __name__ == "__main__":

url = "https://10.106.33.92/api/v1/deployment/node/ISE-DLC-CFME02-PSN"

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())

以下是预期输出的示例。

Return Code:

200

Expected Outputs:

{'response': {'hostname': 'ISE-DLC-CFME02-PSN', 'fqdn': 'ISE-DLC-CFME02-PSN.cisco.com', 'ipAddress': '192.168.41.240', 'roles': [], 'services': ['Session', 'Profiler', 'DeviceAdmin'], 'nodeStatus': 'Connected'}, 'version': '1.0.0'}

故障排除

要排除与开放式API相关的问题，请在调试日志配置窗口中将theapiservicecomponent 的日志级别设置为DEBUG。

要启用调试，请导航到操作>故障排除>调试向导>调试日志配置> ISE节点> apiservice。

API服务调试

要下载调试日志，请导航到操作>故障排除>下载日志> ISE PAN节点>调试日志。

下载调试日志