選択したスコープの Defender プランの価格構成を取得します (有効なスコープはリソース ID またはサブスクリプション ID です)。 リソース レベルでは、サポートされているリソースの種類は "VirtualMachines、VMSS、ARC Machines" です。
GET https://management.azure.com/{scopeId}/providers/Microsoft.Security/pricings/{pricingName}?api-version=2024-01-01
URI パラメーター
名前 |
/ |
必須 |
型 |
説明 |
pricingName
|
path |
True
|
string
|
価格構成の名前
|
scopeId
|
path |
True
|
string
|
価格のスコープ ID。 有効なスコープは、サブスクリプション (形式: 'subscriptions/{subscriptionId}')、または特定のリソース (形式: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}) - サポートされているリソースは (VirtualMachines) です
|
api-version
|
query |
True
|
string
|
操作の API バージョン
|
応答
セキュリティ
azure_auth
Azure Active Directory OAuth2 フロー
型:
oauth2
フロー:
implicit
Authorization URL (承認 URL):
https://login.microsoftonline.com/common/oauth2/authorize
スコープ
名前 |
説明 |
user_impersonation
|
ユーザー アカウントを偽装する
|
例
Get pricings on resource - VirtualMachines plan
要求のサンプル
GET 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
package armsecurity_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/security/armsecurity"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/9ac34f238dd6b9071f486b57e9f9f1a0c43ec6f6/specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json
func ExamplePricingsClient_Get_getPricingsOnResourceVirtualMachinesPlan() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armsecurity.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewPricingsClient().Get(ctx, "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1", "VirtualMachines", nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.Pricing = armsecurity.Pricing{
// Name: to.Ptr("VirtualMachines"),
// Type: to.Ptr("Microsoft.Security/pricings"),
// ID: to.Ptr("/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1/providers/Microsoft.Security/pricings/VirtualMachines"),
// Properties: &armsecurity.PricingProperties{
// EnablementTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-01T12:42:42.192Z"); return t}()),
// FreeTrialRemainingTime: to.Ptr("PT0S"),
// Inherited: to.Ptr(armsecurity.InheritedTrue),
// InheritedFrom: to.Ptr("/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"),
// PricingTier: to.Ptr(armsecurity.PricingTierStandard),
// SubPlan: to.Ptr("P2"),
// Extensions: []*armsecurity.Extension{
// {
// Name: to.Ptr("AgentlessVmScanning"),
// AdditionalExtensionProperties: map[string]any{
// "ExclusionTags": "[{\"Key\":\"TestKey1\",\"Value\":\"TestValue1\"},{\"Key\":\"TestKey2\",\"Value\":\"TestValue2\"}]",
// },
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// },
// {
// Name: to.Ptr("MdeDesignatedSubscription"),
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// }},
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { SecurityCenter } = require("@azure/arm-security");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
*
* @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
* x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json
*/
async function getPricingsOnResourceVirtualMachinesPlan() {
const scopeId =
"subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1";
const pricingName = "VirtualMachines";
const credential = new DefaultAzureCredential();
const client = new SecurityCenter(credential);
const result = await client.pricings.get(scopeId, pricingName);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
応答のサンプル
{
"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": "P2",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"inherited": "True",
"inheritedFrom": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23",
"extensions": [
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"additionalExtensionProperties": {
"ExclusionTags": "[{\"Key\":\"TestKey1\",\"Value\":\"TestValue1\"},{\"Key\":\"TestKey2\",\"Value\":\"TestValue2\"}]"
}
},
{
"name": "MdeDesignatedSubscription",
"isEnabled": "True"
}
]
}
}
Get pricings on subscription - CloudPosture plan
要求のサンプル
GET https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/CloudPosture?api-version=2024-01-01
package armsecurity_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/security/armsecurity"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/9ac34f238dd6b9071f486b57e9f9f1a0c43ec6f6/specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameCloudPosture_example.json
func ExamplePricingsClient_Get_getPricingsOnSubscriptionCloudPosturePlan() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armsecurity.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewPricingsClient().Get(ctx, "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", "CloudPosture", nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.Pricing = armsecurity.Pricing{
// Name: to.Ptr("CloudPosture"),
// Type: to.Ptr("Microsoft.Security/pricings"),
// ID: to.Ptr("/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/CloudPosture"),
// Properties: &armsecurity.PricingProperties{
// EnablementTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-01T12:42:42.192Z"); return t}()),
// Enforce: to.Ptr(armsecurity.EnforceFalse),
// FreeTrialRemainingTime: to.Ptr("PT0S"),
// PricingTier: to.Ptr(armsecurity.PricingTierStandard),
// ResourcesCoverageStatus: to.Ptr(armsecurity.ResourcesCoverageStatusFullyCovered),
// Extensions: []*armsecurity.Extension{
// {
// Name: to.Ptr("AgentlessVmScanning"),
// AdditionalExtensionProperties: map[string]any{
// "ExclusionTags": "[]",
// },
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// },
// {
// Name: to.Ptr("AgentlessDiscoveryForKubernetes"),
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// },
// {
// Name: to.Ptr("SensitiveDataDiscovery"),
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// },
// {
// Name: to.Ptr("ContainerRegistriesVulnerabilityAssessments"),
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// },
// {
// Name: to.Ptr("EntraPermissionsManagement"),
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// }},
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { SecurityCenter } = require("@azure/arm-security");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
*
* @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
* x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameCloudPosture_example.json
*/
async function getPricingsOnSubscriptionCloudPosturePlan() {
const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23";
const pricingName = "CloudPosture";
const credential = new DefaultAzureCredential();
const client = new SecurityCenter(credential);
const result = await client.pricings.get(scopeId, pricingName);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
応答のサンプル
{
"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",
"additionalExtensionProperties": {
"ExclusionTags": "[]"
}
},
{
"name": "AgentlessDiscoveryForKubernetes",
"isEnabled": "True"
},
{
"name": "SensitiveDataDiscovery",
"isEnabled": "True"
},
{
"name": "ContainerRegistriesVulnerabilityAssessments",
"isEnabled": "True"
},
{
"name": "EntraPermissionsManagement",
"isEnabled": "True"
}
]
}
}
Get pricings on subscription - Containers plan
要求のサンプル
GET https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/Containers?api-version=2024-01-01
package armsecurity_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/security/armsecurity"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/9ac34f238dd6b9071f486b57e9f9f1a0c43ec6f6/specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameContainers_example.json
func ExamplePricingsClient_Get_getPricingsOnSubscriptionContainersPlan() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armsecurity.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewPricingsClient().Get(ctx, "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", "Containers", nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.Pricing = armsecurity.Pricing{
// Name: to.Ptr("Containers"),
// Type: to.Ptr("Microsoft.Security/pricings"),
// ID: to.Ptr("/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/Containers"),
// Properties: &armsecurity.PricingProperties{
// EnablementTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-01T12:42:42.192Z"); return t}()),
// Enforce: to.Ptr(armsecurity.EnforceFalse),
// FreeTrialRemainingTime: to.Ptr("PT0S"),
// PricingTier: to.Ptr(armsecurity.PricingTierStandard),
// ResourcesCoverageStatus: to.Ptr(armsecurity.ResourcesCoverageStatusFullyCovered),
// Extensions: []*armsecurity.Extension{
// {
// Name: to.Ptr("ContainerRegistriesVulnerabilityAssessments"),
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// }},
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { SecurityCenter } = require("@azure/arm-security");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
*
* @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
* x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameContainers_example.json
*/
async function getPricingsOnSubscriptionContainersPlan() {
const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23";
const pricingName = "Containers";
const credential = new DefaultAzureCredential();
const client = new SecurityCenter(credential);
const result = await client.pricings.get(scopeId, pricingName);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
応答のサンプル
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/Containers",
"name": "Containers",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"enforce": "False",
"resourcesCoverageStatus": "FullyCovered",
"extensions": [
{
"name": "ContainerRegistriesVulnerabilityAssessments",
"isEnabled": "True"
}
]
}
}
Get pricings on subscription - Dns plan
要求のサンプル
GET https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/Dns?api-version=2024-01-01
package armsecurity_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/security/armsecurity"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/9ac34f238dd6b9071f486b57e9f9f1a0c43ec6f6/specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameDns_example.json
func ExamplePricingsClient_Get_getPricingsOnSubscriptionDnsPlan() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armsecurity.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewPricingsClient().Get(ctx, "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", "Dns", nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.Pricing = armsecurity.Pricing{
// Name: to.Ptr("Dns"),
// Type: to.Ptr("Microsoft.Security/pricings"),
// ID: to.Ptr("/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/Dns"),
// Properties: &armsecurity.PricingProperties{
// Deprecated: to.Ptr(true),
// EnablementTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-01T12:42:42.192Z"); return t}()),
// Enforce: to.Ptr(armsecurity.EnforceFalse),
// FreeTrialRemainingTime: to.Ptr("PT0S"),
// PricingTier: to.Ptr(armsecurity.PricingTierStandard),
// ReplacedBy: []*string{
// to.Ptr("VirtualMachines")},
// ResourcesCoverageStatus: to.Ptr(armsecurity.ResourcesCoverageStatusFullyCovered),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { SecurityCenter } = require("@azure/arm-security");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
*
* @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
* x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameDns_example.json
*/
async function getPricingsOnSubscriptionDnsPlan() {
const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23";
const pricingName = "Dns";
const credential = new DefaultAzureCredential();
const client = new SecurityCenter(credential);
const result = await client.pricings.get(scopeId, pricingName);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
応答のサンプル
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/Dns",
"name": "Dns",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"deprecated": true,
"replacedBy": [
"VirtualMachines"
],
"enforce": "False",
"resourcesCoverageStatus": "FullyCovered"
}
}
Get pricings on subscription - StorageAccounts plan
要求のサンプル
GET https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/StorageAccounts?api-version=2024-01-01
package armsecurity_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/security/armsecurity"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/9ac34f238dd6b9071f486b57e9f9f1a0c43ec6f6/specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameStorageAccounts_example.json
func ExamplePricingsClient_Get_getPricingsOnSubscriptionStorageAccountsPlan() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armsecurity.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewPricingsClient().Get(ctx, "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", "StorageAccounts", nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.Pricing = armsecurity.Pricing{
// Name: to.Ptr("StorageAccounts"),
// Type: to.Ptr("Microsoft.Security/pricings"),
// ID: to.Ptr("/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/StorageAccounts"),
// Properties: &armsecurity.PricingProperties{
// EnablementTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-01T12:42:42.192Z"); return t}()),
// Enforce: to.Ptr(armsecurity.EnforceFalse),
// FreeTrialRemainingTime: to.Ptr("PT0S"),
// PricingTier: to.Ptr(armsecurity.PricingTierStandard),
// ResourcesCoverageStatus: to.Ptr(armsecurity.ResourcesCoverageStatusFullyCovered),
// SubPlan: to.Ptr("PerStorageAccount"),
// Extensions: []*armsecurity.Extension{
// {
// Name: to.Ptr("OnUploadMalwareScanning"),
// AdditionalExtensionProperties: map[string]any{
// "capGBPerMonthPerStorageAccount": float64(10),
// },
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// },
// {
// Name: to.Ptr("SensitiveDataDiscovery"),
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// }},
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { SecurityCenter } = require("@azure/arm-security");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
*
* @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
* x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameStorageAccounts_example.json
*/
async function getPricingsOnSubscriptionStorageAccountsPlan() {
const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23";
const pricingName = "StorageAccounts";
const credential = new DefaultAzureCredential();
const client = new SecurityCenter(credential);
const result = await client.pricings.get(scopeId, pricingName);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
応答のサンプル
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/StorageAccounts",
"name": "StorageAccounts",
"type": "Microsoft.Security/pricings",
"properties": {
"pricingTier": "Standard",
"subPlan": "PerStorageAccount",
"freeTrialRemainingTime": "PT0S",
"enablementTime": "2023-03-01T12:42:42.1921106Z",
"enforce": "False",
"resourcesCoverageStatus": "FullyCovered",
"extensions": [
{
"name": "OnUploadMalwareScanning",
"isEnabled": "True",
"additionalExtensionProperties": {
"capGBPerMonthPerStorageAccount": 10
}
},
{
"name": "SensitiveDataDiscovery",
"isEnabled": "True"
}
]
}
}
Get pricings on subscription - VirtualMachines plan
要求のサンプル
GET https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/VirtualMachines?api-version=2024-01-01
package armsecurity_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/security/armsecurity"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/9ac34f238dd6b9071f486b57e9f9f1a0c43ec6f6/specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameVirtualMachines_example.json
func ExamplePricingsClient_Get_getPricingsOnSubscriptionVirtualMachinesPlan() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armsecurity.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
res, err := clientFactory.NewPricingsClient().Get(ctx, "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", "VirtualMachines", nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.Pricing = armsecurity.Pricing{
// Name: to.Ptr("VirtualMachines"),
// Type: to.Ptr("Microsoft.Security/pricings"),
// ID: to.Ptr("/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/pricings/VirtualMachines"),
// Properties: &armsecurity.PricingProperties{
// EnablementTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-01T12:42:42.192Z"); return t}()),
// Enforce: to.Ptr(armsecurity.EnforceFalse),
// FreeTrialRemainingTime: to.Ptr("PT0S"),
// PricingTier: to.Ptr(armsecurity.PricingTierStandard),
// ResourcesCoverageStatus: to.Ptr(armsecurity.ResourcesCoverageStatusPartiallyCovered),
// SubPlan: to.Ptr("P2"),
// Extensions: []*armsecurity.Extension{
// {
// Name: to.Ptr("AgentlessVmScanning"),
// AdditionalExtensionProperties: map[string]any{
// "ExclusionTags": "[{\"Key\":\"TestKey1\",\"Value\":\"TestValue1\"},{\"Key\":\"TestKey2\",\"Value\":\"TestValue2\"}]",
// },
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// },
// {
// Name: to.Ptr("MdeDesignatedSubscription"),
// IsEnabled: to.Ptr(armsecurity.IsEnabledTrue),
// }},
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { SecurityCenter } = require("@azure/arm-security");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
*
* @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'.
* x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameVirtualMachines_example.json
*/
async function getPricingsOnSubscriptionVirtualMachinesPlan() {
const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23";
const pricingName = "VirtualMachines";
const credential = new DefaultAzureCredential();
const client = new SecurityCenter(credential);
const result = await client.pricings.get(scopeId, pricingName);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
応答のサンプル
{
"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": "False",
"resourcesCoverageStatus": "PartiallyCovered",
"extensions": [
{
"name": "AgentlessVmScanning",
"isEnabled": "True",
"additionalExtensionProperties": {
"ExclusionTags": "[{\"Key\":\"TestKey1\",\"Value\":\"TestValue1\"},{\"Key\":\"TestKey2\",\"Value\":\"TestValue2\"}]"
}
},
{
"name": "MdeDesignatedSubscription",
"isEnabled": "True"
}
]
}
}
定義
名前 |
説明 |
CloudError
|
失敗した操作のエラーの詳細を返す、すべての Azure Resource Manager API の一般的なエラー応答。 (これは、OData エラー応答形式にも従います)。
|
CloudErrorBody
|
エラーの詳細。
|
code
|
操作の状態コード。
|
enforce
|
"False" に設定すると、このスコープの子孫がこのスコープで設定された価格構成をオーバーライドできます (inherited="False" の設定を許可します)。 "True" に設定すると、オーバーライドが回避され、このスコープのすべての子孫に対してこの価格構成が強制されます。 このフィールドは、サブスクリプション レベルの価格でのみ使用できます。
|
ErrorAdditionalInfo
|
リソース管理エラーの追加情報。
|
Extension
|
プランの拡張機能のプロパティ
|
inherited
|
"inherited" = "True" は、現在のスコープが親から価格構成を継承することを示します。 継承された構成を提供する親スコープの ID は、"inheritedFrom" フィールドに表示されます。 一方、"inherited" = "False" は、現在のスコープに独自の価格構成が明示的に設定されており、親から継承されていないことを示します。 このフィールドは読み取り専用で、リソース レベルの価格でのみ使用できます。
|
isEnabled
|
拡張機能が有効かどうかを示します。
|
OperationStatus
|
拡張機能の有効化/無効化操作の成功/失敗を説明する状態。
|
Pricing
|
Microsoft Defender for Cloud は、Free と Standard の 2 つの価格レベルで提供されています。 Standard レベルでは高度なセキュリティ機能が提供され、Free レベルでは基本的なセキュリティ機能が提供されます。
|
pricingTier
|
選択したスコープで Defender プランが有効になっているかどうかを示します。 Microsoft Defender for Cloud は、Free と Standard の 2 つの価格レベルで提供されています。 Standard レベルでは高度なセキュリティ機能が提供され、Free レベルでは基本的なセキュリティ機能が提供されます。
|
resourcesCoverageStatus
|
このフィールドはサブスクリプション レベルでのみ使用でき、サブスクリプションのリソースのカバレッジ状態が反映されます。 注: [pricingTier] フィールドには、サブスクリプションのプランの状態が反映されます。 ただし、プランの状態はリソース レベルでも定義できるため、サブスクリプションのプランの状態とリソースの状態の間にずれが生じることがあります。 このフィールドは、リソースのカバレッジ状態を示すのに役立ちます。
|
CloudError
失敗した操作のエラーの詳細を返す、すべての Azure Resource Manager API の一般的なエラー応答。 (これは、OData エラー応答形式にも従います)。
名前 |
型 |
説明 |
error.additionalInfo
|
ErrorAdditionalInfo[]
|
エラーの追加情報。
|
error.code
|
string
|
エラー コード。
|
error.details
|
CloudErrorBody[]
|
エラーの詳細。
|
error.message
|
string
|
エラー メッセージ。
|
error.target
|
string
|
エラーターゲット。
|
CloudErrorBody
エラーの詳細。
code
操作の状態コード。
名前 |
型 |
説明 |
Failed
|
string
|
拡張機能が正常に作成または更新されませんでした。 詳細については、操作の状態メッセージを参照してください。
|
Succeeded
|
string
|
拡張機能が正常に作成/更新されました。
|
enforce
"False" に設定すると、このスコープの子孫がこのスコープで設定された価格構成をオーバーライドできます (inherited="False" の設定を許可します)。 "True" に設定すると、オーバーライドが回避され、このスコープのすべての子孫に対してこの価格構成が強制されます。 このフィールドは、サブスクリプション レベルの価格でのみ使用できます。
名前 |
型 |
説明 |
False
|
string
|
このスコープの子孫がこのスコープで設定された価格構成をオーバーライドできるようにします (inherited="False" の設定を許可します)
|
True
|
string
|
オーバーライドを防ぎ、現在のスコープの価格構成をすべての子孫に強制します
|
ErrorAdditionalInfo
リソース管理エラーの追加情報。
名前 |
型 |
説明 |
info
|
object
|
追加情報。
|
type
|
string
|
追加情報の種類。
|
Extension
プランの拡張機能のプロパティ
名前 |
型 |
説明 |
additionalExtensionProperties
|
|
拡張機能に関連付けられているプロパティ値。
|
isEnabled
|
isEnabled
|
拡張機能が有効かどうかを示します。
|
name
|
string
|
拡張機能の名前。 サポートされる値は次のとおりです。
AgentlessDiscoveryForKbernetes - ゼロ フットプリント、Kubernetes クラスターの API ベースの検出、その構成とデプロイを提供します。 収集されたデータは、Kubernetes クラスターのコンテキスト化されたセキュリティ グラフを作成し、リスクハンティング機能を提供し、Kubernetes 環境とワークロードに対するリスクと脅威を視覚化するために使用されます。 CloudPosture プランとコンテナー プランで使用できます。
OnUploadMalwareScanning - サブスクリプション内の各ストレージ アカウントについて、1 か月あたりにスキャンする GB を制限します。 特定のストレージ アカウントでこの制限に達すると、現在のカレンダー月に BLOB はスキャンされません。 StorageAccounts プラン (DefenderForStorageV2 サブプラン) で使用できます。
SensitiveDataDiscovery - 機密データ検出では、資格情報、クレジット カードなどの機密データを含む BLOB ストレージ コンテナーが識別され、セキュリティ イベントの優先順位付けと調査に役立ちます。 StorageAccounts プラン (DefenderForStorageV2 サブプラン) と CloudPosture プランで使用できます。
ContainerRegistriesVulnerabilityAssessments - コンテナー レジストリに格納されているイメージの脆弱性管理を提供します。 CloudPosture プランとコンテナー プランで使用できます。
MdeDesignatedSubscription - 直接オンボードは、サーバーに追加のソフトウェア展開を必要としない Defender for Endpoint と Defender for Cloud の間のシームレスな統合です。 オンボードされたリソースは、構成した指定された Azure サブスクリプションの下に表示されます VirtualMachines プラン (P1 および P2 サブプラン) で使用できます。
AgentlessVmScanning - エージェントに依存したり、コンピューターのパフォーマンスに影響を与えたりすることなく、インストールされているソフトウェア、脆弱性、マルウェア、シークレット スキャンについてマシンをスキャンします。 詳細については、https://learn.microsoft.com/en-us/azure/defender-for-cloud/concept-agentless-data-collectionを参照してください。 CloudPosture プラン、VirtualMachines プラン (P2 サブ プラン)、コンテナー プランで使用できます。
EntraPermissionsManagement - Permissions Management は、クラウド インフラストラクチャのユーザー アクセスと権利を管理および制御するのに役立つクラウド インフラストラクチャ エンタイトルメント管理 (CIEM) 機能を提供します。これは、クラウド環境の重要な攻撃ベクトルです。 アクセス許可管理は、すべてのアクセス許可とアクティブな使用状況を分析し、最小限の特権の原則を適用するアクセス許可を減らすための推奨事項を提案します。 詳細については、https://learn.microsoft.com/en-us/azure/defender-for-cloud/permissions-managementを参照してください。 CloudPosture プランで使用できます。
FileIntegrityMonitoring - ファイル整合性監視 (FIM) は、オペレーティング システム ファイルを調べます。 Windows レジストリ、Linux システム ファイル、リアルタイムで、攻撃を示す可能性のある変更。 VirtualMachines プラン (P2 サブ プラン) で使用できます。
ContainerSensor - センサーは IG に基づいており、Microsoft の主要な脅威インテリジェンスを利用した Kubernetes クラスター、ノード、ワークロード用の豊富な脅威検出スイートを提供し、MITRE ATT&CK フレームワークへのマッピングを提供します。 コンテナー プランで使用できます。
AIPromptEvidence - ユーザーと AI モデルの間で渡されたプロンプトをアラートの証拠として公開します。 これにより、関連するユーザー コンテキストを使用してアラートを分類およびトリアージできます。 プロンプト スニペットには、疑わしいと見なされ、セキュリティ分類に関連していると見なされたユーザー プロンプトまたはモデル応答のセグメントのみが含まれます。 プロンプトの証拠は、各アラートの一部として Defender ポータルから入手できます。 AI プランで使用できます。
|
operationStatus
|
OperationStatus
|
随意。 拡張機能の有効化/無効化操作の成功/失敗を説明する状態。
|
inherited
"inherited" = "True" は、現在のスコープが親から価格構成を継承することを示します。 継承された構成を提供する親スコープの ID は、"inheritedFrom" フィールドに表示されます。 一方、"inherited" = "False" は、現在のスコープに独自の価格構成が明示的に設定されており、親から継承されていないことを示します。 このフィールドは読み取り専用で、リソース レベルの価格でのみ使用できます。
名前 |
型 |
説明 |
False
|
string
|
現在のスコープが独自の価格構成を設定し、その親からそれを継承しないことを示します
|
True
|
string
|
現在のスコープが親から価格構成を継承していることを示します
|
isEnabled
拡張機能が有効かどうかを示します。
名前 |
型 |
説明 |
False
|
string
|
拡張機能が無効であることを示します
|
True
|
string
|
拡張機能が有効になっていることを示します
|
OperationStatus
拡張機能の有効化/無効化操作の成功/失敗を説明する状態。
名前 |
型 |
説明 |
code
|
code
|
操作の状態コード。
|
message
|
string
|
操作の成功/失敗に関する追加情報。
|
Pricing
Microsoft Defender for Cloud は、Free と Standard の 2 つの価格レベルで提供されています。 Standard レベルでは高度なセキュリティ機能が提供され、Free レベルでは基本的なセキュリティ機能が提供されます。
名前 |
型 |
説明 |
id
|
string
|
リソース ID
|
name
|
string
|
リソース名
|
properties.deprecated
|
boolean
|
随意。 True の 場合は、プランが非推奨です。 置き換えるプランがある場合は、replacedBy プロパティに表示されます
|
properties.enablementTime
|
string
|
随意。
pricingTier が Standard の場合、このプロパティは、pricingTier が最後に Standard に設定された日付 (2023-03-01T12:42:42.1921106Z など) を保持します。
|
properties.enforce
|
enforce
|
"False" に設定すると、このスコープの子孫がこのスコープで設定された価格構成をオーバーライドできます (inherited="False" の設定を許可します)。 "True" に設定すると、オーバーライドが回避され、このスコープのすべての子孫に対してこの価格構成が強制されます。 このフィールドは、サブスクリプション レベルの価格でのみ使用できます。
|
properties.extensions
|
Extension[]
|
随意。 プランで提供される拡張機能の一覧。
|
properties.freeTrialRemainingTime
|
string
|
サブスクリプションの無料試用期間の残りの期間 ( ISO 8601 形式 (例: P3Y6M4DT12H30M5S)。
|
properties.inherited
|
inherited
|
"inherited" = "True" は、現在のスコープが親から価格構成を継承することを示します。 継承された構成を提供する親スコープの ID は、"inheritedFrom" フィールドに表示されます。 一方、"inherited" = "False" は、現在のスコープに独自の価格構成が明示的に設定されており、親から継承されていないことを示します。 このフィールドは読み取り専用で、リソース レベルの価格でのみ使用できます。
|
properties.inheritedFrom
|
string
|
継承されたスコープの ID。 継承されない場合は "Null" です。 このフィールドは、リソース レベルの価格でのみ使用できます。
|
properties.pricingTier
|
pricingTier
|
選択したスコープで Defender プランが有効になっているかどうかを示します。 Microsoft Defender for Cloud は、Free と Standard の 2 つの価格レベルで提供されています。 Standard レベルでは高度なセキュリティ機能が提供され、Free レベルでは基本的なセキュリティ機能が提供されます。
|
properties.replacedBy
|
string[]
|
随意。 このプランを置き換えるプランの一覧。 このプロパティは、このプランが非推奨の場合にのみ存在します。
|
properties.resourcesCoverageStatus
|
resourcesCoverageStatus
|
このフィールドはサブスクリプション レベルでのみ使用でき、サブスクリプションのリソースのカバレッジ状態が反映されます。 注: [pricingTier] フィールドには、サブスクリプションのプランの状態が反映されます。 ただし、プランの状態はリソース レベルでも定義できるため、サブスクリプションのプランの状態とリソースの状態の間にずれが生じることがあります。 このフィールドは、リソースのカバレッジ状態を示すのに役立ちます。
|
properties.subPlan
|
string
|
複数のサブプランが使用可能な場合に、Standard 価格構成に対して選択されたサブプラン。 各サブプランでは、一連のセキュリティ機能が有効になります。 指定しない場合は、完全プランが適用されます。 VirtualMachines プランの場合、使用可能なサブプランは 'P1' & 'P2' であり、リソース レベルの場合は 'P1' サブプランのみがサポートされます。
|
type
|
string
|
リソースの種類
|
pricingTier
選択したスコープで Defender プランが有効になっているかどうかを示します。 Microsoft Defender for Cloud は、Free と Standard の 2 つの価格レベルで提供されています。 Standard レベルでは高度なセキュリティ機能が提供され、Free レベルでは基本的なセキュリティ機能が提供されます。
名前 |
型 |
説明 |
Free
|
string
|
基本的なセキュリティ機能を使用して無料の Microsoft Defender for Cloud エクスペリエンスを入手する
|
Standard
|
string
|
高度なセキュリティ機能を備えた標準の Microsoft Defender for Cloud エクスペリエンスを取得する
|
resourcesCoverageStatus
このフィールドはサブスクリプション レベルでのみ使用でき、サブスクリプションのリソースのカバレッジ状態が反映されます。 注: [pricingTier] フィールドには、サブスクリプションのプランの状態が反映されます。 ただし、プランの状態はリソース レベルでも定義できるため、サブスクリプションのプランの状態とリソースの状態の間にずれが生じることがあります。 このフィールドは、リソースのカバレッジ状態を示すのに役立ちます。
名前 |
型 |
説明 |
FullyCovered
|
string
|
この値は、サブスクリプションに関連付けられているすべてのリソースで Defender プランが有効になっていることを示します。
|
NotCovered
|
string
|
この値は、サブスクリプションのすべてのリソースに対して Defender プランが無効になっていることを示します。 どのリソースも Defender プランによって保護されません。
|
PartiallyCovered
|
string
|
この値は、サブスクリプションの下の一部のリソースで Defender プランが有効になっているのに対し、他のリソースでは無効になっていることを示します。 リソース間でカバレッジの状態が混在しています。
|