Pricings - Update
Actualiza una configuración de precios de Microsoft Defender for Cloud proporcionada en el ámbito. Los ámbitos válidos son: id. de suscripción o identificador de recurso específico (los recursos admitidos son: "VirtualMachines, VMSS y ARC Machines" y solo para plan='VirtualMachines' y subPlan='P1').
PUT https://management.azure.com/{scopeId}/providers/Microsoft.Security/pricings/{pricingName}?api-version=2024-01-01
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
pricing
|
path | True |
string |
nombre de la configuración de precios |
scope
|
path | True |
string |
Identificador de ámbito de los precios. Los ámbitos válidos son: suscripción (formato: "subscriptions/{subscriptionId}") o un recurso específico (formato: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}): los recursos admitidos son (VirtualMachines) |
api-version
|
query | True |
string |
Versión de API para la operación |
Cuerpo de la solicitud
Nombre | Requerido | Tipo | Description |
---|---|---|---|
properties.pricingTier | True |
Indica si el plan de Defender está habilitado en el ámbito seleccionado. Microsoft Defender for Cloud se proporciona en dos planes de tarifa: gratis y estándar. El nivel estándar ofrece funcionalidades de seguridad avanzadas, mientras que el nivel gratis ofrece características de seguridad básicas. |
|
properties.enforce |
Si se establece en "False", permite que los descendientes de este ámbito invaliden la configuración de precios establecida en este ámbito (permite establecer inherited="False"). Si se establece en "True", impide invalidaciones y fuerza esta configuración de precios en todos los descendientes de este ámbito. Este campo solo está disponible para los precios de nivel de suscripción. |
||
properties.extensions |
Opcional. Lista de extensiones que se ofrecen en un plan. |
||
properties.subPlan |
string |
El sub plan seleccionado para una configuración de precios estándar, cuando hay más de un sub plan disponible. Cada sub plan habilita un conjunto de características de seguridad. Cuando no se especifica, se aplica el plan completo. En el caso del plan VirtualMachines, los sub planes disponibles son "P1" & "P2", donde solo se admite el sub plan de nivel de recurso "P1". |
Respuestas
Nombre | Tipo | Description |
---|---|---|
200 OK |
Se actualizó correctamente |
|
201 Created |
Se ha creado correctamente. |
|
Other Status Codes |
Respuesta de error que describe por qué se produjo un error en la operación. |
Seguridad
azure_auth
Flujo de OAuth2 de Azure Active Directory
Tipo:
oauth2
Flujo:
implicit
Dirección URL de autorización:
https://login.microsoftonline.com/common/oauth2/authorize
Ámbitos
Nombre | Description |
---|---|
user_impersonation | suplantar la cuenta de usuario |
Ejemplos
Update pricing on resource (example for VirtualMachines plan)
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1/providers/Microsoft.Security/pricings/virtualMachines?api-version=2024-01-01
{
"properties": {
"pricingTier": "Standard",
"subPlan": "P1"
}
}
Respuesta de muestra
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1/providers/Microsoft.Security/pricings/virtualMachines",
"name": "virtualMachines",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"subPlan": "P1",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"inherited": "False",
"inheritedFrom": null,
"extensions": [
{
"name": "MdeDesignatedSubscription",
"isEnabled": "False"
},
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"additionalExtensionProperties": {
"ExclusionTags": "[{\"Key\":\"TestKey1\",\"Value\":\"TestValue1\"},{\"Key\":\"TestKey2\",\"Value\":\"TestValue2\"}]"
}
}
]
}
}
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1/providers/Microsoft.Security/pricings/virtualMachines",
"name": "virtualMachines",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"subPlan": "P1",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"inherited": "False",
"inheritedFrom": null,
"extensions": [
{
"name": "MdeDesignatedSubscription",
"isEnabled": "False"
},
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"additionalExtensionProperties": {
"ExclusionTags": "[{'Key':'TestKey1','Value':'TestValue1'},{'Key':'TestKey2','Value':'TestValue2'}]"
}
}
]
}
}
Update pricing on subscription (example for CloudPosture plan)
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/CloudPosture?api-version=2024-01-01
{
"properties": {
"pricingTier": "Standard"
}
}
Respuesta de muestra
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/CloudPosture",
"name": "CloudPosture",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"enforce": "False",
"resourcesCoverageStatus": "FullyCovered",
"extensions": [
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "AgentlessDiscoveryForKubernetes",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "SensitiveDataDiscovery",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "ContainerRegistriesVulnerabilityAssessments",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "EntraPermissionsManagement",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
}
]
}
}
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/CloudPosture",
"name": "CloudPosture",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"enforce": "False",
"resourcesCoverageStatus": "FullyCovered",
"extensions": [
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "AgentlessDiscoveryForKubernetes",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "SensitiveDataDiscovery",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "ContainerRegistriesVulnerabilityAssessments",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "EntraPermissionsManagement",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
}
]
}
}
Update pricing on subscription (example for CloudPosture plan) - partial success
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/CloudPosture?api-version=2024-01-01
{
"properties": {
"pricingTier": "Standard"
}
}
Respuesta de muestra
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/CloudPosture",
"name": "CloudPosture",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"enforce": "False",
"resourcesCoverageStatus": "FullyCovered",
"extensions": [
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"operationStatus": {
"code": "Failed",
"message": "Failed find dedicated first party application client ID for extension"
}
},
{
"name": "AgentlessDiscoveryForKubernetes",
"isEnabled": "True",
"operationStatus": {
"code": "Failed",
"message": "Failed assigning roles {d5a2ae44-610b-4500-93be-660a0c5f5ca6} to {identityName} for plan"
}
},
{
"name": "SensitiveDataDiscovery",
"isEnabled": "True",
"operationStatus": {
"code": "Failed",
"message": "Failed assigning roles {f58310d9-a9f6-439a-9e8d-f62e7b41a168} to {identityName} for plan"
}
},
{
"name": "ContainerRegistriesVulnerabilityAssessments",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "EntraPermissionsManagement",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
}
]
}
}
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/CloudPosture",
"name": "CloudPosture",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"enforce": "False",
"resourcesCoverageStatus": "FullyCovered",
"extensions": [
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"operationStatus": {
"code": "Failed",
"message": "Failed find dedicated first party application client ID for extension"
}
},
{
"name": "AgentlessDiscoveryForKubernetes",
"isEnabled": "True",
"operationStatus": {
"code": "Failed",
"message": "Failed assigning roles {d5a2ae44-610b-4500-93be-660a0c5f5ca6} to {identityName} for plan"
}
},
{
"name": "SensitiveDataDiscovery",
"isEnabled": "True",
"operationStatus": {
"code": "Failed",
"message": "Failed assigning roles {f58310d9-a9f6-439a-9e8d-f62e7b41a168} to {identityName} for plan"
}
},
{
"name": "ContainerRegistriesVulnerabilityAssessments",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
},
{
"name": "EntraPermissionsManagement",
"isEnabled": "True",
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
}
]
}
}
Update pricing on subscription (example for VirtualMachines plan)
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/VirtualMachines?api-version=2024-01-01
{
"properties": {
"pricingTier": "Standard",
"subPlan": "P2",
"enforce": "True"
}
}
Respuesta de muestra
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/VirtualMachines",
"name": "VirtualMachines",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"subPlan": "P2",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"enforce": "True",
"resourcesCoverageStatus": "FullyCovered",
"extensions": [
{
"name": "MdeDesignatedSubscription",
"isEnabled": "False"
},
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"additionalExtensionProperties": {
"ExclusionTags": "[{\"Key\":\"TestKey1\",\"Value\":\"TestValue1\"},{\"Key\":\"TestKey2\",\"Value\":\"TestValue2\"}]"
},
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
}
]
}
}
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/VirtualMachines",
"name": "VirtualMachines",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"subPlan": "P2",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"enforce": "True",
"resourcesCoverageStatus": "FullyCovered",
"extensions": [
{
"name": "MdeDesignatedSubscription",
"isEnabled": "False"
},
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"additionalExtensionProperties": {
"ExclusionTags": "[{\"Key\":\"TestKey1\",\"Value\":\"TestValue1\"},{\"Key\":\"TestKey2\",\"Value\":\"TestValue2\"}]"
},
"operationStatus": {
"code": "Succeeded",
"message": "Successfully enabled extension"
}
}
]
}
}
Definiciones
Nombre | Description |
---|---|
Cloud |
Respuesta de error común para todas las API de Azure Resource Manager para devolver los detalles de error de las operaciones con errores. (Esto también sigue el formato de respuesta de error de OData). |
Cloud |
Detalle del error. |
code |
Código de estado de la operación. |
enforce |
Si se establece en "False", permite que los descendientes de este ámbito invaliden la configuración de precios establecida en este ámbito (permite establecer inherited="False"). Si se establece en "True", impide invalidaciones y fuerza esta configuración de precios en todos los descendientes de este ámbito. Este campo solo está disponible para los precios de nivel de suscripción. |
Error |
Información adicional sobre el error de administración de recursos. |
Extension |
Propiedades de extensión de un plan |
inherited |
"inherited" = "True" indica que el ámbito actual hereda su configuración de precios de su elemento primario. El identificador del ámbito primario que proporciona la configuración heredada se muestra en el campo "inheritedFrom". Por otro lado, "heredado" = "False" indica que el ámbito actual tiene su propia configuración de precios establecida explícitamente y no hereda de su elemento primario. Este campo es de solo lectura y solo está disponible para los precios de nivel de recurso. |
is |
Indica si la extensión está habilitada. |
Operation |
Estado que describe el éxito o error de la operación de habilitación o deshabilitación de la extensión. |
Pricing |
Microsoft Defender for Cloud se proporciona en dos planes de tarifa: gratis y estándar. El nivel estándar ofrece funcionalidades de seguridad avanzadas, mientras que el nivel gratis ofrece características de seguridad básicas. |
pricing |
Indica si el plan de Defender está habilitado en el ámbito seleccionado. Microsoft Defender for Cloud se proporciona en dos planes de tarifa: gratis y estándar. El nivel estándar ofrece funcionalidades de seguridad avanzadas, mientras que el nivel gratis ofrece características de seguridad básicas. |
resources |
Este campo solo está disponible para el nivel de suscripción y refleja el estado de cobertura de los recursos de la suscripción. Tenga en cuenta que el campo "pricingTier" refleja el estado del plan de la suscripción. Sin embargo, dado que el estado del plan también se puede definir en el nivel de recurso, puede haber desalineación entre el estado del plan de la suscripción y el estado del recurso. Este campo ayuda a indicar el estado de cobertura de los recursos. |
CloudError
Respuesta de error común para todas las API de Azure Resource Manager para devolver los detalles de error de las operaciones con errores. (Esto también sigue el formato de respuesta de error de OData).
Nombre | Tipo | Description |
---|---|---|
error.additionalInfo |
Información adicional del error. |
|
error.code |
string |
Código de error. |
error.details |
Detalles del error. |
|
error.message |
string |
Mensaje de error. |
error.target |
string |
Destino del error. |
CloudErrorBody
Detalle del error.
Nombre | Tipo | Description |
---|---|---|
additionalInfo |
Información adicional del error. |
|
code |
string |
Código de error. |
details |
Detalles del error. |
|
message |
string |
Mensaje de error. |
target |
string |
Destino del error. |
code
Código de estado de la operación.
Nombre | Tipo | Description |
---|---|---|
Failed |
string |
La extensión no se creó o actualizó correctamente. Consulte el mensaje de estado de la operación para obtener más detalles. |
Succeeded |
string |
La extensión se creó o actualizó correctamente. |
enforce
Si se establece en "False", permite que los descendientes de este ámbito invaliden la configuración de precios establecida en este ámbito (permite establecer inherited="False"). Si se establece en "True", impide invalidaciones y fuerza esta configuración de precios en todos los descendientes de este ámbito. Este campo solo está disponible para los precios de nivel de suscripción.
Nombre | Tipo | Description |
---|---|---|
False |
string |
Permite a los descendientes de este ámbito invalidar la configuración de precios establecida en este ámbito (permite establecer inherited="False") |
True |
string |
Impide invalidaciones y fuerza la configuración de precios del ámbito actual a todos los descendientes. |
ErrorAdditionalInfo
Información adicional sobre el error de administración de recursos.
Nombre | Tipo | Description |
---|---|---|
info |
object |
Información adicional. |
type |
string |
Tipo de información adicional. |
Extension
Propiedades de extensión de un plan
Nombre | Tipo | Description |
---|---|---|
additionalExtensionProperties |
Valores de propiedad asociados a la extensión. |
|
isEnabled |
Indica si la extensión está habilitada. |
|
name |
string |
Nombre de la extensión. Los valores admitidos son: |
operationStatus |
Opcional. Estado que describe el éxito o error de la operación de habilitación o deshabilitación de la extensión. |
inherited
"inherited" = "True" indica que el ámbito actual hereda su configuración de precios de su elemento primario. El identificador del ámbito primario que proporciona la configuración heredada se muestra en el campo "inheritedFrom". Por otro lado, "heredado" = "False" indica que el ámbito actual tiene su propia configuración de precios establecida explícitamente y no hereda de su elemento primario. Este campo es de solo lectura y solo está disponible para los precios de nivel de recurso.
Nombre | Tipo | Description |
---|---|---|
False |
string |
Indica que el ámbito actual establece su propia configuración de precios y no la hereda de su elemento primario. |
True |
string |
Indica que el ámbito actual hereda su configuración de precios de su elemento primario. |
isEnabled
Indica si la extensión está habilitada.
Nombre | Tipo | Description |
---|---|---|
False |
string |
Indica que la extensión está deshabilitada |
True |
string |
Indica que la extensión está habilitada. |
OperationStatus
Estado que describe el éxito o error de la operación de habilitación o deshabilitación de la extensión.
Nombre | Tipo | Description |
---|---|---|
code |
Código de estado de la operación. |
|
message |
string |
Información adicional sobre el éxito o el error de la operación. |
Pricing
Microsoft Defender for Cloud se proporciona en dos planes de tarifa: gratis y estándar. El nivel estándar ofrece funcionalidades de seguridad avanzadas, mientras que el nivel gratis ofrece características de seguridad básicas.
Nombre | Tipo | Description |
---|---|---|
id |
string |
Identificador de recurso |
name |
string |
Nombre del recurso |
properties.deprecated |
boolean |
Opcional. True si el plan está en desuso. Si hay planes de reemplazo, aparecerán en |
properties.enablementTime |
string |
Opcional. Si |
properties.enforce |
Si se establece en "False", permite que los descendientes de este ámbito invaliden la configuración de precios establecida en este ámbito (permite establecer inherited="False"). Si se establece en "True", impide invalidaciones y fuerza esta configuración de precios en todos los descendientes de este ámbito. Este campo solo está disponible para los precios de nivel de suscripción. |
|
properties.extensions |
Opcional. Lista de extensiones que se ofrecen en un plan. |
|
properties.freeTrialRemainingTime |
string |
La duración que queda para el período de prueba gratuito de las suscripciones: en formato ISO 8601 (por ejemplo, P3Y6M4DT12H30M5S). |
properties.inherited |
"inherited" = "True" indica que el ámbito actual hereda su configuración de precios de su elemento primario. El identificador del ámbito primario que proporciona la configuración heredada se muestra en el campo "inheritedFrom". Por otro lado, "heredado" = "False" indica que el ámbito actual tiene su propia configuración de precios establecida explícitamente y no hereda de su elemento primario. Este campo es de solo lectura y solo está disponible para los precios de nivel de recurso. |
|
properties.inheritedFrom |
string |
El identificador del ámbito heredado de. "Null" si no se hereda. Este campo solo está disponible para los precios de nivel de recurso. |
properties.pricingTier |
Indica si el plan de Defender está habilitado en el ámbito seleccionado. Microsoft Defender for Cloud se proporciona en dos planes de tarifa: gratis y estándar. El nivel estándar ofrece funcionalidades de seguridad avanzadas, mientras que el nivel gratis ofrece características de seguridad básicas. |
|
properties.replacedBy |
string[] |
Opcional. Lista de planes que reemplazan este plan. Esta propiedad solo existe si este plan está en desuso. |
properties.resourcesCoverageStatus |
Este campo solo está disponible para el nivel de suscripción y refleja el estado de cobertura de los recursos de la suscripción. Tenga en cuenta que el campo "pricingTier" refleja el estado del plan de la suscripción. Sin embargo, dado que el estado del plan también se puede definir en el nivel de recurso, puede haber desalineación entre el estado del plan de la suscripción y el estado del recurso. Este campo ayuda a indicar el estado de cobertura de los recursos. |
|
properties.subPlan |
string |
El sub plan seleccionado para una configuración de precios estándar, cuando hay más de un sub plan disponible. Cada sub plan habilita un conjunto de características de seguridad. Cuando no se especifica, se aplica el plan completo. En el caso del plan VirtualMachines, los sub planes disponibles son "P1" & "P2", donde solo se admite el sub plan de nivel de recurso "P1". |
type |
string |
Tipo de recurso |
pricingTier
Indica si el plan de Defender está habilitado en el ámbito seleccionado. Microsoft Defender for Cloud se proporciona en dos planes de tarifa: gratis y estándar. El nivel estándar ofrece funcionalidades de seguridad avanzadas, mientras que el nivel gratis ofrece características de seguridad básicas.
Nombre | Tipo | Description |
---|---|---|
Free |
string |
Obtenga información gratuita sobre la experiencia de Microsoft Defender for Cloud con las características de seguridad básicas |
Standard |
string |
Obtención de la experiencia estándar de Microsoft Defender for Cloud con características de seguridad avanzadas |
resourcesCoverageStatus
Este campo solo está disponible para el nivel de suscripción y refleja el estado de cobertura de los recursos de la suscripción. Tenga en cuenta que el campo "pricingTier" refleja el estado del plan de la suscripción. Sin embargo, dado que el estado del plan también se puede definir en el nivel de recurso, puede haber desalineación entre el estado del plan de la suscripción y el estado del recurso. Este campo ayuda a indicar el estado de cobertura de los recursos.
Nombre | Tipo | Description |
---|---|---|
FullyCovered |
string |
Este valor indica que todos los recursos asociados a la suscripción tienen habilitado el plan de Defender. |
NotCovered |
string |
Este valor indica que el plan de Defender está deshabilitado para todos los recursos de la suscripción. Ninguno de los recursos está protegido por el plan de Defender. |
PartiallyCovered |
string |
Este valor indica que algunos recursos de la suscripción tienen habilitado el plan de Defender, mientras que otros lo han deshabilitado. Hay un estado de cobertura mixto entre los recursos. |