or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

tessl/pypi-azure-mgmt-security

Microsoft Azure Security Center Management Client Library for Python

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/azure-mgmt-security@7.0.x

To install, run

npx @tessl/cli install tessl/pypi-azure-mgmt-security@7.0.0

0

# Azure Security Center Management Client

1

2

A comprehensive Python library for managing Microsoft Azure Security Center resources. This package provides unified access to all Azure Security Center functionality across 69 operation groups, enabling security assessment, compliance monitoring, threat protection, and security configuration management for Azure and multi-cloud environments.

3

4

## Package Information

5

6

- **Package Name**: azure-mgmt-security

7

- **Language**: Python

8

- **Installation**: `pip install azure-mgmt-security`

9

- **Version**: 7.0.0

10

11

## Core Imports

12

13

```python

14

from azure.mgmt.security import SecurityCenter

15

```

16

17

For authentication:

18

19

```python

20

from azure.identity import DefaultAzureCredential

21

```

22

23

## Basic Usage

24

25

```python

26

from azure.identity import DefaultAzureCredential

27

from azure.mgmt.security import SecurityCenter

28

29

# Initialize with default credentials and subscription

30

credential = DefaultAzureCredential()

31

subscription_id = "your-subscription-id"

32

33

# Create the Security Center client

34

client = SecurityCenter(credential, subscription_id)

35

36

# List security alerts

37

alerts = client.alerts.list()

38

for alert in alerts:

39

print(f"Alert: {alert.display_name}, Severity: {alert.severity}")

40

41

# Get security assessments

42

scope = f"subscriptions/{subscription_id}"

43

assessments = client.assessments.list(scope)

44

for assessment in assessments:

45

print(f"Assessment: {assessment.display_name}, Status: {assessment.status.code}")

46

47

# Check secure score

48

secure_scores = client.secure_scores.list()

49

for score in secure_scores:

50

print(f"Secure Score: {score.current_score}/{score.max_score}")

51

52

# Configure pricing/defender plans

53

pricing = client.pricings.get(pricing_name="VirtualMachines")

54

print(f"Defender for VMs: {pricing.pricing_tier}")

55

```

56

57

## Architecture

58

59

The Azure Security Center Management Client uses a **multi-API architecture** that provides:

60

61

- **Unified Client Interface**: Single `SecurityCenter` class provides access to all functionality

62

- **Multi-API Version Support**: Each operation group uses its optimal API version (36 versions supported from 2015-06-01-preview through 2024-04-01)

63

- **Profile-Based Configuration**: `LATEST_PROFILE` automatically maps operation groups to recommended API versions

64

- **Azure ARM Integration**: Built on Azure Resource Manager pipeline with automatic resource provider registration

65

- **Multi-Cloud Support**: Configurable endpoints for Azure Government, Azure China, and other environments

66

67

### Client Structure

68

69

```python { .api }

70

class SecurityCenter:

71

def __init__(

72

self,

73

credential: TokenCredential,

74

subscription_id: str,

75

api_version: Optional[str] = None,

76

base_url: str = "https://management.azure.com",

77

profile: KnownProfiles = KnownProfiles.default,

78

**kwargs: Any

79

) -> None

80

81

def close(self) -> None

82

def __enter__(self) -> "SecurityCenter"

83

def __exit__(self, *exc_details) -> None

84

85

@classmethod

86

def models(cls, api_version: str = "2024-04-01") -> Any

87

```

88

89

## Capabilities

90

91

### Security Assessment and Monitoring

92

93

Core security assessment functionality including alerts, assessments, secure scores, and security recommendations. Essential for understanding and improving your security posture.

94

95

```python { .api }

96

# Alert Management (API Version: 2022-01-01)

97

client.alerts.list() -> Iterator[Alert]

98

client.alerts.get_subscription_level(asc_location: str, alert_name: str) -> Alert

99

client.alerts.update_subscription_level_state_to_dismiss(asc_location: str, alert_name: str) -> None

100

101

# Security Assessments (API Version: 2021-06-01)

102

client.assessments.list(scope: str) -> Iterator[SecurityAssessmentResponse]

103

client.assessments.get(resource_id: str, assessment_name: str, expand: Optional[str] = None) -> SecurityAssessmentResponse

104

client.assessments.create_or_update(scope: str, assessment_name: str, assessment: SecurityAssessment) -> SecurityAssessment

105

106

# Secure Score (API Version: 2020-01-01)

107

client.secure_scores.list() -> Iterator[SecureScoreItem]

108

client.secure_score_controls.list() -> Iterator[SecureScoreControlDetails]

109

```

