Prisma Access Whitelist Egress IPs on SaaS Services
Retrieve Prisma Access Egress IP for specific geographic zones and populate in security groups within cloud services.
Palo Alto Networks - Strata Cloud Manager · 11 tasks · 4 inputs · 0 outputs
Details
| ID | Prisma Access Whitelist Egress IPs on SaaS Services |
|---|---|
| From Version | 5.5.0 |
| Tasks | 11 |
README
Retrieve Prisma Access Egress IP for specific geographic Zones and populate in security groups within cloud services.
Dependencies
This playbook uses the following sub-playbooks, integrations, and scripts.
Sub-playbooks
- IP Whitelist - AWS Security Group
- IP Whitelist - GCP Firewall
- Allow IP - Okta Zone
Integrations
- PrismaAccessEgressIPFeed
Scripts
This playbook does not use any scripts.
Commands
- prisma-access-get-indicators
- closeInvestigation
Playbook Inputs
| Name | Description | Default Value | Required |
|---|---|---|---|
| Indicator Query | Indicators matching the indicator query will be used as playbook input | Optional | |
| AWSSecurityGroupName | Name of the AWS Security Group to update with the IPs. | Optional | |
| GCPFirewallName | Optional | ||
| OktaZoneID | ID of the Okta Zone to update. Use !okta-list-zones to obtain | Optional |
Playbook Outputs
There are no outputs for this playbook.
Playbook Image

