Workflow
Workflow란 특정 순서에 따라 발생하는 반복적인 프로세스와 작업을 관리하는 시스템입니다.
관리콘솔에서 지원하는 Workflow의 기능에 대해 안내합니다.
권장버전
제품명(구성요소) |
버전 |
비고 |
---|---|---|
Genian ZTNA(정책서버) |
V6.0 이상 |
지원되는 기능
Genian ZTNA Workflow에서는 다음과 같은 기능을 지원합니다:
다중 Webhook
설정 공통 내용
${ }
${ }와 같이 매크로처럼 입력란에 표시되는 값은 서버에서 값이 실행될 때 해당 값이 치환되어 실행됩니다.
this 키워드
Response Body Template 에서 ${this} 와 같이 설정하면 Response로 넘어오는 결과 데이터를 필터하지 않고 그대로 Response로 출력한다는 의미입니다.
Response 데이터가 {"result" : "true", "message" : "success"} 일 때 Response Body Template을 {"res" : "${this.result}"} 와 같이 설정한다면 Response는 필터링되어 { "res" : "true" } 가 출력될 것입니다.
request 키워드
${request.userId} 처럼 해당 Workflow를 호출(POST)할 때 파라미터를 전달할 경우 해당 파라미터를 request 변수를 통해 사용할 수 있습니다.
복사 아이콘
Response Body에는 Response값을 Response Body Template에서 정의한 대로 필터링하여 표시하게 됩니다.
Response Body Template을 정의하지 않으면 실행결과가 그대로 출력됩니다.
Response Body에 표시되는 데이터에는 다음 프로세스에서 사용할 수 있도록 복사 아이콘이 각각 표시됩니다.
다음 Action을 정의하고 해당 프로세스에서 필요한 값을 이전 프로세스의 Response Body에서 복사해서 사용하면 됩니다.
붙여넣기 하면 ${dgdgadgasdgadg.ni_ipstr} 형태로 복사됩니다. ${이전프로세스ID.결과 컬럼값} 입니다.
RAW DATA 아이콘
Response Body에는 프로세스가 실행되면 RAW DATA가 아이콘이 출력됩니다.
Response Body에는 Response Body Template 에 의해 가공된 데이터가 표시되기 때문에 RAW DATA가 필요한 경우 해당 아이콘을 클릭하면 Response 원본 데이터가 클립보드에 복사가 됩니다.
설정 방법
Workflow 페이지로 이동합니다.
작업 선택 에서 "생성" 버튼을 클릭하여 생성 페이지로 이동합니다.
플로우명 을 입력합니다. ( 필수 입력 항목 )
왼쪽 영역의 >> 토글 아이콘을 클릭하여 연동 정보 를 설정합니다. (각 프로세스에서 공통적으로 사용할 값)
설정한 값은 입력 필드 오른쪽의 복사 아이콘 을 클릭하여 복사한 후 사용할 수 있습니다.
가운데 영역의 + 추가 아이콘을 클릭하여 프로세스 항목을 추가합니다.
프로세스 항목 선택 패널이 나타나며, 원하는 항목을 선택할 수 있습니다.
수정 화면이 표시되며, 추가된 프로세스의 세부사항을 수정할 수 있습니다.
하단의 Test 테스트 버튼을 클릭하여 설정이 정상 동작하는지 확인할 수 있습니다. - 이전 단계의 결과는 왼쪽에, 현재 단계의 결과는 오른쪽에 표시됩니다.
좌우에 위치한 화살표로 이전, 이후 단계의 수정화면으로 이동할 수 있습니다.
수정이 끝난 후, 오른쪽 상단의 X 닫기 버튼을 클릭하면 수정 화면이 닫힙니다.
추가적인 프로세스가 필요하다면, 다시 + 추가 아이콘을 클릭하여 항목을 추가할 수 있습니다.
화살표로 프로세스 간의 실행 순서 지정할 수 있습니다.
각 프로세스 항목의 좌우에는 화살표 연결점(포인트) 이 있습니다.
한 프로세스의 출력 연결점에서 다음 프로세스의 입력 연결점으로 드래그하여 연결 하면 실행 순서를 지정할 수 있습니다.
이렇게 연결된 흐름에 따라, Workflow가 순차적으로 실행됩니다.
필요에 따라 기존 연결을 제거하거나 새롭게 수정할 수도 있습니다.
프로세스 항목 종류
HttpRequest
Name, Request URL, Method, Headers 등을 설정할 수 있습니다.
Response Body Template 을 사용하여 응답 결과를 필터링할 수 있습니다.
예: {"res": "${this.result}"}
위와 같이 설정하면, 응답 데이터에서 result 값을 추출하여 가공된 결과를 만들 수 있습니다.
실행 방법
Workflow 목록화면에 생성된 URL 정보를 POST 방식으로 호출 하여 실행할 수 있습니다.