Requirement:
How to add/delete clients using XML API for IAP ?
Solution:XML API as external servers, allows to send XML commands to IAP, use the XML API interface to add, delete, authenticate, query, delete clients.
IAP supports eight XML_API server profiles , and only one XML_API server can be used at one time.
Customer can use http/https to post commands to IAP. A typical communication process using the XML API interface happens as follows:
An API command is issued from your server in XML format to the master or client associated IAP.
If the client associates to master, master processes the XML request and sends response to the XML API server and if the client associates to slave, the associated IAP processes the XML request and sends XML response to the XML server.
Configuration:From GUI on IAP:
More -> Services -> Network Integration
From CLI on IAP :
IAP-103-1b:ac (config) # xml-api-server
IAP-103-1b:ac (xml-api-server) # ip 10.1.1.1
IAP-103-1b:ac (xml-api-server) # key 123456
IAP-103-1b:ac (xml-api-server) # exit
IAP-103-1b:ac (config) # exit
IAP-103-1b:ac# commit apply
committing configuration...
configuration committed.
To delete / add users , below is the format needed to be configured on the server.
The file can be named user_add.xml or xxx.xm
Below key should be matched the key that configured in IAP
Ipaddr is client’s IP.
xml=<aruba command="user_add">
<ipaddr>10.10.1.1</ipaddr>
<role>XML_API</role>
<key>123456</key>
<session_timeout>60</session_timeout>
<authentication>cleartext</authentication>
<version>1.0</version>
</aruba>
The file can be named user_delete.xml
xml=<aruba command='user_delete'>
<ipaddr>10.10.1.1</ipaddr>
<key>123456q</key>
<authentication>cleartext</authentication>
<version>1.0</version>
</aruba>
NOTE: This could be integrated with the required Captive portal server, and could send a role change message to IAP once they think the authentication is finished.
VerificationFrom IAP:
IAP-103-1b:ac# sho xml-api-server
ip :10.1.1.1
key :123456
For successful add/delete functions, we will return the XML response with operation result.
<status>Ok</status>
<code>0</code>
</aruba>