Skip to main content

SDK Security Objects

This document lists all security-related configuration object classes provided by the Python SDK (scm.config.security) and the standard methods you can use to perform Create, Read, Update and Delete (CRUD) operations.

All classes share a consistent interface; once you’ve used one, you can use the rest.

Tip Remember to call commit() after create / update / delete, and use get_job_status() / list_jobs() to monitor the resulting job.

Quick-reference table

ObjectSDK ClassDescriptionCreateReadUpdateDeleteCommit
Anti-Spyware Profilescm.config.security.AntiSpywareProfileManage Anti-Spyware profilescreate()get(), fetch(), list()update()delete()commit()
DNS Security Profilescm.config.security.DNSSecurityProfileManage DNS Security profilescreate()get(), fetch(), list()update()delete()commit()
Decryption Profilescm.config.security.DecryptionProfileManage Decryption profilescreate()get(), fetch(), list()update()delete()commit()
Security Rulescm.config.security.SecurityRuleManage Security policy rulescreate()get(), fetch(), list()update(), move()delete()commit()
URL Categoriesscm.config.security.URLCategoriesManage custom URL categoriescreate()get(), fetch(), list()update()delete()commit()
Vulnerability Protection Profilescm.config.security.VulnerabilityProtectionProfileManage Vulnerability Protection profilescreate()get(), fetch(), list()update()delete()commit()
WildFire Antivirus Profilescm.config.security.WildfireAntivirusProfileManage WildFire Antivirus profilescreate()get(), fetch(), list()update()delete()commit()

Usage pattern

from scm.config.security import SecurityRule # choose the class you need

# Create a rule
resp = SecurityRule.create(name="allow-web", source_zones=["Trust"], destination_zones=["Untrust"], applications=["web-browsing"], action="allow")
SecurityRule.commit()

# Read
rule = SecurityRule.get(resp.id)
rules = SecurityRule.list(limit=100)

# Update
SecurityRule.update(resp.id, description="Allow outbound web traffic")
SecurityRule.commit()

# Delete
SecurityRule.delete(resp.id)
SecurityRule.commit()

Monitoring jobs

status = SecurityRule.get_job_status(job_id)
all_jobs = SecurityRule.list_jobs(limit=10)

Object details

Anti-Spyware Profile (AntiSpywareProfile)

Detects and blocks spyware / malicious traffic patterns.

DNS Security Profile (DNSSecurityProfile)

Adds domain intelligence to DNS queries to block malicious domains.

Decryption Profile (DecryptionProfile)

Defines certificate checks and security settings for SSL/TLS decryption.

Security Rule (SecurityRule)

Layer-3/4/7 policy rules controlling traffic.

URL Categories (URLCategories)

Custom URL category lists used in policy.

Vulnerability Protection Profile (VulnerabilityProtectionProfile)

Protects against exploits and protocol deviations.

WildFire Antivirus Profile (WildfireAntivirusProfile)

Cloud-based malware detection with WildFire signatures.


For every class above you will find corresponding models in scm.models.security.* (e.g. SecurityRuleCreateModel, AntiSpywareProfileModel, …) which provide type-safe validation for inputs and SDK responses.


Last generated: 2025-06-11