.. _workflow: .. role:: raw-html(raw) :format: html Workflow ========================= - Workflow refers to a system that manages repetitive processes and tasks that occur in a specific order. - The functionality of the Workflow in the management console is explained. Recommended version -------------------- .. csv-table:: :header: Product (Component), Version, Note :class: longtable :widths: 30 30 40 Genian ZTNA (Policy Server), V6.0 or later, N/A Supported features -------------------- Genian ZTNA Workflow supports the following features: - :ref:`workflow-httprequest` - :ref:`workflow-ifelse` - :ref:`workflow-crypto` - :ref:`workflow-loop` - :ref:`workflow-date` - :ref:`workflow-base64` - :ref:`workflow-sendmail` Common settings -------------------- * Template Variables (${ }) - The value displayed as ${ } in the input field is replaced with the actual value when executed on the server. * this keyword - If the Response Body Template is set to ${this}, it means that the result data from the Response is displayed without filtering. - If the data is {"result": "true", "message": "success"}, the Response Body Template set to {"res": "${this.result}"} will be filtered to output {"res": "true"}. * request keyword - If you pass parameters when calling the Workflow (POST), you can use the parameter values by referring to request as ${request.userId}. * Copy icon - The data displayed in the Response Body is filtered according to the Response Body Template defined. - If the Response Body Template is not defined, the execution result is displayed as is. - The data displayed in the Response Body can be copied to the next process by clicking the copy icon. - To use the value, copy and paste it in the format of ${dgdgadgasdgadg.ni_ipstr} in the previous process. ${previous process ID. result column value} * RAW DATA icon - The RAW DATA icon is output in the Response Body when the process is executed. - If the RAW DATA icon is clicked, the response original data is copied to the clipboard. Setup -------------------- 1. Navigate to the **Workflow** page. 2. Click the **"Create"** button under **Task Selection** to open the Workflow creation UI. 3. Enter the **Flow Name** (**Required field**). 4. Click the **>>** icon on the left panel to configure **Integration Information** (values commonly used across processes). - You can copy the configured values by clicking the **copy icon** on the right side of the input field. 5. Click the **+** icon in the center to add a process item. - A panel will appear, allowing you to select the desired process item. - A settings screen will be displayed where you can modify the details of the added process. - Click the **Test** button at the bottom to verify that the configuration is working correctly. - The results of the previous step are shown on the left, and the current step results are displayed on the right. - You can navigate to the previous or next step's edit screen using the arrows on the left and right. - Once modifications are complete, click the **X Close** button in the upper right to close the settings screen. - You can specify configuration values to handle different requests for each process. 6. If you need additional processes, click the **+** icon again to add new items. 7. **You can define the execution order of processes using arrows.** - Each process item has **arrow connection points** on its left and right sides. - Drag from the output connection point of one process to the input connection point of the next process to establish an execution sequence. - The workflow will execute sequentially based on the defined connections. - You can remove or modify connections as needed. Integration Information Settings -------------------------------- - Integration Information settings allow you to set values that are commonly used across processes. - Integration Information settings can be set in the process settings screen. It is located in the left area of the UI. - You can copy the configured values by clicking the **copy icon** on the right side of the input field. - The values you set can be configured as Plaintext or Secret. - Secret type cannot be modified after input, and must be deleted and added again to use. Process Item Types -------------------- Execution Method -------------------- - Execute the workflow by making a **POST request** to the URL provided in the Workflow list. .. code-block:: bash // Example of execution using the policy server CLI. The port number may vary depending on your configuration. // For external access, use the policy server URL instead of localhost, and add ?apiKey=YOUR_API_KEY at the end of the URL. curl -X POST "http://localhost:8080/mc2/rest/nac/extsvc/{WorkflowID}/execute" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"param1":"abc", "param2":123}' Related Documents -------------------- .. toctree:: :maxdepth: 1 :hidden: workflow-crypto workflow-date workflow-httprequest workflow-sendmail workflow-ifelse workflow-base64 workflow-loop