소개
이 문서에서는 PostMan을 REST 클라이언트로 사용하여 ERS API를 통해 ISE에서 NAD(Network Access Device)를 삭제하는 프로세스에 대해 설명합니다.
사전 요구 사항
요구 사항
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
- ISE(Identity Services Engine)
- ERS(외부 RESTful 서비스)
- REST 클라이언트 Postman, REST, 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(API 설정)로 이동하고 ERS(Read/Write) 토글 버튼을 활성화합니다.
참고: ERS API는 TLS 1.1 및 TLS 1.2를 지원합니다. ERS API는 Cisco ISE GUI의 Security Settings(보안 설정) 창에서 TLS 1.0을 활성화해도 TLS 1.0을 지원하지 않습니다(Administration(관리) > System(시스템) > Settings(설정) > Security Settings(보안 설정)). Security Settings(보안 설정) 창에서 TLS 1.0을 활성화하는 것은 EAP 프로토콜에만 관련되며 ERS API에는 영향을 주지 않습니다.
참고: 대량 삭제 작업은 ISE에서 지원되지 않습니다. NAD 삭제는 한 번에 하나씩 수행해야 합니다.
ERS 관리자 생성
Cisco ISE 관리자를 만들고 암호를 할당한 다음 사용자를 관리자 그룹에 ERS 관리자로 추가합니다. 나머지 컨피그레이션은 비워둘 수 있습니다.
Postman 설정
Postman의 온라인 버전을 다운로드하거나 사용합니다.
- 작업공간(Workspaces) 탭에서 작업공간 생성(Create Workspace)을 클릭하여 사용자를 생성하고 작업공간을 생성합니다.
2. 빈 Workspace를 선택하고 Workspace에 이름을 지정합니다. 설명을 추가하고 공개할 수 있습니다. 이 예에서는 Personal이 선택됩니다.
Workspace를 생성했으면 이제 API 호출을 구성할 수 있습니다.
NAD 이름 및 ID 가져오기
NAD 삭제를 시작하기 전에 먼저 NAD의 이름 또는 ID를 알아야 합니다. NAD 이름은 ISE의 NAD 목록에서 쉽게 얻을 수 있지만 ID는 GET API 호출에서만 얻을 수 있습니다. 동일한 API 호출은 NAD ID뿐만 아니라 이름 및 설명(NAD 컨피그레이션 중에 추가된 경우)을 반환합니다.
GET 호출을 구성하려면 먼저 ISE ERS SDK(소프트웨어 개발자 키트)에 액세스합니다. 이 도구는 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. Headers(헤더) 탭으로 이동하고 SDK에 표시된 대로 API 호출에 필요한 헤더를 구성합니다. 이 예에서는 JSON이 사용되지만 xml도 사용할 수 있습니다. 이 예에서 헤더 컨피그레이션은 다음과 같아야 합니다.
9. GET 통화를 수행합니다. 방법으로 GET을 선택합니다. 필드에 https://{ISE-ip}/ers/config/network device를 붙여넣고 Send를 클릭합니다. 모든 것이 올바르게 구성된 경우 200개의 확인 메시지와 결과가 표시되어야 합니다.
TESTNAD1 및 TESTNAD2는 2개의 다른 삭제 호출을 사용하여 삭제할 수 있습니다.
ID별 NAD 삭제
GET 통화에서 수집된 ID를 사용하여 TESTNAD1을 삭제합니다.
1. SDK의 Network Device(네트워크 디바이스) 탭에서 Delete(삭제)를 선택합니다. 앞서 살펴본 것처럼, 통화를 수행하는 데 필요한 헤더와 예상 응답도 있습니다
2. 헤더가 GET 통화와 유사하고 동일한 ISE에서 DELETE 통화를 수행 중이라면 이전 통화를 복제하고 필요한 변수를 변경합니다. 마지막으로 헤더 구성은 다음과 같아야 합니다.
3. 이제 TESTNAD1을 삭제합니다. 메서드로 DELETE를 선택합니다. 필드에 https://{ISE-ip}/ers/config/networkdevice/{id}을(를) 붙여넣고, GET 통화에서 확인된 NAD의 실제 ID로 {id}을(를) 바꾸고 Send(보내기)를 클릭합니다. 모든 것이 올바르게 구성된 경우 204 No Content(204 콘텐츠 없음) 메시지가 표시되고 결과가 비어 있어야 합니다.
4. GET 호출을 다시 수행하거나 ISE NAD 목록을 확인하여 NAD가 삭제되었는지 확인합니다. TESTNAD1은 더 이상 존재하지 않습니다.
이름별 NAD 삭제
GET 통화 또는 ISE GUI의 NAD 목록에서 수집된 이름을 사용하여 TESTNAD2를 삭제합니다.
- SDK의 Network Device 탭에서 Delete by-Name을 선택합니다. 앞서 살펴본 것처럼, 통화를 수행하는 데 필요한 헤더와 예상 응답도 있습니다.
2. 헤더가 GET 통화와 유사하며 동일한 ISE에서 DELETE 통화를 수행 중이면 이전 통화를 복제하고 필요한 변수를 변경합니다. 마지막으로 헤더 구성은 다음과 같아야 합니다.
3. TESTNAD2를 삭제합니다. 메서드로 DELETE를 선택합니다. 필드에서 https://{ISE-ip}/ers/config/networkdevice/name/{name}을(를) 붙여넣고, GET 통화 또는 ISE GUI에서 표시되는 NAD의 실제 이름으로 {name}을(를) 바꾸고 Send(보내기)를 클릭합니다. 모든 것이 올바르게 구성된 경우 204 No Content(204 콘텐츠 없음) 메시지가 표시되고 결과가 비어 있어야 합니다.
4. GET 호출을 다시 수행하거나 ISE NAD 목록을 확인하여 NAD가 삭제되었는지 확인합니다. TESTNAD2는 더 이상 존재하지 않습니다.
다음을 확인합니다.
API 서비스 GUI 페이지에 액세스할 수 있는 경우(예: https://{iseip}:{port}/api/swagger-ui/index.html 또는 https://{iseip}:9060/ers/sdk) API 서비스가 예상대로 작동함을 의미합니다.
문제 해결
- 모든 REST 작업은 감사되며 로그는 시스템 로그에 기록됩니다.
- Open API와 관련된 문제를 해결하려면 Debug Log Configuration(로그 컨피그레이션 디버그) 창에서 apiservice 구성 요소의 Log Level(로그 레벨)을 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(다운로드) 버튼을 클릭하여 지원 번들을 다운로드하거나, Debug Logs(디버그 로그) 탭에서 api-service 디버그 로그에 대한 Log File(로그 파일)을 클릭하여 api-service 디버그 로그를 다운로드하도록 선택할 수 있습니다.