%3CLINGO-SUB%20id%3D%22lingo-sub-343309%22%20slang%3D%22en-US%22%3EConfigure%20Security%20Center%20pricings%20per%20resource%20type%20-%20using%20an%20ARM%20Template%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-343309%22%20slang%3D%22en-US%22%3E%3CP%3E%3CSPAN%3EIn%20this%20blogpost%20I%20will%20be%20covering%20how%20to%20set%20the%20Security%20Center%20pricing%20per%20resource%20type.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%3ESecurity%20Center%20has%20three%20different%20pricings%20per%20resource%20type%2C%20which%20can%20be%20found%20under%20%3CSTRONG%3ESecurity%20policy%20%26gt%3B%20Settings%20%26gt%3B%20Pricing%20tier%3C%2FSTRONG%3E.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20style%3D%22width%3A%20982px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Fgxcuf89792.i.lithium.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F83518iB2039E7EBBC858D8%2Fimage-size%2Flarge%3Fv%3D1.0%26amp%3Bpx%3D999%22%20alt%3D%22Pricing_Tiers.png%22%20title%3D%22Pricing_Tiers.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%3EThis%20setting%20enables%20or%20disables%20the%20protection%20of%20VM%E2%80%99s%2C%20SQL%20Servers%20and%20App%20Services%20and%20can%20be%20configured%20per%20resource%20type.%20If%20you%20want%20to%20leverage%20automation%20capabilities%20and%20manage%20Security%20Center%20at%20scale%2C%20you%20can%20either%20work%20with%20the%20%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-gb%2Frest%2Fapi%2Fsecuritycenter%2Fpricings%2Fupdatesubscriptionpricing%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3ESecurity%20Center%20API%3C%2FA%3E%20or%20you%20leverage%20an%20ARM%20template%2C%20as%20mentioned%20in%20my%20%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2FSecurity-Identity%2FManaging-Security-Center-at-scale-using-ARM-templates-and-Azure%2Ftd-p%2F327761%22%20target%3D%22_blank%22%20rel%3D%22noopener%22%3Eprevious%20blogpost%3C%2FA%3E.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%3EDue%20to%20the%20nature%20of%20how%20we%20are%20configuring%20the%20pricing%20setting%20per%20resource%2C%20you%20need%20to%20be%20aware%20of%20a%20locking%20mechanism%20we%20use%20to%20avoid%20conflicts%20in%20a%20so-called%20%E2%80%9Cracing%20condition%E2%80%9D.%20To%20make%20sure%20that%20the%20template%20is%20being%20applied%20successfully%2C%20I%E2%80%99m%20using%20an%20ARM%20template%20element%20called%20%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Fazure-resource-manager%2Fresource-group-define-dependencies%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3EdependsOn%3C%2FA%3E%3CSTRONG%3E.%20%3C%2FSTRONG%3EThis%20will%20prevent%20that%20ARM%20generates%20an%20error%20during%20the%20deployment%20saying%20that%20another%20deployment%20is%20already%20in%20progress.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20style%3D%22width%3A%20571px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Fgxcuf89792.i.lithium.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F77214i6E0AF73749FF802D%2Fimage-size%2Flarge%3Fv%3D1.0%26amp%3Bpx%3D999%22%20alt%3D%22dependsOn.png%22%20title%3D%22dependsOn.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%3EIn%20the%20above%20example%20you%20can%20also%20notice%20that%20I%E2%80%99m%20using%20parameters.%20This%20allows%20you%20to%20set%20the%20pricing%20independently%20per%20resource%20type.%20Please%20be%20aware%20that%20the%20expected%20%3CSTRONG%3EpricingTier%3C%2FSTRONG%3E%20values%20(Standard%2C%20Free)%20are%20case%20sensitive.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%3EThe%20ARM%20template%20can%20be%20found%20%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Ftianderturpijn%2FASC%2Fblob%2Fmaster%2FARM%2FsetAscPricings.json%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehere%3C%2FA%3E.%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-343309%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3Earm%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EAzure%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EAzure%20Resource%20Manager%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EAzure%20Security%20Center%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3ESecurity%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3ESecurity%20Center%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
Microsoft

In this blogpost I will be covering how to set the Security Center pricing per resource type.

 

Security Center has three different pricings per resource type, which can be found under Security policy > Settings > Pricing tier.

 

Pricing_Tiers.png

 

This setting enables or disables the protection of VM’s, SQL Servers and App Services and can be configured per resource type. If you want to leverage automation capabilities and manage Security Center at scale, you can either work with the Security Center API or you leverage an ARM template, as mentioned in my previous blogpost.

 

Due to the nature of how we are configuring the pricing setting per resource, you need to be aware of a locking mechanism we use to avoid conflicts in a so-called “racing condition”. To make sure that the template is being applied successfully, I’m using an ARM template element called dependsOn. This will prevent that ARM generates an error during the deployment saying that another deployment is already in progress.

 

dependsOn.png

 

In the above example you can also notice that I’m using parameters. This allows you to set the pricing independently per resource type. Please be aware that the expected pricingTier values (Standard, Free) are case sensitive.

The ARM template can be found here.