简介
本文档介绍使用PostMan作为REST客户端通过ERS API删除ISE上的网络访问设备(NAD)的过程。
先决条件
要求
Cisco 建议您了解以下主题:
- ISE(身份服务引擎)
- ERS(外部RESTful服务)
- REST客户包括Postman、RESTED、Insomnia等。
使用的组件
本文档中的信息基于以下软件版本:
- 思科ISE(身份服务引擎) 3.1补丁6
- Postman REST客户端v10.16
注意:其他ISE版本和REST客户端的步骤类似或相同。除非另有说明,您可在所有2.x和3.x ISE软件版本上使用这些步骤。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
配置
启用ERS(端口9060)
ERS API是只使用HTTPS的REST API,在端口443和端口9060上运行。端口9060默认关闭,因此需要先打开。如果尝试访问此端口的客户端不首先启用ERS,则会出现服务器超时。因此,第一个要求是从Cisco ISE管理员UI启用ERS。
导航到管理>设置> API设置并启用ERS(读/写)切换按钮。
注:ERS API支持TLS 1.1和TLS 1.2。ERS API不支持TLS 1.0,无论在思科ISE GUI的“安全设置”(Security Settings)窗口(管理(Administration) >系统(System) >设置(Settings) >安全设置(Security Settings))中启用TLS 1.0。在Security Settings(安全设置)窗口中启用TLS 1.0仅与EAP协议相关,不会影响ERS API。
注意:ISE不支持批量删除操作。必须一次执行一个需要删除。
创建ERS管理员
创建思科ISE管理员,分配密码,然后添加用户作为ERS管理员。您可以将配置的其余部分留空。
设置Postman
下载或使用在线版本的Postman 。
- 通过点击“工作区”选项卡下的“创建工作区”创建用户和工作区。
2. 选择空白工作区并为工作区指定名称。您可以添加说明并将其公开。已选择本示例个人。
创建工作空间后,您现在可以配置我们的API调用。
获取NAD名称和ID
在开始删除NAD之前,您必须首先知道NAD的名称或ID。可以从ISE上的NAD列表轻松获取NAD名称,但是只能通过GET API调用获取ID。同一API调用不仅返回NAD ID,还返回名称和说明(如果在NAD配置期间添加了)。
要配置GET调用,请首先访问ISE ERS SDK(软件开发工具包)。此工具编译ISE可以执行的API调用的完整列表:
- 导航到https://{ise-ip}/ers/sdk
- 使用您的ISE管理员凭证登录。
- 现在展开API文档
- 向下滚动直至找到Network Device,然后单击。
- 在此选项下,您现在可以找到可以为ISE上的网络设备执行的所有可用操作。选择全部获取
6. 现在,您可以看到在任何Rest客户端上执行API调用所需的配置以及预期的响应示例。
7. 返回Postman,配置ISE的基本身份验证。在授权选项卡下,选择基本身份验证作为身份验证类型,并添加之前在ISE中创建的ISE ERS用户凭证。
注意:除非在Postman上配置了变量,否则密码显示为明文
8. 转到报头选项卡,并配置API调用所需的报头,如SDK中所示。本例使用JSON,但也可使用xml。对于此示例,报头配置必须如下所示:
9. 执行GET呼叫。选择GET作为方法。在字段中粘贴https://{ISE-ip}/ers/config/networkdevice,然后单击发送。如果一切配置正确,您应该看到200 OK消息和结果。
TESTNAD1和TESTNAD2可使用2个不同的删除调用进行删除。
通过ID删除NAD
使用从GET呼叫收集的ID删除TESTNAD1。
1. 在网络设备选项卡下的SDK中,选择删除。如前所述,这是执行呼叫所需的报头以及预期响应
2. 假设报头类似于GET 呼叫,并且您在同一ISE上执行DELETE呼叫,那么请重复上一个呼叫并更改所需的变量。最后,报头配置必须如下所示:
3. 现在删除TESTNAD1。选择DELETE作为方法。在字段中粘贴https://{ISE-ip}/ers/config/networkdevice/{id},用GET呼叫中看到的需要(NAD)的实际ID替换{id},然后单击发送。如果一切配置正确,您应该看到204 No Content消息并且结果为空。
4. 通过再次执行GET呼叫或检查ISE NAD列表,确认是否删除了NAD。请注意,TESTNAD1不再存在。
按名称删除NAD
使用从GET呼叫或ISE GUI的NAD列表中收集的名称删除TESTNAD2。
- 在网络设备选项卡下的SDK中,选择按名称删除。如前所述,这是执行呼叫所需的报头以及预期响应。
2. 假设报头类似于GET 呼叫,并且您在同一ISE上执行DELETE呼叫,则复制上一个呼叫并更改所需的变量。最后,报头配置必须如下所示:
3. 删除TESTNAD2。选择DELETE作为方法。在字段中粘贴https://{ISE-ip}/ers/config/networkdevice/name/{name},用GET呼叫或ISE GUI中显示的NAD的实际名称替换{name},然后单击Send。如果一切配置正确,您应该看到204 No Content消息并且结果为空。
4. 通过再次执行GET呼叫或检查ISE NAD列表,确认是否删除了NAD。 请注意,TESTNAD2不再存在。
验证
如果能够访问API服务GUI页,例如https://{iseip}:{port}/api/swagger-ui/index.html或https://{iseip}:9060/ers/sdk,则表示API服务按照预期工作。
故障排除
- 所有REST操作都经过审核,并且日志记录在系统日志中。
- 要排除与开放式API相关的问题,请在调试日志配置窗口中将apiservice组件的日志级别设置为调试。
- 要排除与ERS API相关的问题,请在调试日志配置窗口中将ers组件的日志级别设置为调试。要查看此窗口,请导航到Cisco ISE GUI,单击菜单图标并选择Operations > Troubleshoot > Debug Wizard > Debug Log Configuration。
- 您可以从下载日志窗口下载日志。要查看此窗口,请导航到Cisco ISE GUI,单击菜单图标并选择Operations > Troubleshoot > Download Logs。
- 您可以选择从“支持捆绑包”选项卡中下载支持捆绑包(通过点击选项卡下的下载按钮),也可以通过点击api服务调试日志的日志文件(Log File)值,从“调试日志”(Debug Logs)选项卡中下载api服务调试日志。