Palo Alto Networks Certified Security Automation Engineer (PCSAE)IntegrationsMedium
A security engineer is developing a custom integration for Cortex XSOAR that interacts with a partner's API. The partner's API requires specific configuration parameters, such as a partner ID and a shared secret, which are unique to each customer and should be easily configurable by end-users without modifying the integration code. How should these parameters be defined within the integration's `yml` file to allow for user configuration through the XSOAR UI?
- AAs `configuration` fields in the `yml` file, each with a `display` name and `type`.
- BAs environment variables on the XSOAR engine.
- CAs hardcoded variables within the Python script.
- DAs global constants in the `demisto_sdk` library.
Show answer & explanationAnswer & explanation
Correct answer: A. As `configuration` fields in the `yml` file, each with a `display` name and `type`.
Configurable parameters for an integration are defined in the `yml` file within the `configuration` section. Each parameter requires a `name`, `display` name, `type`, and other attributes to allow users to input values via the XSOAR UI when creating an integration instance.
Why the other options are wrong
- B. While environment variables can be used for some settings, they are not the primary or most user-friendly method for instance-specific configuration within XSOAR's integration UI.
- C. Hardcoding variables prevents user configuration and requires code changes for each deployment, which is not scalable or user-friendly.
- D. The `demisto_sdk` is a development kit; defining global constants there would not make them configurable per integration instance in the XSOAR UI.
Configurable Integration Parameters
Integration parameters that users can configure via the XSOAR UI are defined in the integration's `yml` file under the `configuration` section.
- Defined in the `yml` file.
- Uses `name`, `display`, `type` attributes.
- Allows user input for instance-specific settings.
Memory trick: The YML file 'configures' what the integration needs.