Create a Post
cancel
Showing results for 
Search instead for 
Did you mean: 
Charles_Currier
Employee
Employee

Management API Web Interface for Check Point R80.20 for API version 1.3

DESCRIPTION This is a Docker Containerized "Tree View Menu Tool".
It is a Python/Apache powered web page representation of the Check Point Management API v1.3.
More to the point it is a WYSIWYG interface of all the commands available in the Check Point
Management API. A valid login to a Check Point R80.20 MDS or SmartCenter with the API enabled
is required. Once logged in the API commands will be loaded on the left side of the page. The
commands are organized into a tree menu. Double Clicking will open a "category" or "branch"
of commands. Single clicking on a command will load the command and commands options onto the right
side of the page. Submitting there will pass the API command to the Management Server.

Codebase is also available through GitHub - cbcurrier3/wapi: Web interface to Check Point Management API 

BUILD
#docker build -rm -t wapi wapi/
#docker volume create --name=cpdata --opt type=nfs --opt=device=:/home/ovirt/cpData --opt=o=addr=192.168.0.245

RUN
# docker run -d -p 8080:443 --restart=always --name wapi wapi
# docker run -d -p 80:80 -p 443:443 --restart=always -v cpdata:/mnt/cpdata --name wapi wapi

EXEC
Bash #docker exec -i -t wapi bash

EXPRESS
docker build --rm -t wapi . ; docker run -d -p 80:443 --restart=always --name wapi wapi; docker exec -i -t wapi bash

CONFIGURE
set permissions and servers to connect to from apps.
[root@dockerhost /]# docker exec -i -t wapi bash
EDIT
the following
[root@cp-api /]# vi /var/www/html/CP-API/incl/auth
server='192.168.10.100'
muser='apiuser'
mpass='CpR0cks!'
mport='443'
domain='Default'
session=''
Be sure you have in your management policy an access layer that has the name "Live_Demo" for instance.
COLLABORATION
There are still refinements to be made and any contributions are welcome.
OPEN SOURCE/LICENSE
The GNU License is included - the codebase is wholly open source but nothing herein grants any license, authority,
ownership to Check Point Software Tech API or other Check Point products, solutions or publications.
6 Replies
Tomer_Sole
Mentor
Mentor

Hi, looks interesting.

Would you mind sharing more example screenshots?

0 Kudos
PhoneBoy
Admin
Admin

Agree, more screenshots, please Smiley Happy

0 Kudos
Charles_Currier
Employee
Employee

Some additional screen shots.

Here is the Login Screen
Login Screen
This is a shot with the Tree Open:
Tree Open

Show - Request:
Show request

Show List:
List
Add Host:
Add Host

I will look to generate a video tour in the near future.

Vladimir
Champion
Champion

Could the resultant strings be displayed on the bottom of the page?

This looks very helpful and if the section detailing scrolling history of the calls is included on the bottom, will simplify compilation of the scripts for subsequent editing and reuse.

Ron_Izraeli
Employee
Employee

Check out SmartConsole Extensions platform to integrate web pages inside SmartConsole

Charles_Currier
Employee
Employee

Thanks Ron ! 
I think the SmartConsole Extensions will have an excellent impact.

At this time I am still getting my head around them. 
The SmartConsole Extension Developer Guide is definitely the best starting place.

The thing I found that made doing something like the above tool easier was leveraging the API JSON file for Postman.

Exporting it from Postman provided a cleaned-up reference I was easily able to import into Python and think can be leveraged the same way for the Extensions.

The next challenge will simply be tying it all together.

Leaderboard

Epsum factorial non deposit quid pro quo hic escorol.

Upcoming Events

    CheckMates Events