Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
- più recenti
- 2025-05-04
- 2021-06-01
- 2020-01-01
- 01-01-01-preview 2019
Definizione della risorsa Bicep
Il tipo di risorsa di valutazione può essere distribuito con operazioni destinate a:
- Tenant - Vedi comandi di deployment tenant Gruppi* di gestione - Vedi comandi* deployment gruppo di gestioneAbbonamento - Vedi comandi* deployment in abbonamentoGruppi di risorse - Vedi comandi deployment gruppo risorse
Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.
Esempi di utilizzo
Esempi di Bicep
Un esempio base di implementazione di Security Center Assessment per Centro sicurezza di Azure.
targetScope = 'subscription'
param resourceName string = 'acctest0001'
param location string = 'westus'
@secure()
@description('The administrator password for the virtual machine scale set')
param adminPassword string
resource resourceGroup 'Microsoft.Resources/resourceGroups@2020-06-01' = {
name: resourceName
location: location
}
resource assessmentMetadata 'Microsoft.Security/assessmentMetadata@2021-06-01' = {
name: 'fdaaa62c-1d42-45ab-be2f-2af194dd1700'
properties: {
assessmentType: 'CustomerManaged'
description: 'Test Description'
displayName: 'Test Display Name'
severity: 'Medium'
}
}
resource pricing 'Microsoft.Security/pricings@2023-01-01' = {
name: 'VirtualMachines'
properties: {
extensions: []
pricingTier: 'Standard'
subPlan: 'P2'
}
}
module module1 'main-rg-module.bicep' = {
name: 'deploy-rg-resources'
scope: resourceGroup
params: {
resourceName: resourceName
adminPassword: adminPassword
location: location
}
}
Un esempio base di implementazione di Security Center Assessment per Centro sicurezza di Azure.
param resourceName string = 'acctest0001'
param location string = 'westus'
@secure()
@description('The administrator password for the virtual machine scale set')
param adminPassword string
resource virtualMachineScaleSet 'Microsoft.Compute/virtualMachineScaleSets@2024-11-01' = {
name: '${resourceName}-vmss'
location: location
sku: {
capacity: 1
name: 'Standard_B1s'
}
properties: {
additionalCapabilities: {}
doNotRunExtensionsOnOverprovisionedVMs: false
orchestrationMode: 'Uniform'
overprovision: true
singlePlacementGroup: true
upgradePolicy: {
mode: 'Manual'
}
virtualMachineProfile: {
diagnosticsProfile: {
bootDiagnostics: {
enabled: false
storageUri: ''
}
}
extensionProfile: {
extensionsTimeBudget: 'PT1H30M'
}
networkProfile: {
networkInterfaceConfigurations: [
{
name: 'example'
properties: {
dnsSettings: {
dnsServers: []
}
enableAcceleratedNetworking: false
enableIPForwarding: false
ipConfigurations: [
{
name: 'internal'
properties: {
applicationGatewayBackendAddressPools: []
applicationSecurityGroups: []
loadBalancerBackendAddressPools: []
loadBalancerInboundNatPools: []
primary: true
privateIPAddressVersion: 'IPv4'
subnet: {
id: subnet.id
}
}
}
]
primary: true
}
}
]
}
osProfile: {
adminPassword: adminPassword
adminUsername: 'adminuser'
allowExtensionOperations: true
computerNamePrefix: '${resourceName}-vmss'
linuxConfiguration: {
disablePasswordAuthentication: false
provisionVMAgent: true
ssh: {
publicKeys: []
}
}
secrets: []
}
priority: 'Regular'
storageProfile: {
dataDisks: []
imageReference: {
offer: '0001-com-ubuntu-server-jammy'
publisher: 'Canonical'
sku: '22_04-lts'
version: 'latest'
}
osDisk: {
caching: 'ReadWrite'
createOption: 'FromImage'
managedDisk: {
storageAccountType: 'Standard_LRS'
}
osType: 'Linux'
writeAcceleratorEnabled: false
}
}
}
}
}
resource assessment 'Microsoft.Security/assessments@2020-01-01' = {
name: 'fdaaa62c-1d42-45ab-be2f-2af194dd1700'
scope: virtualMachineScaleSet
properties: {
additionalData: {}
resourceDetails: {
source: 'Azure'
}
status: {
cause: ''
code: 'Healthy'
description: ''
}
}
}
resource virtualNetwork 'Microsoft.Network/virtualNetworks@2024-05-01' = {
name: '${resourceName}-vnet'
location: location
properties: {
addressSpace: {
addressPrefixes: [
'10.0.0.0/16'
]
}
dhcpOptions: {
dnsServers: []
}
privateEndpointVNetPolicies: 'Disabled'
}
}
resource subnet 'Microsoft.Network/virtualNetworks/subnets@2024-05-01' = {
name: 'internal'
parent: virtualNetwork
properties: {
addressPrefix: '10.0.2.0/24'
defaultOutboundAccess: true
delegations: []
privateEndpointNetworkPolicies: 'Disabled'
privateLinkServiceNetworkPolicies: 'Enabled'
serviceEndpointPolicies: []
serviceEndpoints: []
}
}
Formato risorsa
Per creare una risorsa Microsoft.Security/assessments, aggiungi il seguente Bicep al tuo template.
resource symbolicname 'Microsoft.Security/assessments@2025-05-04' = {
scope: resourceSymbolicName or scope
name: 'string'
properties: {
additionalData: {
{customized property}: 'string'
}
metadata: {
assessmentType: 'string'
categories: [
'string'
]
description: 'string'
displayName: 'string'
implementationEffort: 'string'
partnerData: {
partnerName: 'string'
productName: 'string'
secret: 'string'
}
preview: bool
remediationDescription: 'string'
severity: 'string'
threats: [
'string'
]
userImpact: 'string'
}
partnersData: {
partnerName: 'string'
secret: 'string'
}
resourceDetails: {
source: 'string'
// For remaining properties, see CommonResourceDetails objects
}
risk: {
attackPathsReferences: [
'string'
]
isContextualRisk: bool
level: 'string'
paths: [
{
edges: [
{
id: 'string'
sourceId: 'string'
targetId: 'string'
}
]
id: 'string'
nodes: [
{
id: 'string'
nodePropertiesLabel: [
'string'
]
}
]
}
]
riskFactors: [
'string'
]
}
status: {
cause: 'string'
code: 'string'
description: 'string'
}
}
}
Oggetti CommonResourceDetails
Impostare la proprietà di origine
Per Azure, usa:
{
source: 'Azure'
}
Per OnPremiseSql, usare:
{
databaseName: 'string'
machineName: 'string'
serverName: 'string'
source: 'OnPremiseSql'
sourceComputerId: 'string'
vmuuid: 'string'
workspaceId: 'string'
}
Valori delle proprietà
Microsoft.Security/assessments
| Nome | Descrizione | Valore |
|---|---|---|
| nome | Nome della risorsa | stringa (obbligatorio) |
| proprietà | Descrive le proprietà di una valutazione. | SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse |
| scopo | Usare quando si crea una risorsa in un ambito diverso dall'ambito di distribuzione. | Impostare questa proprietà sul nome simbolico di una risorsa per applicare la risorsa di estensione . |
ValutazioneStatoOrValutazioneStatoRisposta
| Nome | Descrizione | Valore |
|---|---|---|
| causa | Codice programmatico per la causa dello stato di valutazione | corda |
| codice | Codice programmatico per lo stato della valutazione | 'Integro' 'Non applicabile' 'Non integro' (obbligatorio) |
| descrizione | Descrizione leggibile dello stato di valutazione | corda |
AzureResourceDetails
| Nome | Descrizione | Valore |
|---|---|---|
| fonte | Piattaforma in cui risiede la risorsa valutata | 'Azure' (richiesto) |
CommonResourceDetails
| Nome | Descrizione | Valore |
|---|---|---|
| fonte | Impostate su 'Azure' per il tipo AzureResourceDetails. Impostare su "OnPremiseSql" per il tipo OnPremiseSqlResourceDetails. | 'Azure' 'OnPremiseSql' (obbligatorio) |
OnPremiseSqlResourceDetails
| Nome | Descrizione | Valore |
|---|---|---|
| nomeDelDatabase | Nome del database Sql installato nel computer | stringa (obbligatorio) |
| nomemacchina | Nome del computer | stringa (obbligatorio) |
| nome server | Nome sql server installato nel computer | stringa (obbligatorio) |
| fonte | Piattaforma in cui risiede la risorsa valutata | 'OnPremiseSql' (obbligatorio) |
| sourceComputerId | ID agente oms installato nel computer | stringa (obbligatorio) |
| vmuuid | ID univoco del computer | stringa (obbligatorio) |
| ID dello spazio di lavoro | Id risorsa Azure dello spazio di lavoro a cui la macchina è collegata | stringa (obbligatorio) |
SicurezzaValutazioneMetadatiPartnerDati
| Nome | Descrizione | Valore |
|---|---|---|
| Nome del partner | Nome della società del partner | stringa (obbligatorio) |
| nome del prodotto | Nome del prodotto del partner che ha creato la valutazione | corda |
| segreto | Segreto per autenticare il partner e verificarne la creazione: solo scrittura | corda Vincoli: Valore sensibile. Passare come parametro sicuro. (obbligatorio) |
SecurityAssessmentMetadataProperties
| Nome | Descrizione | Valore |
|---|---|---|
| tipoDiValutazione | BuiltIn se la valutazione si basa sulla definizione integrata di Criteri di Azure, Custom se la valutazione si basa sulla definizione personalizzata di Criteri di Azure | 'Incorporato' 'BuiltInPolicy' 'Custom' 'Gestito dal cliente' 'Politica doganale' 'DinamicoBuiltIn' 'ManualeIntegrato' 'ManualBuiltInPolicy' 'ManualCustomPolicy' 'Unknown' 'VerifiedPartner' (obbligatorio) |
| Categorie | Matrice di stringhe contenente uno dei seguenti elementi: 'Servizi App' 'Calcolo' 'Contenitore' 'Dati' 'Identità e accesso' 'IoT' 'Rete' |
|
| descrizione | Descrizione leggibile della valutazione | corda |
| nome visualizzato | Nome visualizzato descrittivo della valutazione | stringa (obbligatorio) |
| implementazioneEffort | Il lavoro di implementazione necessario per correggere questa valutazione | 'Alto' 'Basso' 'Moderato' |
| partnerData | Descrive il partner che ha creato la valutazione | SicurezzaValutazioneMetadatiPartnerDati |
| Anteprima | True se la valutazione è in stato di versione di anteprima | Bool |
| correzioneDescription | Descrizione leggibile delle operazioni da eseguire per attenuare questo problema di sicurezza | corda |
| severità | Livello di gravità della valutazione | 'Critico' 'Alto' 'Basso' 'Medium' (obbligatorio) |
| Minacce | Matrice di stringhe contenente uno dei seguenti elementi: 'violazione dell'account' 'dataExfiltration' 'dataSpillage' 'denialOfService' 'elevazioneDellaPrivilegia' 'maliziosoInsider' 'missingCoverage' 'minacciaResistenza' |
|
| userImpact | Impatto dell'utente della valutazione | 'Alto' 'Basso' 'Moderato' |
SicurezzaValutazionePartnerData
| Nome | Descrizione | Valore |
|---|---|---|
| Nome del partner | Nome della società del partner | stringa (obbligatorio) |
| segreto | segreto per autenticare il partner : solo scrittura | corda Vincoli: Valore sensibile. Passare come parametro sicuro. (obbligatorio) |
SecurityAssessmentPropertiesBaseAdditionalData
| Nome | Descrizione | Valore |
|---|
SecurityAssessmentPropertiesBaseRisk
| Nome | Descrizione | Valore |
|---|---|---|
| attackPathsReferences | I riferimenti dei percorsi di attacco del rischio | stringa[] |
| isContextualRisk | Indica se il rischio è contestuale o statico | Bool |
| livello | Il livello di rischio | 'Critico' 'Alto' 'Basso' 'Medio' 'Nessuno' |
| Percorsi | SecurityAssessmentPropertiesBaseRiskPathsItem[] | |
| Fattori di rischio | I fattori del fattore di base che aggiunge il rischio | stringa[] |
SecurityAssessmentPropertiesBaseRiskPathsItem
| Nome | Descrizione | Valore |
|---|---|---|
| Bordi | Connessioni tra nodi | SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem[] |
| Id | Identificatore univoco per il percorso | corda |
| nodi | SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem[] |
SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem
| Nome | Descrizione | Valore |
|---|---|---|
| Id | Identificatore del bordo | stringa (obbligatorio) |
| sourceId | Identificatore del nodo di origine | stringa (obbligatorio) |
| Id obiettivo | Identificatore del nodo di destinazione | stringa (obbligatorio) |
SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem
| Nome | Descrizione | Valore |
|---|---|---|
| Id | Identificatore del nodo | corda |
| nodePropertiesLabel | Proprietà associate al nodo | stringa[] |
SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse
| Nome | Descrizione | Valore |
|---|---|---|
| dati aggiuntivi | Dati aggiuntivi relativi alla valutazione | SecurityAssessmentPropertiesBaseAdditionalData |
| metadati | Descrive le proprietà di un metadati di valutazione. | SecurityAssessmentMetadataProperties |
| partnerDati | Dati relativi all'integrazione di partner di terze parti | SicurezzaValutazionePartnerData |
| risorsaDettagli | Dettagli della risorsa valutata | CommonResourceDetails (richiesto) |
| rischio | Modello esterno del risultato del rischio | SecurityAssessmentPropertiesBaseRisk |
| stato | Risultato della valutazione | AssessmentStatusOrAssessmentStatusResponse (obbligatorio) |
Definizione di risorsa del modello di Resource Manager
Il tipo di risorsa di valutazione può essere distribuito con operazioni destinate a:
- Tenant - Vedi comandi di deployment tenant Gruppi* di gestione - Vedi comandi* di deployment gruppo digestione Abbonamento - Vedi comandi* deployment in abbonamentoGruppi di risorse - Vedi comandi deployment del gruppo risorse Per un elenco delle proprietà modificate in ciascuna versione dell'API, vedi registro modifiche.
Esempi di utilizzo
Formato risorsa
Per creare una risorsa Microsoft.Security/assessments, aggiungere il codice JSON seguente al modello.
{
"type": "Microsoft.Security/assessments",
"apiVersion": "2025-05-04",
"name": "string",
"properties": {
"additionalData": {
"{customized property}": "string"
},
"metadata": {
"assessmentType": "string",
"categories": [ "string" ],
"description": "string",
"displayName": "string",
"implementationEffort": "string",
"partnerData": {
"partnerName": "string",
"productName": "string",
"secret": "string"
},
"preview": "bool",
"remediationDescription": "string",
"severity": "string",
"threats": [ "string" ],
"userImpact": "string"
},
"partnersData": {
"partnerName": "string",
"secret": "string"
},
"resourceDetails": {
"source": "string"
// For remaining properties, see CommonResourceDetails objects
},
"risk": {
"attackPathsReferences": [ "string" ],
"isContextualRisk": "bool",
"level": "string",
"paths": [
{
"edges": [
{
"id": "string",
"sourceId": "string",
"targetId": "string"
}
],
"id": "string",
"nodes": [
{
"id": "string",
"nodePropertiesLabel": [ "string" ]
}
]
}
],
"riskFactors": [ "string" ]
},
"status": {
"cause": "string",
"code": "string",
"description": "string"
}
}
}
Oggetti CommonResourceDetails
Impostare la proprietà di origine
Per Azure, usa:
{
"source": "Azure"
}
Per OnPremiseSql, usare:
{
"databaseName": "string",
"machineName": "string",
"serverName": "string",
"source": "OnPremiseSql",
"sourceComputerId": "string",
"vmuuid": "string",
"workspaceId": "string"
}
Valori delle proprietà
Microsoft.Security/assessments
| Nome | Descrizione | Valore |
|---|---|---|
| versione dell'API | Versione dell'API | '2025-05-04' |
| nome | Nome della risorsa | stringa (obbligatorio) |
| proprietà | Descrive le proprietà di una valutazione. | SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse |
| digitare | Tipo di risorsa | 'Microsoft.Security/assessments' |
ValutazioneStatoOrValutazioneStatoRisposta
| Nome | Descrizione | Valore |
|---|---|---|
| causa | Codice programmatico per la causa dello stato di valutazione | corda |
| codice | Codice programmatico per lo stato della valutazione | 'Integro' 'Non applicabile' 'Non integro' (obbligatorio) |
| descrizione | Descrizione leggibile dello stato di valutazione | corda |
AzureResourceDetails
| Nome | Descrizione | Valore |
|---|---|---|
| fonte | Piattaforma in cui risiede la risorsa valutata | 'Azure' (richiesto) |
CommonResourceDetails
| Nome | Descrizione | Valore |
|---|---|---|
| fonte | Impostate su 'Azure' per il tipo AzureResourceDetails. Impostare su "OnPremiseSql" per il tipo OnPremiseSqlResourceDetails. | 'Azure' 'OnPremiseSql' (obbligatorio) |
OnPremiseSqlResourceDetails
| Nome | Descrizione | Valore |
|---|---|---|
| nomeDelDatabase | Nome del database Sql installato nel computer | stringa (obbligatorio) |
| nomemacchina | Nome del computer | stringa (obbligatorio) |
| nome server | Nome sql server installato nel computer | stringa (obbligatorio) |
| fonte | Piattaforma in cui risiede la risorsa valutata | 'OnPremiseSql' (obbligatorio) |
| sourceComputerId | ID agente oms installato nel computer | stringa (obbligatorio) |
| vmuuid | ID univoco del computer | stringa (obbligatorio) |
| ID dello spazio di lavoro | Id risorsa Azure dello spazio di lavoro a cui la macchina è collegata | stringa (obbligatorio) |
SicurezzaValutazioneMetadatiPartnerDati
| Nome | Descrizione | Valore |
|---|---|---|
| Nome del partner | Nome della società del partner | stringa (obbligatorio) |
| nome del prodotto | Nome del prodotto del partner che ha creato la valutazione | corda |
| segreto | Segreto per autenticare il partner e verificarne la creazione: solo scrittura | corda Vincoli: Valore sensibile. Passare come parametro sicuro. (obbligatorio) |
SecurityAssessmentMetadataProperties
| Nome | Descrizione | Valore |
|---|---|---|
| tipoDiValutazione | BuiltIn se la valutazione si basa sulla definizione integrata di Criteri di Azure, Custom se la valutazione si basa sulla definizione personalizzata di Criteri di Azure | 'Incorporato' 'BuiltInPolicy' 'Custom' 'Gestito dal cliente' 'Politica doganale' 'DinamicoBuiltIn' 'ManualeIntegrato' 'ManualBuiltInPolicy' 'ManualCustomPolicy' 'Unknown' 'VerifiedPartner' (obbligatorio) |
| Categorie | Matrice di stringhe contenente uno dei seguenti elementi: 'Servizi App' 'Calcolo' 'Contenitore' 'Dati' 'Identità e accesso' 'IoT' 'Rete' |
|
| descrizione | Descrizione leggibile della valutazione | corda |
| nome visualizzato | Nome visualizzato descrittivo della valutazione | stringa (obbligatorio) |
| implementazioneEffort | Il lavoro di implementazione necessario per correggere questa valutazione | 'Alto' 'Basso' 'Moderato' |
| partnerData | Descrive il partner che ha creato la valutazione | SicurezzaValutazioneMetadatiPartnerDati |
| Anteprima | True se la valutazione è in stato di versione di anteprima | Bool |
| correzioneDescription | Descrizione leggibile delle operazioni da eseguire per attenuare questo problema di sicurezza | corda |
| severità | Livello di gravità della valutazione | 'Critico' 'Alto' 'Basso' 'Medium' (obbligatorio) |
| Minacce | Matrice di stringhe contenente uno dei seguenti elementi: 'violazione dell'account' 'dataExfiltration' 'dataSpillage' 'denialOfService' 'elevazioneDellaPrivilegia' 'maliziosoInsider' 'missingCoverage' 'minacciaResistenza' |
|
| userImpact | Impatto dell'utente della valutazione | 'Alto' 'Basso' 'Moderato' |
SicurezzaValutazionePartnerData
| Nome | Descrizione | Valore |
|---|---|---|
| Nome del partner | Nome della società del partner | stringa (obbligatorio) |
| segreto | segreto per autenticare il partner : solo scrittura | corda Vincoli: Valore sensibile. Passare come parametro sicuro. (obbligatorio) |
SecurityAssessmentPropertiesBaseAdditionalData
| Nome | Descrizione | Valore |
|---|
SecurityAssessmentPropertiesBaseRisk
| Nome | Descrizione | Valore |
|---|---|---|
| attackPathsReferences | I riferimenti dei percorsi di attacco del rischio | stringa[] |
| isContextualRisk | Indica se il rischio è contestuale o statico | Bool |
| livello | Il livello di rischio | 'Critico' 'Alto' 'Basso' 'Medio' 'Nessuno' |
| Percorsi | SecurityAssessmentPropertiesBaseRiskPathsItem[] | |
| Fattori di rischio | I fattori del fattore di base che aggiunge il rischio | stringa[] |
SecurityAssessmentPropertiesBaseRiskPathsItem
| Nome | Descrizione | Valore |
|---|---|---|
| Bordi | Connessioni tra nodi | SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem[] |
| Id | Identificatore univoco per il percorso | corda |
| nodi | SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem[] |
SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem
| Nome | Descrizione | Valore |
|---|---|---|
| Id | Identificatore del bordo | stringa (obbligatorio) |
| sourceId | Identificatore del nodo di origine | stringa (obbligatorio) |
| Id obiettivo | Identificatore del nodo di destinazione | stringa (obbligatorio) |
SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem
| Nome | Descrizione | Valore |
|---|---|---|
| Id | Identificatore del nodo | corda |
| nodePropertiesLabel | Proprietà associate al nodo | stringa[] |
SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse
| Nome | Descrizione | Valore |
|---|---|---|
| dati aggiuntivi | Dati aggiuntivi relativi alla valutazione | SecurityAssessmentPropertiesBaseAdditionalData |
| metadati | Descrive le proprietà di un metadati di valutazione. | SecurityAssessmentMetadataProperties |
| partnerDati | Dati relativi all'integrazione di partner di terze parti | SicurezzaValutazionePartnerData |
| risorsaDettagli | Dettagli della risorsa valutata | CommonResourceDetails (richiesto) |
| rischio | Modello esterno del risultato del rischio | SecurityAssessmentPropertiesBaseRisk |
| stato | Risultato della valutazione | AssessmentStatusOrAssessmentStatusResponse (obbligatorio) |
Definizione di risorsa Terraform (provider AzAPI)
Il tipo di risorsa di valutazione può essere distribuito con operazioni destinate a:
- Inquilino* Gruppi * Abbonamento* Gruppi di risorse Per un elenco delle proprietà modificate in ogni versione dell'API, vedi il registro modifiche.
Esempi di utilizzo
Esempi di Terraform
Un esempio base di implementazione di Security Center Assessment per Centro sicurezza di Azure.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
data "azapi_client_config" "current" {}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westus"
}
variable "admin_password" {
type = string
sensitive = true
description = "The administrator password for the virtual machine scale set"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "assessmentMetadata" {
type = "Microsoft.Security/assessmentMetadata@2021-06-01"
parent_id = "/subscriptions/${data.azapi_client_config.current.subscription_id}"
name = "fdaaa62c-1d42-45ab-be2f-2af194dd1700"
body = {
properties = {
assessmentType = "CustomerManaged"
description = "Test Description"
displayName = "Test Display Name"
severity = "Medium"
}
}
}
resource "azapi_resource" "pricing" {
type = "Microsoft.Security/pricings@2023-01-01"
parent_id = "/subscriptions/${data.azapi_client_config.current.subscription_id}"
name = "VirtualMachines"
body = {
properties = {
extensions = []
pricingTier = "Standard"
subPlan = "P2"
}
}
}
resource "azapi_resource" "virtualNetwork" {
type = "Microsoft.Network/virtualNetworks@2024-05-01"
parent_id = azapi_resource.resourceGroup.id
name = "${var.resource_name}-vnet"
location = var.location
body = {
properties = {
addressSpace = {
addressPrefixes = ["10.0.0.0/16"]
}
dhcpOptions = {
dnsServers = []
}
privateEndpointVNetPolicies = "Disabled"
}
}
}
resource "azapi_resource" "subnet" {
type = "Microsoft.Network/virtualNetworks/subnets@2024-05-01"
parent_id = azapi_resource.virtualNetwork.id
name = "internal"
body = {
properties = {
addressPrefix = "10.0.2.0/24"
defaultOutboundAccess = true
delegations = []
privateEndpointNetworkPolicies = "Disabled"
privateLinkServiceNetworkPolicies = "Enabled"
serviceEndpointPolicies = []
serviceEndpoints = []
}
}
}
resource "azapi_resource" "virtualMachineScaleSet" {
type = "Microsoft.Compute/virtualMachineScaleSets@2024-11-01"
parent_id = azapi_resource.resourceGroup.id
name = "${var.resource_name}-vmss"
location = var.location
body = {
properties = {
additionalCapabilities = {}
doNotRunExtensionsOnOverprovisionedVMs = false
orchestrationMode = "Uniform"
overprovision = true
singlePlacementGroup = true
upgradePolicy = {
mode = "Manual"
}
virtualMachineProfile = {
diagnosticsProfile = {
bootDiagnostics = {
enabled = false
storageUri = ""
}
}
extensionProfile = {
extensionsTimeBudget = "PT1H30M"
}
networkProfile = {
networkInterfaceConfigurations = [{
name = "example"
properties = {
dnsSettings = {
dnsServers = []
}
enableAcceleratedNetworking = false
enableIPForwarding = false
ipConfigurations = [{
name = "internal"
properties = {
applicationGatewayBackendAddressPools = []
applicationSecurityGroups = []
loadBalancerBackendAddressPools = []
loadBalancerInboundNatPools = []
primary = true
privateIPAddressVersion = "IPv4"
subnet = {
id = azapi_resource.subnet.id
}
}
}]
primary = true
}
}]
}
osProfile = {
adminPassword = var.admin_password
adminUsername = "adminuser"
allowExtensionOperations = true
computerNamePrefix = "${var.resource_name}-vmss"
linuxConfiguration = {
disablePasswordAuthentication = false
provisionVMAgent = true
ssh = {
publicKeys = []
}
}
secrets = []
}
priority = "Regular"
storageProfile = {
dataDisks = []
imageReference = {
offer = "0001-com-ubuntu-server-jammy"
publisher = "Canonical"
sku = "22_04-lts"
version = "latest"
}
osDisk = {
caching = "ReadWrite"
createOption = "FromImage"
managedDisk = {
storageAccountType = "Standard_LRS"
}
osType = "Linux"
writeAcceleratorEnabled = false
}
}
}
}
sku = {
capacity = 1
name = "Standard_B1s"
}
}
}
resource "azapi_resource" "assessment" {
type = "Microsoft.Security/assessments@2020-01-01"
parent_id = azapi_resource.virtualMachineScaleSet.id
name = "fdaaa62c-1d42-45ab-be2f-2af194dd1700"
body = {
properties = {
additionalData = {}
resourceDetails = {
source = "Azure"
}
status = {
cause = ""
code = "Healthy"
description = ""
}
}
}
}
Formato risorsa
Per creare una risorsa Microsoft.Security/assessments, aggiungere il modello Terraform seguente.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Security/assessments@2025-05-04"
name = "string"
parent_id = "string"
body = {
properties = {
additionalData = {
{customized property} = "string"
}
metadata = {
assessmentType = "string"
categories = [
"string"
]
description = "string"
displayName = "string"
implementationEffort = "string"
partnerData = {
partnerName = "string"
productName = "string"
secret = "string"
}
preview = bool
remediationDescription = "string"
severity = "string"
threats = [
"string"
]
userImpact = "string"
}
partnersData = {
partnerName = "string"
secret = "string"
}
resourceDetails = {
source = "string"
// For remaining properties, see CommonResourceDetails objects
}
risk = {
attackPathsReferences = [
"string"
]
isContextualRisk = bool
level = "string"
paths = [
{
edges = [
{
id = "string"
sourceId = "string"
targetId = "string"
}
]
id = "string"
nodes = [
{
id = "string"
nodePropertiesLabel = [
"string"
]
}
]
}
]
riskFactors = [
"string"
]
}
status = {
cause = "string"
code = "string"
description = "string"
}
}
}
}
Oggetti CommonResourceDetails
Impostare la proprietà di origine
Per Azure, usa:
{
source = "Azure"
}
Per OnPremiseSql, usare:
{
databaseName = "string"
machineName = "string"
serverName = "string"
source = "OnPremiseSql"
sourceComputerId = "string"
vmuuid = "string"
workspaceId = "string"
}
Valori delle proprietà
Microsoft.Security/assessments
| Nome | Descrizione | Valore |
|---|---|---|
| nome | Nome della risorsa | stringa (obbligatorio) |
| parent_id | ID della risorsa a cui applicare la risorsa di estensione. | stringa (obbligatorio) |
| proprietà | Descrive le proprietà di una valutazione. | SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse |
| digitare | Tipo di risorsa | "Microsoft.Security/assessments@2025-05-04" |
ValutazioneStatoOrValutazioneStatoRisposta
| Nome | Descrizione | Valore |
|---|---|---|
| causa | Codice programmatico per la causa dello stato di valutazione | corda |
| codice | Codice programmatico per lo stato della valutazione | 'Integro' 'Non applicabile' 'Non integro' (obbligatorio) |
| descrizione | Descrizione leggibile dello stato di valutazione | corda |
AzureResourceDetails
| Nome | Descrizione | Valore |
|---|---|---|
| fonte | Piattaforma in cui risiede la risorsa valutata | 'Azure' (richiesto) |
CommonResourceDetails
| Nome | Descrizione | Valore |
|---|---|---|
| fonte | Impostate su 'Azure' per il tipo AzureResourceDetails. Impostare su "OnPremiseSql" per il tipo OnPremiseSqlResourceDetails. | 'Azure' 'OnPremiseSql' (obbligatorio) |
OnPremiseSqlResourceDetails
| Nome | Descrizione | Valore |
|---|---|---|
| nomeDelDatabase | Nome del database Sql installato nel computer | stringa (obbligatorio) |
| nomemacchina | Nome del computer | stringa (obbligatorio) |
| nome server | Nome sql server installato nel computer | stringa (obbligatorio) |
| fonte | Piattaforma in cui risiede la risorsa valutata | 'OnPremiseSql' (obbligatorio) |
| sourceComputerId | ID agente oms installato nel computer | stringa (obbligatorio) |
| vmuuid | ID univoco del computer | stringa (obbligatorio) |
| ID dello spazio di lavoro | Id risorsa Azure dello spazio di lavoro a cui la macchina è collegata | stringa (obbligatorio) |
SicurezzaValutazioneMetadatiPartnerDati
| Nome | Descrizione | Valore |
|---|---|---|
| Nome del partner | Nome della società del partner | stringa (obbligatorio) |
| nome del prodotto | Nome del prodotto del partner che ha creato la valutazione | corda |
| segreto | Segreto per autenticare il partner e verificarne la creazione: solo scrittura | corda Vincoli: Valore sensibile. Passare come parametro sicuro. (obbligatorio) |
SecurityAssessmentMetadataProperties
| Nome | Descrizione | Valore |
|---|---|---|
| tipoDiValutazione | BuiltIn se la valutazione si basa sulla definizione integrata di Criteri di Azure, Custom se la valutazione si basa sulla definizione personalizzata di Criteri di Azure | 'Incorporato' 'BuiltInPolicy' 'Custom' 'Gestito dal cliente' 'Politica doganale' 'DinamicoBuiltIn' 'ManualeIntegrato' 'ManualBuiltInPolicy' 'ManualCustomPolicy' 'Unknown' 'VerifiedPartner' (obbligatorio) |
| Categorie | Matrice di stringhe contenente uno dei seguenti elementi: 'Servizi App' 'Calcolo' 'Contenitore' 'Dati' 'Identità e accesso' 'IoT' 'Rete' |
|
| descrizione | Descrizione leggibile della valutazione | corda |
| nome visualizzato | Nome visualizzato descrittivo della valutazione | stringa (obbligatorio) |
| implementazioneEffort | Il lavoro di implementazione necessario per correggere questa valutazione | 'Alto' 'Basso' 'Moderato' |
| partnerData | Descrive il partner che ha creato la valutazione | SicurezzaValutazioneMetadatiPartnerDati |
| Anteprima | True se la valutazione è in stato di versione di anteprima | Bool |
| correzioneDescription | Descrizione leggibile delle operazioni da eseguire per attenuare questo problema di sicurezza | corda |
| severità | Livello di gravità della valutazione | 'Critico' 'Alto' 'Basso' 'Medium' (obbligatorio) |
| Minacce | Matrice di stringhe contenente uno dei seguenti elementi: 'violazione dell'account' 'dataExfiltration' 'dataSpillage' 'denialOfService' 'elevazioneDellaPrivilegia' 'maliziosoInsider' 'missingCoverage' 'minacciaResistenza' |
|
| userImpact | Impatto dell'utente della valutazione | 'Alto' 'Basso' 'Moderato' |
SicurezzaValutazionePartnerData
| Nome | Descrizione | Valore |
|---|---|---|
| Nome del partner | Nome della società del partner | stringa (obbligatorio) |
| segreto | segreto per autenticare il partner : solo scrittura | corda Vincoli: Valore sensibile. Passare come parametro sicuro. (obbligatorio) |
SecurityAssessmentPropertiesBaseAdditionalData
| Nome | Descrizione | Valore |
|---|
SecurityAssessmentPropertiesBaseRisk
| Nome | Descrizione | Valore |
|---|---|---|
| attackPathsReferences | I riferimenti dei percorsi di attacco del rischio | stringa[] |
| isContextualRisk | Indica se il rischio è contestuale o statico | Bool |
| livello | Il livello di rischio | 'Critico' 'Alto' 'Basso' 'Medio' 'Nessuno' |
| Percorsi | SecurityAssessmentPropertiesBaseRiskPathsItem[] | |
| Fattori di rischio | I fattori del fattore di base che aggiunge il rischio | stringa[] |
SecurityAssessmentPropertiesBaseRiskPathsItem
| Nome | Descrizione | Valore |
|---|---|---|
| Bordi | Connessioni tra nodi | SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem[] |
| Id | Identificatore univoco per il percorso | corda |
| nodi | SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem[] |
SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem
| Nome | Descrizione | Valore |
|---|---|---|
| Id | Identificatore del bordo | stringa (obbligatorio) |
| sourceId | Identificatore del nodo di origine | stringa (obbligatorio) |
| Id obiettivo | Identificatore del nodo di destinazione | stringa (obbligatorio) |
SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem
| Nome | Descrizione | Valore |
|---|---|---|
| Id | Identificatore del nodo | corda |
| nodePropertiesLabel | Proprietà associate al nodo | stringa[] |
SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse
| Nome | Descrizione | Valore |
|---|---|---|
| dati aggiuntivi | Dati aggiuntivi relativi alla valutazione | SecurityAssessmentPropertiesBaseAdditionalData |
| metadati | Descrive le proprietà di un metadati di valutazione. | SecurityAssessmentMetadataProperties |
| partnerDati | Dati relativi all'integrazione di partner di terze parti | SicurezzaValutazionePartnerData |
| risorsaDettagli | Dettagli della risorsa valutata | CommonResourceDetails (richiesto) |
| rischio | Modello esterno del risultato del rischio | SecurityAssessmentPropertiesBaseRisk |
| stato | Risultato della valutazione | AssessmentStatusOrAssessmentStatusResponse (obbligatorio) |