はじめに
本ドキュメントは、Postman アプリを用いて FXOS ( Firepower eXtensible Operating System ) の REST API にアクセスした動作例を記載したものです。
本ドキュメントは以下の動作環境を用いて確認、作成しております。
FXOS Software Version (Firepower4150) : 2.8(1.125)
Postman Software Version ( Windows 64 bits ) : 8.10.0
ご利用の際は Cisco FXOS REST API Getting Started Guide も参照ください。また、Cisco TACでは具体的なAPI実装の設計や設定支援などは行っておりませんので、予めご了承ください。
Postman アプリのインストール
Postman アプリを事前にインストールする必要があります。具体的なインストール手順は Postman アプリのインストール を参照ください。
Workspace の作成
Postman の GUI を開いた後、Workspaces タブ > My Workspace を選択し、新しい Workspace を作成します。以下は「Collection名」を「FXOS_Collection_Test」、「Request名」を「FXOS_API_Request」に設定する場合の操作例です。
HTTP Requestの選択:
![001.png 001.png](/t5/image/serverpage/image-id/128184iAC874E439FD03883/image-size/large?v=v2&px=999)
Collectionの新規作成:
![002.png 002.png](/t5/image/serverpage/image-id/128185iE1A1B46F95794628/image-size/large?v=v2&px=999)
Collectionの名前の入力:
![003.png 003.png](/t5/image/serverpage/image-id/128186i261C6CCD6E68F0A9/image-size/large?v=v2&px=999)
Requestの新規作成:
![004.png 004.png](/t5/image/serverpage/image-id/128187i622605F4366A84EE/image-size/large?v=v2&px=999)
Requestの名前の入力:
![005.png 005.png](/t5/image/serverpage/image-id/128188i3EB4593B0F0948A1/image-size/large?v=v2&px=999)
POST Request の作成
Postman アプリを利用し FXOS の REST API による情報取得を実施する前に、POST Request で通信用(Postman と FXOS)の token を生成する必要があります。こちらの token 情報が生成された後、HTTP cookie として自動的に Postman アプリに保存されます。以下は token を生成するための操作例です。
・POST Request:https://<IP or FQDN of FXOS>/api/login
・Headers(USERNAME):<FXOS GUI の登録ユーザー名>
・Headers(PASSWORD):<FXOS GUI の登録パスワード>
Postman アプリがインストールされた後、SSL certificate verification がデフォルトで有効化されていますので、テストのために事前に Disable に変更します。
SSL certificate verification の無効化:
![disable.png disable.png](/t5/image/serverpage/image-id/128192iB95F1B1620C7AF81/image-size/large?v=v2&px=999)
「Send」ボタンにより、POST Requestの実施:
![006.png 006.png](/t5/image/serverpage/image-id/128193i4A224FDA78CF32CC/image-size/large?v=v2&px=999)
GET Request の作成
下記 2つ の REST API 対して、GET Request により、FXOS のスマートライセンス登録状況や利用状況を取得できます。REST API による取得した情報は FXOS の CLI( show license all ) 上の情報と同じです。以下は Postman アプリでの実行例です。
・GET Request (status):https://<IP or FQDN of FXOS>/api/sys/license/status
・GET Request (usage):https://<IP or FQDN of FXOS>/api/sys/license/usage
「Send」ボタンにより、GET Request (status)の実施:
![007.png 007.png](/t5/image/serverpage/image-id/128194iFE3026042D0A36A8/image-size/large?v=v2&px=999)
「Send」ボタンにより、GET Request (usage)の実施:
![008.png 008.png](/t5/image/serverpage/image-id/128195i6878031D3EAB7EF6/image-size/large?v=v2&px=999)
こちらの例で対象 FXOS は「FIREPOWER_4100_ASA_STANDARD」のライセンスを利用し、現状 ライセンスが未登録で「EVAL MODE」となっていることを確認できます。
なお、FXOS のスマートライセンスに対して、利用できる REST API 情報の詳細は REST API レファレンスガイドを参照ください。
GET Request の結果
GET Request が実施されたタイミングで、対象 FXOS の CLI での「show license all」結果も採取します。REST API による取得された情報と FXOS CLI による取得された情報が同じであることを確認できます。
「show license all」の結果:
FPR-4150-2# show license all
Smart Licensing Status
======================
Smart Licensing is ENABLED
Registration:
Status: UNREGISTERED ←ライセンスが未登録
Export-Controlled Functionality: NOT ALLOWED
License Authorization:
Status: EVAL MODE ←「EVAL MODE」であること
Evaluation Period Remaining: 83 days, 2 hours, 51 minutes, 28 seconds
License Conversion:
Automatic Conversion Enabled: True
Status: Not started
Export Authorization Key:
Features Authorized:
<none>
Utility:
Status: DISABLED
Data Privacy:
Sending Hostname: yes
Callhome hostname privacy: DISABLED
Smart Licensing hostname privacy: DISABLED
Version privacy: DISABLED
Transport:
Type: Callhome
License Usage
==============
(FIREPOWER_4100_ASA_STANDARD):
Description:
Count: 1 ←「FIREPOWER_4100_ASA_STANDARD」を利用している
Version: 1.0
Status: EVAL MODE
Export status: NOT RESTRICTED
Product Information
===================
UDI: PID:FPR-4150-SUP,SN:JMxxxxxxxx
Agent Version
=============
Smart Agent for Licensing: 4.6.9_rel/104
Reservation Info
================
License reservation: DISABLED
参照
https://www.cisco.com/c/en/us/td/docs/security/firepower/fxos/API_Getting_Started/fxos-api.html
https://developer.cisco.com/docs/cisco-firepower-chassis-manager-rest-api-reference/#!cisco-fxos-rest-api-reference/the-api-explorer