Execute operations against the Strata Cloud Manager (SCM) API for Prisma Access.
The following environment variables must be set:
export SCM_CLIENT_ID="your-client-id"
export SCM_CLIENT_SECRET="your-client-secret"
export SCM_TSG_ID="your-tsg-id"
Obtain an OAuth2 Bearer token before making API calls:
TOKEN=$(curl -s -X POST "https://auth.apps.paloaltonetworks.com/am/oauth2/access_token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "client_id=${SCM_CLIENT_ID}" \
-d "client_secret=${SCM_CLIENT_SECRET}" \
-d "scope=tsg_id:${SCM_TSG_ID}" | jq -r '.access_token')
Token validity: ~15 minutes. Re-authenticate before expiry.
https://api.sase.paloaltonetworks.com
When the user specifies $ARGUMENTS, execute the corresponding operation.
curl -s -X GET "https://api.sase.paloaltonetworks.com/sse/config/v1/{resource}?folder={folder}&limit=200" \
-H "Authorization: Bearer ${TOKEN}"
Available resources:
addresses, address-groupsservices, service-groupstagssecurity-rules (add &position=pre or &position=post)nat-rulesdecryption-rulesapplication-filters, application-groupsexternal-dynamic-listscustom-url-categoriesurl-filtering-profilesanti-virus-profiles, anti-spyware-profilesvulnerability-protection-profilesfile-blocking-profiles, wildfire-anti-virus-profilesprofile-groupslog-forwarding-profilesdecryption-profileship-objects, hip-profilesFolder values: "Prisma Access", "Mobile Users", "Remote Networks", "Service Connections"
curl -s -X POST "https://api.sase.paloaltonetworks.com/sse/config/v1/{resource}?folder={folder}" \
-H "Authorization: Bearer ${TOKEN}" \
-H "Content-Type: application/json" \
-d '{...}'
curl -s -X PUT "https://api.sase.paloaltonetworks.com/sse/config/v1/{resource}/{id}" \
-H "Authorization: Bearer ${TOKEN}" \
-H "Content-Type: application/json" \
-d '{...}'
curl -s -X DELETE "https://api.sase.paloaltonetworks.com/sse/config/v1/{resource}/{id}" \
-H "Authorization: Bearer ${TOKEN}"
Validate and push the candidate configuration:
# Push candidate config
curl -s -X POST "https://api.sase.paloaltonetworks.com/sse/config/v1/config-versions/candidate:push" \
-H "Authorization: Bearer ${TOKEN}" \
-H "Content-Type: application/json" \
-d '{"folders": ["Prisma Access"]}'
curl -s -X GET "https://api.sase.paloaltonetworks.com/sse/config/v1/jobs/{job-id}" \
-H "Authorization: Bearer ${TOKEN}"
curl -s -X GET "https://api.sase.paloaltonetworks.com/sse/config/v1/config-versions?limit=10" \
-H "Authorization: Bearer ${TOKEN}"
For resources with more than 200 items, paginate with offset:
# Page 1
curl -s "...?folder=Prisma Access&limit=200&offset=0"
# Page 2
curl -s "...?folder=Prisma Access&limit=200&offset=200"
Continue until total in response matches items retrieved.
共 1 个版本