サンプル - 許可されないリソースの種類Sample - Not allowed resource types

このポリシーは、指定されたリソースの種類のデプロイを禁止します。This policy prohibits the deployment of specified resource types. ブロックするリソースの種類の配列を指定します。You specify an array of the resource types to block.

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。If you don't have an Azure subscription, create a free account before you begin.

サンプル テンプレートSample template

{
  "properties": {
    "displayName": "Not allowed resource types",
    "policyType": "BuiltIn",
    "description": "This policy enables you to specify the resource types that your organization cannot deploy.",
    "parameters": {
      "listOfResourceTypesNotAllowed": {
        "type": "Array",
        "metadata": {
          "description": "The list of resource types that cannot be deployed.",
          "displayName": "Not allowed resource types",
          "strongType": "resourceTypes"
        }
      }
    },
    "policyRule": {
      "if": {
        "field": "type",
        "in": "[parameters('listOfResourceTypesNotAllowed')]"
      },
      "then": {
        "effect": "Deny"
      }
    }
  },
  "id": "/providers/Microsoft.Authorization/policyDefinitions/6c112d4e-5bc7-47ae-a041-ea2d9dccd749",
  "type": "Microsoft.Authorization/policyDefinitions",
  "name": "6c112d4e-5bc7-47ae-a041-ea2d9dccd749"
}

このテンプレートは、Azure PortalPowerShell、または Azure CLI を使用してデプロイできます。You can deploy this template using the Azure portal, with PowerShell or with the Azure CLI.

ポータルでのデプロイDeploy with the portal

ポリシーのサンプルを Azure にデプロイするDeploy the Policy sample to Azure

PowerShell でデプロイするDeploy with PowerShell

このサンプルには、Azure PowerShell が必要です。This sample requires Azure PowerShell. バージョンを確認するには、Get-Module -ListAvailable Az を実行します。Run Get-Module -ListAvailable Az to find the version. インストールまたはアップグレードする必要がある場合は、Azure PowerShell モジュールのインストールに関するページを参照してください。If you need to install or upgrade, see Install Azure PowerShell module.

Connect-AzAccount コマンドレットを実行して Azure に接続します。Run the Connect-AzAccount cmdlet to connect to Azure.

$definition = New-AzPolicyDefinition -Name "not-allowed-resourcetypes" -DisplayName "Not allowed resource types" -description "This policy enables you to specify the resource types that your organization cannot deploy." -Policy 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/built-in-policy/not-allowed-resourcetypes/azurepolicy.rules.json' -Parameter 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/built-in-policy/not-allowed-resourcetypes/azurepolicy.parameters.json' -Mode All
$definition
$assignment = New-AzPolicyAssignment -Name <assignmentname> -Scope <scope>  -listOfResourceTypesNotAllowed <Not allowed resource types> -PolicyDefinition $definition
$assignment

PowerShell でのデプロイをクリーンアップするClean up PowerShell deployment

次のコマンドを実行して、リソース グループ、VM、すべての関連リソースを削除します。Run the following command to remove the resource group, VM, and all related resources.

Remove-AzResourceGroup -Name myResourceGroup

Azure CLI でのデプロイDeploy with Azure CLI

このサンプルを実行するには、最新バージョンの Azure CLI をインストールします。To run this sample, install the latest version of the Azure CLI. 開始するには、az login を実行して、Azure との接続を作成します。To start, run az login to create a connection with Azure.

Azure CLI のサンプルは、bash シェル用に記述されています。Samples for the Azure CLI are written for the bash shell. このサンプルを Windows PowerShell またはコマンド プロンプトで実行するには、スクリプトの要素を変更する必要があります。To run this sample in Windows PowerShell or Command Prompt, you may need to change elements of the script.

az policy definition create --name 'not-allowed-resourcetypes' --display-name 'Not allowed resource types' --description 'This policy enables you to specify the resource types that your organization cannot deploy.' --rules 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/built-in-policy/not-allowed-resourcetypes/azurepolicy.rules.json' --params 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/built-in-policy/not-allowed-resourcetypes/azurepolicy.parameters.json' --mode All

az policy assignment create --name <assignmentname> --scope <scope> --policy "not-allowed-resourcetypes"

Azure CLI でのデプロイをクリーンアップするClean up Azure CLI deployment

次のコマンドを実行して、リソース グループ、VM、すべての関連リソースを削除します。Run the following command to remove the resource group, VM, and all related resources.

az group delete --name myResourceGroup --yes

次の手順Next steps