> For the complete documentation index, see [llms.txt](https://docs.expel.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.expel.io/connect-your-technology/l-p-integrations/palo-alto-networks/palo-alto-networks-next-gen-firewall-setup-for-workbench.md).

# Palo Alto Networks Next-Gen Firewall Setup for Workbench

## Prerequisites <a href="#uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614234700" id="uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614234700"></a>

1. You must allow appropriate access depending on your infrastructure:
   * **On-premises:** The Expel Assembler needs access to the Palo Alto device or instance through port 443 (UI) and 443 (API) .
   * **Cloud:** For cloud instances, you need to allow Expel through the internet via the [egress IP addresses listed here](/workbench-setup/configure-an-ip-allow-list.md). All requests to the API come from one of the those IP addresses.

## Step 1: Enable Console Access <a href="#uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614234700" id="uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614234700"></a>

This procedure creates a user account for Expel that keeps the Expel activity separate from other activity on the Palo Alto console.

Having read-only access to the interface of your technology allows Expel to dig deeper during incident investigations. Our device health team uses this access to investigate potential health issues with your tech. For more information, see [Why Expel Asks for Console Access](/connect-your-technology/about-integrations/why-expel-asks-for-console-access.md).

1. Log onto the Palo Alto console.
2. On the console page, navigate to **Device > Administrators**.
3. Click **Add** at the bottom left of the page.
4. Configure the Administrator:
   * **Name** - enter "expeluser".
   * **Password** - enter a new password.
   * **Administrator Type** - select **Dynamic**.
   * Select **Superuser** (read-only) from the list below Administrator Type.
5. Click **OK**.
6. Verify that "expeluser" is created on the console page.

## Step 2: Generate API Credentials <a href="#uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614772422" id="uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614772422"></a>

To integrate the technology with Workbench, you need to create secure credentials to the API.

This procedure creates an authentication token that allows the Expel Assembler to access the Palo Alto API.

{% hint style="info" %}
Security Assertion Markup Language (SAML) authenticated accounts on Palo Alto cannot generate API keys.
{% endhint %}

1. In a new browser tab, open the following URL, replacing **\<hostname or IP address>**, **\<username>**, and **\<password>** with the appropriate values for your Panorama console or the management interface of your Palo Alto Networks firewall: \
   `https://<hostname or ip address>/api/?type=keygen&user=<username>&password=<password>`
   * **\<hostname or IP address>** is your Palo Alto URL from your console page.
   * **\<username>** is the username created in [Step 1](#uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614234700-1) (expeluser).
   * **\<password>** is the password entered in [Step 1](#uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614234700-1).
2. After the URL is complete, press **Enter**.
3. On the next screen, the generated API key appears. **Copy and save** it in a safe location for use in a later step.
4. **If you use Wildfire API**, you also need a Wildfire API key in addition to the API key just created. Follow the instructions below to get your key, and then **copy and save** it for later use.

<details>

<summary>Wildfire API key</summary>

* **WildFire Appliance**: follow the steps in [Get Your WildFire Appliance API Key](https://docs.paloaltonetworks.com/wildfire/u-v/wildfire-api/get-started-with-the-wildfire-api/get-your-api-key/get-your-wildfire-appliance-api-key.html).
* **WildFire Public Cloud**: follow the steps in [Get Your WildFire Public Cloud API Key From the WildFire Portal](https://docs.paloaltonetworks.com/wildfire/u-v/wildfire-api/get-started-with-the-wildfire-api/get-your-api-key/get-your-wildfire-public-cloud-api-key.html#id3809ea9e-090f-459b-a382-9689383d1855).

</details>

## Step 3: Add PAN Next-Gen Firewall as a Security Device in Workbench <a href="#uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm4492470148268833056151870623" id="uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm4492470148268833056151870623"></a>

Now that you have the correct access configured and noted the credentials, you can integrate your tech with Workbench.

1. In a new browser tab, log into [Workbench](https://workbench.expel.io/settings/security-devices?setupIntegration=palo_alto_networks). This link opens the Add Security Device screen directly.
2. On the Add Security Device screen, configure as follows:

   <div align="left"><figure><img src="/files/lrk96TsRh7gR0j50xsiA" alt="PAN Next-Gen Firewall Add a Security Device configuration screen in Workbench." width="375"><figcaption></figcaption></figure></div>

   * **Where is your device?** - select one of the following depending on your installation:
     * **Self-hosted installation:** select **On-prem** and then select **Assembler** from the list. Select the assembler you set up in [Add a New Assembler](/connect-your-technology/expel-assembler/add-a-new-assembler.md).
     * **SaaS installation**: select **Cloud**.
   * **Name** - enter a name that might help you more easily identify this integration, such as “CompanyName PAN NGFW”; this name will display in Workbench under the Name column, and is a text string that you can filter on.
   * **Location** - enter the location of your integration, for example, “cloud.” This is also a text string that you can filter on, so we recommend being consistent with location naming across your Expel integrations.
   * **Server address** - enter the hostname or IP address of the Palo Alto management interface. Device IP can be found in the Palo Alto console under **Dashboard > General Information > MGT IP Address**.
   * **API key** - enter the API key generated in [Step 2](#uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614772422).
   * PanOS version - the OS version must be specified if OS version is <= 6.
   * **Wildfire API key** - enter the Wildfire API key generated in [Step 2](#uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614772422).
3. Select **Save**.
4. On the console access screen, select **Set up now**.
5. In the Console Login area, complete the fields as follows:
   * **Console URL** - enter the console URL from the Server address in the Connection Settings area above. At the end of the URL, enter "**/login"**.
   * **Username** - enter the username for the new user you created in [Step 1](#uuid-7fb5b220-07d0-b7c6-58ca-b0e35ce64f52_bridgehead-idm13305614234700-1).
   * **Password** - enter the password for the new user.
   * **Two-factor secret key (32-character code)** - depending on how your organization enforces log-ins, this field may not apply to you. In these cases, you can leave it blank. This field is optional. If you have questions or concerns, reach out to your Customer Success Manager (CSM) or Expel support.
6. Select **Save**.

Your device should be created successfully within a few seconds. A few reminders:

* After your connection is healthy, it will take some time for your device to begin polling and receiving data.
* To check on the status, select the downward arrow for your device in the first column and choose **View details**.
* Polling will happen first; data will be received after that. **You must refresh the page to see updates.**
* If your device does not begin polling within 15 minutes, and does not begin receiving data within 30 minutes, [contact our support team for help](/support/how-to-reach-us.md).
* To check if alerts are coming through, navigate to **Dashboards > Alert Analysis**. Scroll to the device you want to check, and select the **Expel Alerts** tab to reveal more alert information. It can take 36 to 72 hours for alerts to appear after setup, as we [tune your device](/workbench-reference/alerts/how-expel-alerts-work.md#device-tuning).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.expel.io/connect-your-technology/l-p-integrations/palo-alto-networks/palo-alto-networks-next-gen-firewall-setup-for-workbench.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