Inputs
—AWSSecurityGroupName— Name of the AWS Security Group to update with the IPs.GCPFirewallName— Name of the GCP Firewall to update with the IPs.OktaZoneID— ID of the Okta Zone to update. Use !okta-list-zones to obtain
Commands used
closeInvestigation
prisma-access-get-indicators
Flowchart
id: Prisma Access Whitelist Egress IPs on SaaS Services version: -1 name: Prisma Access Whitelist Egress IPs on SaaS Services description: Retrieve Prisma Access Egress IP for specific geographic zones and populate in security groups within cloud services. starttaskid: "0" tasks: "0": id: "0" taskid: 01a1ecce-c3d8-46a8-84f9-0a7d6f214ecc type: start task: id: 01a1ecce-c3d8-46a8-84f9-0a7d6f214ecc version: -1 name: "" iscommand: false brand: "" description: '' nexttasks: '#none#': - "27" separatecontext: false view: |- { "position": { "x": 60, "y": 50 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "27": id: "27" taskid: c681a06b-367e-4964-84e0-e7bc8fd89855 type: condition task: id: c681a06b-367e-4964-84e0-e7bc8fd89855 version: -1 name: Is Prisma Access integration enabled? type: condition iscommand: false brand: "" description: '' nexttasks: '#default#': - "34" "yes": - "40" separatecontext: false conditions: - label: "yes" condition: - - operator: isEqualString left: value: complex: root: modules filters: - - operator: isEqualString left: value: simple: modules.state iscontext: true right: value: simple: active - - operator: isEqualString left: value: simple: modules.brand iscontext: true right: value: simple: Prisma Access Egress IP feed accessor: brand iscontext: true right: value: simple: Prisma Access Egress IP feed view: |- { "position": { "x": 60, "y": 195 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "34": id: "34" taskid: 1b3817f1-b459-4fb5-8132-d7b0a8fa6405 type: regular task: id: 1b3817f1-b459-4fb5-8132-d7b0a8fa6405 version: -1 name: Close incident description: Closes the incident. script: Builtin|||closeInvestigation type: regular iscommand: true brand: Builtin nexttasks: '#none#': - "45" scriptarguments: assetid: {} closeNotes: {} closeReason: {} code42alerttype: {} emailclassification: {} id: {} phishingsubtype: {} separatecontext: false view: |- { "position": { "x": 50, "y": 1100 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "35": id: "35" taskid: d38a143a-83e7-40e6-8b3e-50f86fe28732 type: playbook task: id: d38a143a-83e7-40e6-8b3e-50f86fe28732 version: -1 name: IP Whitelist - AWS Security Group description: Sync a list of IP addresses to an AWS Security Group. playbookName: IP Whitelist - AWS Security Group type: playbook iscommand: false brand: "" nexttasks: '#none#': - "34" scriptarguments: IP: simple: ${PrismaAccess.Egress.IP(["US West","Argentina"].indexOf(val.Zone)>=0).Address} IndicatorTagName: simple: AWS_Prisma_IP_Whitelist SecurityGroupName: simple: ${inputs.AWSSecurityGroupName} separatecontext: true loop: iscommand: false exitCondition: "" wait: 1 max: 100 view: |- { "position": { "x": -790, "y": 915 } } note: false timertriggers: [] ignoreworker: false skipunavailable: true quietmode: 2 "36": id: "36" taskid: 3e5c16ff-bf04-4e03-8419-ace47c265b34 type: playbook task: id: 3e5c16ff-bf04-4e03-8419-ace47c265b34 version: -1 name: IP Whitelist - GCP Firewall description: Set a list of IP addresses in GCP firewall. playbookName: IP Whitelist - GCP Firewall type: playbook iscommand: false brand: "" nexttasks: '#none#': - "34" scriptarguments: GCPFirewallName: simple: ${inputs.GCPFirewallName} IP: simple: ${PrismaAccess.Egress.IP(["US West","Argentina"].indexOf(val.Zone)>=0).Address} IndicatorTagName: simple: GCP_Prisma_IP_Whitelist separatecontext: true loop: iscommand: false exitCondition: "" wait: 1 max: 100 view: |- { "position": { "x": -1290, "y": 915 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 2 "40": id: "40" taskid: fab04a1f-5cad-416b-878b-ec87a6fc6409 type: regular task: id: fab04a1f-5cad-416b-878b-ec87a6fc6409 version: -1 name: Prisma Access Egress IP Feed - Get IPs description: Gets indicators from the feed. script: '|||prisma-access-get-indicators' type: regular iscommand: true brand: "" nexttasks: '#none#': - "42" - "43" - "44" scriptarguments: limit: simple: "1000" separatecontext: false view: |- { "position": { "x": -300, "y": 380 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 2 "41": id: "41" taskid: 70af2aa4-8c91-4705-88ef-1deba78c1ee4 type: playbook task: id: 70af2aa4-8c91-4705-88ef-1deba78c1ee4 version: -1 name: Allow IP - Okta Zone description: "Sync a list of IP addresses to the Okta Network Zone with the given ID. \nExisting IPs in the Okta Zone which are not in the input list will be removed and the indicator will be untagged in Cortex XSOAR.\nIDs can be retrieved using !okta-list-zones. This playbook supports CIDR notation only (1.1.1.1/32) and not range notation (1.1.1.1-1.1.1.1)" playbookName: Allow IP - Okta Zone type: playbook iscommand: false brand: "" nexttasks: '#none#': - "34" scriptarguments: IP: simple: ${PrismaAccess.Egress.IP(["US West","Argentina"].indexOf(val.Zone)>=0).Address} IndicatorTagName: simple: Prisma_Access_Okta_Zone ZoneID: simple: ${inputs.OktaZoneID} separatecontext: true loop: iscommand: false exitCondition: "" wait: 1 max: 100 view: |- { "position": { "x": -300, "y": 915 } } note: false timertriggers: [] ignoreworker: false skipunavailable: true quietmode: 2 "42": id: "42" taskid: e1d2c731-1efe-4786-880f-38d3644a3ced type: condition task: id: e1d2c731-1efe-4786-880f-38d3644a3ced version: -1 name: Is the Okta Zone ID input set? type: condition iscommand: false brand: "" description: '' nexttasks: '#default#': - "34" "yes": - "41" separatecontext: false conditions: - label: "yes" condition: - - operator: isNotEmpty left: value: simple: inputs.OktaZoneID iscontext: true view: |- { "position": { "x": -300, "y": 580 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "43": id: "43" taskid: c998f782-d62b-40eb-841f-f2771d701dd6 type: condition task: id: c998f782-d62b-40eb-841f-f2771d701dd6 version: -1 name: Is the AWS Security Group input set? type: condition iscommand: false brand: "" description: '' nexttasks: '#default#': - "34" "yes": - "35" separatecontext: false conditions: - label: "yes" condition: - - operator: isNotEmpty left: value: simple: inputs.AWSSecurityGroupName iscontext: true view: |- { "position": { "x": -790, "y": 580 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "44": id: "44" taskid: a8f01ce4-9ee3-4343-8a4d-5bab9c0f1867 type: condition task: id: a8f01ce4-9ee3-4343-8a4d-5bab9c0f1867 version: -1 name: Is the GCP Firewall Name input set? type: condition iscommand: false brand: "" description: '' nexttasks: '#default#': - "34" "yes": - "36" separatecontext: false conditions: - label: "yes" condition: - - operator: isNotEmpty left: value: simple: inputs.GCPFirewallName iscontext: true view: |- { "position": { "x": -1290, "y": 580 } } note: false timertriggers: [] ignoreworker: false skipunavailable: true quietmode: 0 "45": id: "45" taskid: d265c933-47a8-4836-8304-a00a0d651ff2 type: title task: id: d265c933-47a8-4836-8304-a00a0d651ff2 version: -1 name: Done type: title iscommand: false brand: "" description: '' separatecontext: false view: |- { "position": { "x": 50, "y": 1250 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 view: |- { "linkLabelsPosition": { "27_34_#default#": 0.11, "42_34_#default#": 0.25, "43_34_#default#": 0.15, "44_34_#default#": 0.1 }, "paper": { "dimensions": { "height": 1265, "width": 1730, "x": -1290, "y": 50 } } } inputs: - key: "" value: {} required: false description: "" playbookInputQuery: query: "" queryEntity: indicators results: daterange: fromdate: 0001-01-01T00:00:00Z todate: 0001-01-01T00:00:00Z period: by: "" byto: "" byfrom: "" tovalue: fromvalue: field: "" fromdatelicenseval: 0001-01-01T00:00:00Z runFromLastJobTime: false - key: AWSSecurityGroupName value: {} required: false description: Name of the AWS Security Group to update with the IPs. playbookInputQuery: - key: GCPFirewallName value: {} required: false description: Name of the GCP Firewall to update with the IPs. playbookInputQuery: - key: OktaZoneID value: {} required: false description: ID of the Okta Zone to update. Use !okta-list-zones to obtain playbookInputQuery: outputs: [] fromversion: 5.5.0 tests: - No tests supportedModules: - agentix - xsiam