110

111

[Security Assessment and Monitoring](./security-assessment-monitoring.md)

112

113

### Compliance and Governance

114

115

Regulatory compliance management, governance assignments, and compliance reporting across multiple standards like PCI DSS, SOC, and industry frameworks.

116

117

```python { .api }

118

# Regulatory Compliance (API Version: 2019-01-01-preview)

119

client.regulatory_compliance_standards.list() -> Iterator[RegulatoryComplianceStandard]

120

client.regulatory_compliance_controls.list(standard_name: str) -> Iterator[RegulatoryComplianceControl]

121

client.regulatory_compliance_assessments.list(standard_name: str, control_name: str) -> Iterator[RegulatoryComplianceAssessment]

122

123

# Governance (API Version: 2022-01-01-preview)

124

client.governance_rules.list() -> Iterator[GovernanceRule]

125

client.governance_assignments.list(scope: str) -> Iterator[GovernanceAssignment]

126

```

127

128

[Compliance and Governance](./compliance-governance.md)

129

130

### DevOps Security Integration

131

132

Comprehensive DevOps security for Azure DevOps, GitHub, and GitLab repositories, including security scanning, policy enforcement, and configuration management. **Note: DevOps operations require API version 2024-04-01 or 2023-09-01-preview.**

133

134

```python { .api }

135

# Create version-specific client for DevOps operations

136

from azure.mgmt.security.v2024_04_01 import SecurityCenter as SecurityCenter_v2024_04_01

137

138

devops_client = SecurityCenter_v2024_04_01(credential, subscription_id)

139

140

# DevOps Configuration

141

devops_client.dev_ops_configurations.list() -> Iterator[DevOpsConfiguration]

142

devops_client.dev_ops_operation_results.get(operation_result_id: str) -> OperationResult

143

144

# Azure DevOps Integration

145

devops_client.azure_dev_ops_orgs.list() -> Iterator[AzureDevOpsOrg]

146

devops_client.azure_dev_ops_projects.list(org_name: str) -> Iterator[AzureDevOpsProject]

147

devops_client.azure_dev_ops_repos.list(org_name: str, project_name: str) -> Iterator[AzureDevOpsRepository]

148

149

# GitHub Integration

150

devops_client.git_hub_owners.list() -> Iterator[GitHubOwner]

151

devops_client.git_hub_repos.list(owner_name: str) -> Iterator[GitHubRepository]

152

153

# GitLab Integration

154

devops_client.git_lab_groups.list() -> Iterator[GitLabGroup]

155

devops_client.git_lab_projects.list(group_name: str) -> Iterator[GitLabProject]

156

```

157

158

[DevOps Security Integration](./devops-security.md)

159

160

### Network Security

161

162

Network security hardening, just-in-time VM access policies, network topology analysis, and connection monitoring.

163

164

```python { .api }

165

# Network Hardening (API Version: 2020-01-01)

166

client.adaptive_network_hardenings.list(resource_group_name: str) -> Iterator[AdaptiveNetworkHardening]

167

client.allowed_connections.list() -> Iterator[AllowedConnectionsResource]

168

client.topology.list() -> Iterator[TopologyResource]

169

170

# Just-in-Time Access

171

client.jit_network_access_policies.list() -> Iterator[JitNetworkAccessPolicy]

172

client.jit_network_access_policies.initiate(

173

resource_group_name: str,

174

jit_network_access_policy_name: str,

175

body: JitNetworkAccessPolicyInitiateRequest

176

) -> JitNetworkAccessRequest

177

```

178

179

[Network Security](./network-security.md)

180

181

### Application and API Security

182

183

Application security controls, API discovery and protection, and adaptive application whitelisting for enhanced application protection.

184

185

```python { .api }

186

# Adaptive Application Controls (API Version: 2020-01-01)

187

client.adaptive_application_controls.list() -> Iterator[AdaptiveApplicationControlGroup]

188

client.adaptive_application_controls.get(group_name: str) -> AdaptiveApplicationControlGroup

189

190

# Application Management (API Version: 2022-07-01-preview)

191

client.applications.list() -> Iterator[Application]

192

client.application.get(application_id: str) -> Application

193

194

# API Security (API Version: 2023-11-15)

195

client.api_collections.list(subscription_id: str) -> Iterator[ApiCollection]

196

client.api_collection_onboarding.onboard(api_id: str) -> None

197

client.api_collection_offboarding.offboard(api_id: str) -> None

198

```

199

200

[Application and API Security](./application-api-security.md)

201

202

### Vulnerability Management

203

204

