はじめに
このドキュメントでは、RESTクライアントとしてPostManを使用して、ERS API経由でISE上のネットワークアクセスデバイス(NAD)を削除するプロセスについて説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- ISE(Identity Services Engine)
- ERS(外部RESTfulサービス)
- RESTクライアントには、Postman、RESTED、Insomniaなどがあります。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアのバージョンに基づいています。
- Cisco ISE(Identity Services Engine)3.1パッチ6
- Postman RESTクライアントv10.16
注:手順は、他のISEバージョンとRESTクライアントで類似または同一です。これらの手順は、特に記載のない限り、すべての2.xおよび3.x ISEソフトウェアリリースで使用できます。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
設定
ERSの有効化(ポート9060)
ERS APIは、ポート443およびポート9060で動作するHTTPS専用のREST APIです。ポート9060はデフォルトで閉じられているため、最初に開く必要があります。このポートにアクセスしようとしているクライアントが最初にERSをイネーブルにしていない場合、サーバからのタイムアウトが表示されます。したがって、最初の要件は、Cisco ISE管理UIからERSを有効にすることです。
Administration > Settings > API Settingsの順に移動し、ERS(読み取り/書き込み)トグルボタンを有効にします。
注:ERS APIはTLS 1.1とTLS 1.2をサポートしています。ERS APIは、Cisco ISE GUIのSecurity Settingsウィンドウ(Administration > System > Settings > Security Settings)でTLS 1.0を有効にしたかどうかに関係なく、TLS 1.0をサポートしません。[セキュリティの設定]ウィンドウでTLS 1.0を有効にすることは、EAPプロトコルのみに関連し、ERS APIには影響しません。
注:一括削除操作はISEではサポートされていません。NADの削除は、一度に1つずつ実行する必要があります。
ERS管理者の作成
Cisco ISE管理者を作成し、パスワードを割り当ててから、ユーザをERS Adminとして管理グループに追加します。残りの設定は空のままにしておくことができます。
Postmanの設定
Postmanのオンライン版をダウンロードするか、使用します。
- ユーザを作成し、ワークスペースを作成します。これを行うには、「ワークスペース」タブにある「ワークスペースを作成」をクリックします。
2. 「ブランク・ワークスペース」を選択し、ワークスペースに名前を割り当てます。説明を追加して公開できます。この例では、Personalが選択されています。
ワークスペースを作成したら、API呼び出しを設定できます。
NADの名前とIDの取得
NADの削除を開始する前に、NADの名前またはIDを知っておく必要があります。NAD名はISEのNADリストから簡単に取得できますが、IDはGET APIコールからのみ取得できます。同じAPIコールは、NAD IDだけでなく、NAD設定中に追加された名前と説明も返します。
GETコールを設定するには、最初にISE ERS SDK(Software Developer Kit)にアクセスします。このツールは、ISEが実行できるAPIコールのリスト全体をコンパイルします。
- https://{ise-ip}/ers/sdkに移動します。
- ISE管理者クレデンシャルを使用してログインします。
- APIドキュメントを展開します。
- Network Deviceが表示されるまでスクロールダウンして、これをクリックします。
- このオプションでは、ISEのネットワークデバイスに対して実行できるすべての操作を検索できます。Get-Allを選択します。
6. これで、任意のRestクライアントでAPIコールを実行するために必要な設定と、予期される応答の例が表示されます。
7. Postmanに戻り、ISEへの基本認証を設定します。Authorization タブで、認証タイプとしてBasic Authを選択し、ISEで作成済みのISE ERSユーザクレデンシャルを追加します。
注:Postmanで変数が設定されていない限り、パスワードはクリアテキストで表示されます
8. 「ヘッダー」タブに移動し、SDKに表示されるAPIコールに必要なヘッダーを構成します。この例ではJSONを使用していますが、xmlも使用できます。この例では、ヘッダー設定は次のようになっている必要があります。
9. GETコールを実行します。方式としてGETを選択します。フィールドにhttps://{ISE-ip}/ers/config/networkdeviceを貼り付け、Sendをクリックします。すべてが正しく設定されていれば、200 Okメッセージと結果が表示されます。
TESTNAD1とTESTNAD2は、2つの異なるdeleteコールを使用して削除できます。
IDによるNADの削除
GETコールから収集されたIDを使用してTESTNAD1を削除します。
1. SDKのNetwork DeviceタブでDeleteを選択します。前に見たように、コールを実行するために必要なヘッダーと予期される応答があります
2. ヘッダーがGETコールと同様で、同じISEでDELETEコールを実行する場合は、前のコールを複製し、必要な変数を変更します。最後に、ヘッダー設定は次のようになります。
3. ここで、TESTNAD1を削除します。方法としてDELETEを選択します。https://{ISE-ip}/ers/config/networkdevice/{id}をフィールドに貼り付け、{id}をGETコールで確認できるNADの実際のIDで置き換えて、Sendをクリックします。すべてが正しく設定されていれば、「204 No Content」というメッセージが表示され、結果は空白になります。
4. GETコールを再度実行するか、ISE NADリストを確認して、NADが削除されたかどうかを確認します。TESTNAD1はもう存在しないことに注意してください。
名前によるNADの削除
GETコールまたはISE GUIのNADリストから収集したnameを使用して、TESTNAD2を削除します。
- SDKのNetwork Deviceタブで、Delete-by-Nameを選択します。前に見たように、コールを実行するために必要なヘッダーと予期される応答があります。
2. ヘッダーがGETコールと同様であり、同じISEでDELETEコールを実行している場合は、前のコールを複製し、必要な変数を変更します。最後に、ヘッダー設定は次のようになります。
3. TESTNAD2を削除します。方法としてDELETEを選択します。https://{ISE-ip}/ers/config/networkdevice/name/{name}をフィールドに貼り付け、{name}をGETコールまたはISE GUIで確認できるNADの実際の名前で置き換えて、Sendをクリックします。すべてが正しく設定されていれば、「204 No Content」というメッセージが表示され、結果は空白になります。
4. GETコールを再度実行するか、ISE NADリストを確認して、NADが削除されたかどうかを確認します。 TESTNAD2はもう存在しないことに注意してください。
確認
https://{iseip}:{port}/api/swagger-ui/index.htmlやhttps://{iseip}:9060/ers/sdkなどのAPIサービスのGUIページにアクセスできる場合は、APIサービスが期待どおりに動作していることを意味します。
トラブルシュート
- すべてのREST操作が監査され、ログがシステムログに記録されます。
- Open APIに関連する問題をトラブルシューティングするには、Debug Log ConfigurationウィンドウでapiserviceコンポーネントのログレベルをDEBUGに設定します。
- ERS APIに関する問題をトラブルシューティングするには、Debug Log ConfigurationウィンドウでersコンポーネントのLog LevelをDEBUGに設定します。このウィンドウを表示するには、Cisco ISE GUIに移動し、メニューアイコンをクリックして、Operations > Troubleshoot > Debug Wizard > Debug Log Configurationの順に選択します。
- ログは、Download Logsウィンドウからダウンロードできます。このウィンドウを表示するには、Cisco ISE GUIに移動し、メニューアイコンをクリックして、Operations > Troubleshoot > Download Logsの順に選択します。
- Support Bundleタブの下のDownloadボタンをクリックして、このタブからサポートバンドルをダウンロードするか、api-serviceデバッグログのLog Fileの値をクリックして、このapi-serviceデバッグログをDebug Logsタブからダウンロードするかを選択できます。