Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
- más reciente
- 2025-05-04
- 2021-06-01
- 2020-01-01
- 2019-01-01-vista previa
Definición de recurso Bicep
El tipo de recurso assessments se puede implementar con operaciones destinadas a:
- Inquilino - Ver comandos de despliegue de tenant Grupos* de gestión - Ver comandos de despliegue de grupo de* - Ver comandos de despliegue de suscripciónGrupos de recursos - Ver *
Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.
Ejemplos de uso
Ejemplos de Bicep
Un ejemplo básico de cómo desplegar Security Center Assessment para Azure Security Center.
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 ejemplo básico de cómo desplegar Security Center Assessment para Azure Security Center.
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 de recurso
Para crear un recurso Microsoft.Security/assessments, añade el siguiente Bicep a tu plantilla.
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'
}
}
}
Objetos CommonResourceDetails
Establezca la propiedad de origen
Para Azure, utiliza:
{
source: 'Azure'
}
Para onPremiseSql, use:
{
databaseName: 'string'
machineName: 'string'
serverName: 'string'
source: 'OnPremiseSql'
sourceComputerId: 'string'
vmuuid: 'string'
workspaceId: 'string'
}
Valores de propiedad
Microsoft.Security/assessments
| Nombre | Descripción | Valor |
|---|---|---|
| nombre | El nombre del recurso | string (obligatorio) |
| Propiedades | Describe las propiedades de una evaluación. | SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse |
| alcance | Use al crear un recurso en un ámbito diferente del ámbito de implementación. | Establezca esta propiedad en el nombre simbólico de un recurso para aplicar el recurso de extensión . |
AssessmentStatusOrAssessmentStatusResponse
| Nombre | Descripción | Valor |
|---|---|---|
| causa | Código mediante programación para la causa del estado de evaluación | cuerda |
| código | Código mediante programación para el estado de la evaluación | "Correcto" 'No aplicable' "Incorrecto" (obligatorio) |
| descripción | Descripción legible del estado de evaluación | cuerda |
AzureResourceDetails
| Nombre | Descripción | Valor |
|---|---|---|
| fuente | Plataforma donde reside el recurso evaluado | 'Azure' (obligatorio) |
CommonResourceDetails
| Nombre | Descripción | Valor |
|---|---|---|
| fuente | Ajusta a 'Azure' para el tipo AzureResourceDetails. Establezca en "OnPremiseSql" para el tipo OnPremiseSqlResourceDetails. | 'Azure' 'OnPremiseSql' (obligatorio) |
OnPremiseSqlResourceDetails
| Nombre | Descripción | Valor |
|---|---|---|
| nombreDeBaseDeDatos | El nombre de la base de datos SQL instalado en el equipo | string (obligatorio) |
| Nombre de la máquina | Nombre de la máquina | string (obligatorio) |
| nombreDelServidor | Nombre del servidor SQL instalado en el equipo | string (obligatorio) |
| fuente | Plataforma donde reside el recurso evaluado | 'OnPremiseSql' (obligatorio) |
| sourceComputerId | Identificador del agente oms instalado en la máquina | string (obligatorio) |
| vmuuid | Identificador único de la máquina | string (obligatorio) |
| Id del espacio de trabajo | Id de recurso de Azure del espacio de trabajo al que está conectado la máquina | string (obligatorio) |
SecurityAssessmentMetadataPartnerData
| Nombre | Descripción | Valor |
|---|---|---|
| partnerName | Nombre de la empresa del asociado | string (obligatorio) |
| Nombre del producto | Nombre del producto del asociado que creó la evaluación | cuerda |
| secreto | Secreto para autenticar al asociado y comprobar que creó la evaluación: solo escritura | cuerda Restricciones: Valor confidencial. Pase como parámetro seguro. (obligatorio) |
SecurityAssessmentMetadataProperties
| Nombre | Descripción | Valor |
|---|---|---|
| tipoDeEvaluación | BuiltIn si la evaluación se basa en la definición integrada de Azure Policy, Custom si la evaluación se basa en la definición personalizada de Azure Policy | 'Construido' 'BuiltInPolicy' 'Custom' "CustomerManaged" 'Póliza personalizada' 'DynamicBuiltIn' 'ManualBuiltIn' 'ManualBuiltInPolicy' 'ManualCustomPolicy' 'Unknown' 'VerifiedPartner' (obligatorio) |
| Categorías | Matriz de cadenas que contiene cualquiera de: 'Servicios de aplicaciones' 'Cómputo' 'Contenedor' 'Datos' 'IdentidadYAcceso' "IoT" "Redes" |
|
| descripción | Descripción legible humana de la evaluación | cuerda |
| Nombre para mostrar | Nombre para mostrar descriptivo de la evaluación | string (obligatorio) |
| Esfuerzo de implementación | El esfuerzo de implementación necesario para corregir esta evaluación | "Alto" "Bajo" "Moderado" |
| partnerData | Describe el asociado que creó la evaluación. | SecurityAssessmentMetadataPartnerData |
| Vista previa | True si esta evaluación está en estado de versión preliminar | Bool |
| remediationDescription | Descripción legible del usuario de lo que debe hacer para mitigar este problema de seguridad | cuerda |
| severidad | Nivel de gravedad de la evaluación | "Crítico" "Alto" "Bajo" 'Medium' (obligatorio) |
| Amenazas | Matriz de cadenas que contiene cualquiera de: 'Brecha de cuenta' 'Exfiltración de datos' 'Derrame de datos' 'Denegación de servicio' 'elevationOfPrivilege' 'malintencionadoInsider' 'MissingCoverage' 'Resistencia a la amenaza' |
|
| userImpact | Impacto del usuario de la evaluación | "Alto" "Bajo" "Moderado" |
SecurityAssessmentPartnerData
| Nombre | Descripción | Valor |
|---|---|---|
| partnerName | Nombre de la empresa del asociado | string (obligatorio) |
| secreto | secreto para autenticar al asociado: solo escritura | cuerda Restricciones: Valor confidencial. Pase como parámetro seguro. (obligatorio) |
SecurityAssessmentPropertiesBaseAdditionalData
| Nombre | Descripción | Valor |
|---|
SecurityAssessmentPropertiesBaseRisk
| Nombre | Descripción | Valor |
|---|---|---|
| attackPathsReferences | Las rutas de ataque referencias del riesgo | cadena[] |
| isContextualRisk | Indica si el riesgo es contextual o estático | Bool |
| nivel | El nivel de riesgo | "Crítico" "Alto" "Bajo" "Medio" 'None' |
| Caminos | SecurityAssessmentPropertiesBaseRiskPathsItem[] | |
| Factores de riesgo | Los factores del factor base de adición de riesgo | cadena[] |
SecurityAssessmentPropertiesBaseRiskPathsItem
| Nombre | Descripción | Valor |
|---|---|---|
| Bordes | Conexiones entre nodos | SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem[] |
| identificación | Identificador único de la ruta | cuerda |
| Nodos | SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem[] |
SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem
| Nombre | Descripción | Valor |
|---|---|---|
| identificación | Identificador de borde | string (obligatorio) |
| Id. de origen | Identificador de nodo de origen | string (obligatorio) |
| targetId | Identificador de nodo de destino | string (obligatorio) |
SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem
| Nombre | Descripción | Valor |
|---|---|---|
| identificación | Identificador de nodo | cuerda |
| nodePropertiesLabel | Propiedades asociadas al nodo | cadena[] |
SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse
| Nombre | Descripción | Valor |
|---|---|---|
| additionalData | Datos adicionales sobre la evaluación | SecurityAssessmentPropertiesBaseAdditionalData |
| metadatos | Describe las propiedades de los metadatos de una evaluación. | SecurityAssessmentMetadataProperties |
| partnersData | Datos relacionados con la integración de asociados de terceros | SecurityAssessmentPartnerData |
| resourceDetails | Detalles del recurso que se evaluó | CommonResourceDetails (obligatorio) |
| riesgo | Modelo externo de resultado de riesgo | SecurityAssessmentPropertiesBaseRisk |
| estado | Resultado de la evaluación | AssessmentStatusOrAssessmentStatusResponse (obligatorio) |
Definición de recursos de plantilla de ARM
El tipo de recurso assessments se puede implementar con operaciones destinadas a:
- Inquilino - Ver comandos de despliegue de inquilino Grupos* de gestión - Ver comandos de despliegue del grupo de gestión* - Ver comandos de despliegue de suscripción* - Véase comandos de despliegue de grupos de recursos Para una lista de propiedades modificadas en cada versión de API, véase registro de cambios.
Ejemplos de uso
Formato de recurso
Para crear un recurso Microsoft.Security/assessments, agregue el siguiente JSON a la plantilla.
{
"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"
}
}
}
Objetos CommonResourceDetails
Establezca la propiedad de origen
Para Azure, utiliza:
{
"source": "Azure"
}
Para onPremiseSql, use:
{
"databaseName": "string",
"machineName": "string",
"serverName": "string",
"source": "OnPremiseSql",
"sourceComputerId": "string",
"vmuuid": "string",
"workspaceId": "string"
}
Valores de propiedad
Microsoft.Security/assessments
| Nombre | Descripción | Valor |
|---|---|---|
| apiVersion | La versión de api | '2025-05-04' |
| nombre | El nombre del recurso | string (obligatorio) |
| Propiedades | Describe las propiedades de una evaluación. | SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse |
| tipo | El tipo de recurso | "Microsoft.Security/assessments" |
AssessmentStatusOrAssessmentStatusResponse
| Nombre | Descripción | Valor |
|---|---|---|
| causa | Código mediante programación para la causa del estado de evaluación | cuerda |
| código | Código mediante programación para el estado de la evaluación | "Correcto" 'No aplicable' "Incorrecto" (obligatorio) |
| descripción | Descripción legible del estado de evaluación | cuerda |
AzureResourceDetails
| Nombre | Descripción | Valor |
|---|---|---|
| fuente | Plataforma donde reside el recurso evaluado | 'Azure' (obligatorio) |
CommonResourceDetails
| Nombre | Descripción | Valor |
|---|---|---|
| fuente | Ajusta a 'Azure' para el tipo AzureResourceDetails. Establezca en "OnPremiseSql" para el tipo OnPremiseSqlResourceDetails. | 'Azure' 'OnPremiseSql' (obligatorio) |
OnPremiseSqlResourceDetails
| Nombre | Descripción | Valor |
|---|---|---|
| nombreDeBaseDeDatos | El nombre de la base de datos SQL instalado en el equipo | string (obligatorio) |
| Nombre de la máquina | Nombre de la máquina | string (obligatorio) |
| nombreDelServidor | Nombre del servidor SQL instalado en el equipo | string (obligatorio) |
| fuente | Plataforma donde reside el recurso evaluado | 'OnPremiseSql' (obligatorio) |
| sourceComputerId | Identificador del agente oms instalado en la máquina | string (obligatorio) |
| vmuuid | Identificador único de la máquina | string (obligatorio) |
| Id del espacio de trabajo | Id de recurso de Azure del espacio de trabajo al que está conectado la máquina | string (obligatorio) |
SecurityAssessmentMetadataPartnerData
| Nombre | Descripción | Valor |
|---|---|---|
| partnerName | Nombre de la empresa del asociado | string (obligatorio) |
| Nombre del producto | Nombre del producto del asociado que creó la evaluación | cuerda |
| secreto | Secreto para autenticar al asociado y comprobar que creó la evaluación: solo escritura | cuerda Restricciones: Valor confidencial. Pase como parámetro seguro. (obligatorio) |
SecurityAssessmentMetadataProperties
| Nombre | Descripción | Valor |
|---|---|---|
| tipoDeEvaluación | BuiltIn si la evaluación se basa en la definición integrada de Azure Policy, Custom si la evaluación se basa en la definición personalizada de Azure Policy | 'Construido' 'BuiltInPolicy' 'Custom' "CustomerManaged" 'Póliza personalizada' 'DynamicBuiltIn' 'ManualBuiltIn' 'ManualBuiltInPolicy' 'ManualCustomPolicy' 'Unknown' 'VerifiedPartner' (obligatorio) |
| Categorías | Matriz de cadenas que contiene cualquiera de: 'Servicios de aplicaciones' 'Cómputo' 'Contenedor' 'Datos' 'IdentidadYAcceso' "IoT" "Redes" |
|
| descripción | Descripción legible humana de la evaluación | cuerda |
| Nombre para mostrar | Nombre para mostrar descriptivo de la evaluación | string (obligatorio) |
| Esfuerzo de implementación | El esfuerzo de implementación necesario para corregir esta evaluación | "Alto" "Bajo" "Moderado" |
| partnerData | Describe el asociado que creó la evaluación. | SecurityAssessmentMetadataPartnerData |
| Vista previa | True si esta evaluación está en estado de versión preliminar | Bool |
| remediationDescription | Descripción legible del usuario de lo que debe hacer para mitigar este problema de seguridad | cuerda |
| severidad | Nivel de gravedad de la evaluación | "Crítico" "Alto" "Bajo" 'Medium' (obligatorio) |
| Amenazas | Matriz de cadenas que contiene cualquiera de: 'Brecha de cuenta' 'Exfiltración de datos' 'Derrame de datos' 'Denegación de servicio' 'elevationOfPrivilege' 'malintencionadoInsider' 'MissingCoverage' 'Resistencia a la amenaza' |
|
| userImpact | Impacto del usuario de la evaluación | "Alto" "Bajo" "Moderado" |
SecurityAssessmentPartnerData
| Nombre | Descripción | Valor |
|---|---|---|
| partnerName | Nombre de la empresa del asociado | string (obligatorio) |
| secreto | secreto para autenticar al asociado: solo escritura | cuerda Restricciones: Valor confidencial. Pase como parámetro seguro. (obligatorio) |
SecurityAssessmentPropertiesBaseAdditionalData
| Nombre | Descripción | Valor |
|---|
SecurityAssessmentPropertiesBaseRisk
| Nombre | Descripción | Valor |
|---|---|---|
| attackPathsReferences | Las rutas de ataque referencias del riesgo | cadena[] |
| isContextualRisk | Indica si el riesgo es contextual o estático | Bool |
| nivel | El nivel de riesgo | "Crítico" "Alto" "Bajo" "Medio" 'None' |
| Caminos | SecurityAssessmentPropertiesBaseRiskPathsItem[] | |
| Factores de riesgo | Los factores del factor base de adición de riesgo | cadena[] |
SecurityAssessmentPropertiesBaseRiskPathsItem
| Nombre | Descripción | Valor |
|---|---|---|
| Bordes | Conexiones entre nodos | SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem[] |
| identificación | Identificador único de la ruta | cuerda |
| Nodos | SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem[] |
SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem
| Nombre | Descripción | Valor |
|---|---|---|
| identificación | Identificador de borde | string (obligatorio) |
| Id. de origen | Identificador de nodo de origen | string (obligatorio) |
| targetId | Identificador de nodo de destino | string (obligatorio) |
SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem
| Nombre | Descripción | Valor |
|---|---|---|
| identificación | Identificador de nodo | cuerda |
| nodePropertiesLabel | Propiedades asociadas al nodo | cadena[] |
SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse
| Nombre | Descripción | Valor |
|---|---|---|
| additionalData | Datos adicionales sobre la evaluación | SecurityAssessmentPropertiesBaseAdditionalData |
| metadatos | Describe las propiedades de los metadatos de una evaluación. | SecurityAssessmentMetadataProperties |
| partnersData | Datos relacionados con la integración de asociados de terceros | SecurityAssessmentPartnerData |
| resourceDetails | Detalles del recurso que se evaluó | CommonResourceDetails (obligatorio) |
| riesgo | Modelo externo de resultado de riesgo | SecurityAssessmentPropertiesBaseRisk |
| estado | Resultado de la evaluación | AssessmentStatusOrAssessmentStatusResponse (obligatorio) |
Definición de recursos de Terraform (proveedor AzAPI)
El tipo de recurso assessments se puede implementar con operaciones destinadas a:
- Inquilino* Grupos directivos* Suscripción* Grupos de recursos Para una lista de propiedades modificadas en cada versión de la API, consulte registro de cambios.
Ejemplos de uso
Ejemplos de Terraform
Un ejemplo básico de cómo desplegar Security Center Assessment para Azure Security Center.
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 de recurso
Para crear un recurso Microsoft.Security/assessments, agregue el siguiente Terraform a la plantilla.
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"
}
}
}
}
Objetos CommonResourceDetails
Establezca la propiedad de origen
Para Azure, utiliza:
{
source = "Azure"
}
Para onPremiseSql, use:
{
databaseName = "string"
machineName = "string"
serverName = "string"
source = "OnPremiseSql"
sourceComputerId = "string"
vmuuid = "string"
workspaceId = "string"
}
Valores de propiedad
Microsoft.Security/assessments
| Nombre | Descripción | Valor |
|---|---|---|
| nombre | El nombre del recurso | string (obligatorio) |
| parent_id | Identificador del recurso al que se va a aplicar este recurso de extensión. | string (obligatorio) |
| Propiedades | Describe las propiedades de una evaluación. | SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse |
| tipo | El tipo de recurso | "Microsoft.Security/assessments@2025-05-04" |
AssessmentStatusOrAssessmentStatusResponse
| Nombre | Descripción | Valor |
|---|---|---|
| causa | Código mediante programación para la causa del estado de evaluación | cuerda |
| código | Código mediante programación para el estado de la evaluación | "Correcto" 'No aplicable' "Incorrecto" (obligatorio) |
| descripción | Descripción legible del estado de evaluación | cuerda |
AzureResourceDetails
| Nombre | Descripción | Valor |
|---|---|---|
| fuente | Plataforma donde reside el recurso evaluado | 'Azure' (obligatorio) |
CommonResourceDetails
| Nombre | Descripción | Valor |
|---|---|---|
| fuente | Ajusta a 'Azure' para el tipo AzureResourceDetails. Establezca en "OnPremiseSql" para el tipo OnPremiseSqlResourceDetails. | 'Azure' 'OnPremiseSql' (obligatorio) |
OnPremiseSqlResourceDetails
| Nombre | Descripción | Valor |
|---|---|---|
| nombreDeBaseDeDatos | El nombre de la base de datos SQL instalado en el equipo | string (obligatorio) |
| Nombre de la máquina | Nombre de la máquina | string (obligatorio) |
| nombreDelServidor | Nombre del servidor SQL instalado en el equipo | string (obligatorio) |
| fuente | Plataforma donde reside el recurso evaluado | 'OnPremiseSql' (obligatorio) |
| sourceComputerId | Identificador del agente oms instalado en la máquina | string (obligatorio) |
| vmuuid | Identificador único de la máquina | string (obligatorio) |
| Id del espacio de trabajo | Id de recurso de Azure del espacio de trabajo al que está conectado la máquina | string (obligatorio) |
SecurityAssessmentMetadataPartnerData
| Nombre | Descripción | Valor |
|---|---|---|
| partnerName | Nombre de la empresa del asociado | string (obligatorio) |
| Nombre del producto | Nombre del producto del asociado que creó la evaluación | cuerda |
| secreto | Secreto para autenticar al asociado y comprobar que creó la evaluación: solo escritura | cuerda Restricciones: Valor confidencial. Pase como parámetro seguro. (obligatorio) |
SecurityAssessmentMetadataProperties
| Nombre | Descripción | Valor |
|---|---|---|
| tipoDeEvaluación | BuiltIn si la evaluación se basa en la definición integrada de Azure Policy, Custom si la evaluación se basa en la definición personalizada de Azure Policy | 'Construido' 'BuiltInPolicy' 'Custom' "CustomerManaged" 'Póliza personalizada' 'DynamicBuiltIn' 'ManualBuiltIn' 'ManualBuiltInPolicy' 'ManualCustomPolicy' 'Unknown' 'VerifiedPartner' (obligatorio) |
| Categorías | Matriz de cadenas que contiene cualquiera de: 'Servicios de aplicaciones' 'Cómputo' 'Contenedor' 'Datos' 'IdentidadYAcceso' "IoT" "Redes" |
|
| descripción | Descripción legible humana de la evaluación | cuerda |
| Nombre para mostrar | Nombre para mostrar descriptivo de la evaluación | string (obligatorio) |
| Esfuerzo de implementación | El esfuerzo de implementación necesario para corregir esta evaluación | "Alto" "Bajo" "Moderado" |
| partnerData | Describe el asociado que creó la evaluación. | SecurityAssessmentMetadataPartnerData |
| Vista previa | True si esta evaluación está en estado de versión preliminar | Bool |
| remediationDescription | Descripción legible del usuario de lo que debe hacer para mitigar este problema de seguridad | cuerda |
| severidad | Nivel de gravedad de la evaluación | "Crítico" "Alto" "Bajo" 'Medium' (obligatorio) |
| Amenazas | Matriz de cadenas que contiene cualquiera de: 'Brecha de cuenta' 'Exfiltración de datos' 'Derrame de datos' 'Denegación de servicio' 'elevationOfPrivilege' 'malintencionadoInsider' 'MissingCoverage' 'Resistencia a la amenaza' |
|
| userImpact | Impacto del usuario de la evaluación | "Alto" "Bajo" "Moderado" |
SecurityAssessmentPartnerData
| Nombre | Descripción | Valor |
|---|---|---|
| partnerName | Nombre de la empresa del asociado | string (obligatorio) |
| secreto | secreto para autenticar al asociado: solo escritura | cuerda Restricciones: Valor confidencial. Pase como parámetro seguro. (obligatorio) |
SecurityAssessmentPropertiesBaseAdditionalData
| Nombre | Descripción | Valor |
|---|
SecurityAssessmentPropertiesBaseRisk
| Nombre | Descripción | Valor |
|---|---|---|
| attackPathsReferences | Las rutas de ataque referencias del riesgo | cadena[] |
| isContextualRisk | Indica si el riesgo es contextual o estático | Bool |
| nivel | El nivel de riesgo | "Crítico" "Alto" "Bajo" "Medio" 'None' |
| Caminos | SecurityAssessmentPropertiesBaseRiskPathsItem[] | |
| Factores de riesgo | Los factores del factor base de adición de riesgo | cadena[] |
SecurityAssessmentPropertiesBaseRiskPathsItem
| Nombre | Descripción | Valor |
|---|---|---|
| Bordes | Conexiones entre nodos | SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem[] |
| identificación | Identificador único de la ruta | cuerda |
| Nodos | SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem[] |
SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem
| Nombre | Descripción | Valor |
|---|---|---|
| identificación | Identificador de borde | string (obligatorio) |
| Id. de origen | Identificador de nodo de origen | string (obligatorio) |
| targetId | Identificador de nodo de destino | string (obligatorio) |
SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem
| Nombre | Descripción | Valor |
|---|---|---|
| identificación | Identificador de nodo | cuerda |
| nodePropertiesLabel | Propiedades asociadas al nodo | cadena[] |
SecurityAssessmentPropertiesOrSecurityAssessmentPropertiesResponse
| Nombre | Descripción | Valor |
|---|---|---|
| additionalData | Datos adicionales sobre la evaluación | SecurityAssessmentPropertiesBaseAdditionalData |
| metadatos | Describe las propiedades de los metadatos de una evaluación. | SecurityAssessmentMetadataProperties |
| partnersData | Datos relacionados con la integración de asociados de terceros | SecurityAssessmentPartnerData |
| resourceDetails | Detalles del recurso que se evaluó | CommonResourceDetails (obligatorio) |
| riesgo | Modelo externo de resultado de riesgo | SecurityAssessmentPropertiesBaseRisk |
| estado | Resultado de la evaluación | AssessmentStatusOrAssessmentStatusResponse (obligatorio) |