Comprehensive vulnerability scanning and management for servers, SQL databases, and detailed vulnerability findings with baseline rule management.

205

206

```python { .api }

207

# Server Vulnerability Assessment (API Version: 2020-01-01)

208

client.server_vulnerability_assessment.list(resource_id: str) -> Iterator[ServerVulnerabilityAssessment]

209

client.server_vulnerability_assessments_settings.list() -> Iterator[ServerVulnerabilityAssessmentsSettings]

210

211

# SQL Vulnerability Assessment (API Version: 2023-02-01-preview)

212

client.sql_vulnerability_assessment_scans.list(resource_id: str) -> Iterator[SqlVulnerabilityAssessmentScan]

213

client.sql_vulnerability_assessment_scan_results.list(resource_id: str, scan_id: str) -> Iterator[SqlVulnerabilityAssessmentScanResult]

214

client.sql_vulnerability_assessment_baseline_rules.list(resource_id: str) -> Iterator[SqlVulnerabilityAssessmentBaselineRule]

215

216

# Sub-Assessments (API Version: 2019-01-01-preview)

217

client.sub_assessments.list(scope: str) -> Iterator[SubAssessment]

218

```

219

220

[Vulnerability Management](./vulnerability-management.md)

221

222

### Configuration and Settings

223

224

Security Center configuration, contact management, workspace settings, and data export configuration for centralized security management.

225

226

```python { .api }

227

# Settings Management (API Version: 2022-05-01)

228

client.settings.list() -> Iterator[Setting]

229

client.settings.get(setting_name: str) -> Setting

230

client.settings.update(setting_name: str, setting: Setting) -> Setting

231

232

# Security Contacts (API Version: 2020-01-01-preview)

233

client.security_contacts.list() -> Iterator[SecurityContact]

234

client.security_contacts.create(security_contact_name: str, security_contact: SecurityContact) -> SecurityContact

235

236

# Auto Provisioning (API Version: 2017-08-01-preview)

237

client.auto_provisioning_settings.list() -> Iterator[AutoProvisioningSetting]

238

client.workspace_settings.list() -> Iterator[WorkspaceSetting]

239

```

240

241

[Configuration and Settings](./configuration-settings.md)

242

243

### Cloud Security Posture Management

244

245

Multi-cloud security connectors, Microsoft Defender service configuration, and cloud security posture management across Azure, AWS, and GCP.

246

247

```python { .api }

248

# Security Connectors (API Version: 2023-10-01-preview)

249

client.security_connectors.list() -> Iterator[SecurityConnector]

250

client.security_connectors.create_or_update(

251

resource_group_name: str,

252

security_connector_name: str,

253

security_connector: SecurityConnector

254

) -> SecurityConnector

255

256

# Defender Services (API Version: 2022-12-01-preview)

257

client.defender_for_storage.get(resource_id: str) -> DefenderForStorageSettings

258

client.pricings.list() -> Iterator[Pricing]

259

client.pricings.update(pricing_name: str, pricing: Pricing) -> Pricing

260

261

# Legacy Connectors (API Version: 2020-01-01-preview)

262

client.connectors.list() -> Iterator[ConnectorSetting]

263

```

264

265

[Cloud Security Posture Management](./cloud-security-posture.md)

266

267

## Core Types

268

269

```python { .api }

270

# Core Imports

271

from azure.mgmt.security import SecurityCenter

272

from azure.core.credentials import TokenCredential

273

from azure.profiles import KnownProfiles

274

from typing import Optional

275

276

# Main Client

277

class SecurityCenter:

278

credential: TokenCredential

279

subscription_id: str

280

api_version: Optional[str]

281

base_url: str

282

283

# Common Response Types

284

class Alert:

285

id: Optional[str]

286

name: Optional[str]

287

display_name: Optional[str]

288

severity: Optional[str] # High, Medium, Low, Informational

289

status: Optional[str] # Active, Resolved, Dismissed

290

291

class SecurityAssessment:

292

id: Optional[str]

293

name: Optional[str]

294

display_name: Optional[str]

295

status: Optional[AssessmentStatus]

296

297

class AssessmentStatus:

298

code: Optional[str] # Healthy, Unhealthy, NotApplicable

299

cause: Optional[str]

300

description: Optional[str]

301

302

class SecureScoreItem:

303

id: Optional[str]

304

name: Optional[str]

305

current_score: Optional[float]

306

max_score: Optional[int]

307

percentage: Optional[float]

308

309

class SecurityAssessmentResponse:

310

id: Optional[str]

311

name: Optional[str]

312

display_name: Optional[str]

313

status: Optional[AssessmentStatus]

314

```