次の方法で共有


Azure Policy の一般的な例

Azure Policy は、お使いのクラウド リソースにガバナンスを適用するのに役立ちます。 このサービスは、ガバナンス ポリシー要件への会社全体のコンプライアンスを確実にするためのガードレールを作成するのに役立ちます。 ポリシーを作成するには、Azure portal または PowerShell コマンドレットを使用します。 この記事では、PowerShell コマンドレットの例を紹介します。

注意

Azure Policy を使用した場合、強制ポリシー (DeployIfNotExists) が自動的に既存の VM にデプロイされることはありません。 VM のコンプライアンスを維持するには、修復が必要です。 詳細については、「Azure Policy を使って準拠していないリソースを修復する」を参照してください。

一般的なポリシーの例

以降のセクションでは、いくつかのよく使用されるポリシーについて説明します。

リソースのリージョンの制限

規制とポリシーのコンプライアンスは、多くの場合、リソースがデプロイされている物理的な場所の制御に依存します。 組み込みポリシーを使用すると、ユーザーは、特定の許可された Azure リージョン内のみにリソースを作成できます。

ポータルでこのポリシーを見つけるには、ポリシー定義ページで、[場所] で検索します。 または、次のコマンドレットを実行してポリシーを見つけます。

Get-AzPolicyDefinition | Where-Object { ($_.Properties.policyType -eq 'BuiltIn') `
  -and ($_.Properties.displayName -like '*location*') }

次のスクリプトでは、ポリシーの割り当て方法を示しています。 ポリシーを割り当てるサブスクリプションを指すように $SubscriptionID を変更します。 スクリプトを実行する前に、Connect-AzAccount コマンドレットを使用してサインインします。


# Specify the value for $SubscriptionID.

$SubscriptionID = <subscription ID>
$scope = "/subscriptions/$SubscriptionID"

# Replace the -Name GUID with the policy GUID you want to assign.

$AllowedLocationPolicy = Get-AzPolicyDefinition -Name "e56962a6-4747-49cd-b67b-bf8b01975c4c"

# Replace the locations with the ones you want to specify.

$policyParam = '{ "listOfAllowedLocations":{"value":["eastus","westus"]}}'
New-AzPolicyAssignment -Name "Allowed Location" -DisplayName "Allowed locations for resource creation" -Scope $scope -PolicyDefinition $AllowedLocationPolicy -Location eastus -PolicyParameter $policyParam

このスクリプトを使用して、この記事で説明している他のポリシーを適用することもできます。 $AllowedLocationPolicy が設定されている行の GUID を、適用するポリシーの GUID に置き換えるだけです。

特定のリソースの種類のブロック

コストの管理に使用される別の一般的な組み込みポリシーを使用して、特定のリソースの種類をブロックすることもできます。

ポータルでこのポリシーを見つけるには、ポリシー定義ページで、[使用できるリソースの種類] で検索します。 または、次のコマンドレットを実行してポリシーを見つけます。

Get-AzPolicyDefinition | Where-Object { ($_.Properties.policyType -eq "BuiltIn") -and ($_.Properties.displayName -like "*allowed resource types") }

使用するポリシーを識別した後、「リソースのリージョンの制限」セクションにある PowerShell サンプルを変更して、このポリシーを割り当てることができます。

VM サイズの制限

Azure では、さまざまなワークロードをサポートするための幅広い VM サイズが提供されています。 予算を管理するために、ご自身のサブスクリプション内で VM サイズのサブセットのみを許可するポリシーを作成できます。

マルウェア対策のデプロイ

このポリシーを使用すると、マルウェア対策で保護されていない VM に、既定の構成を使用した Microsoft Antimalware 拡張機能をデプロイできます。

ポリシーの GUID は 2835b622-407b-4114-9198-6f7064cbe0dc です。

次のスクリプトでは、ポリシーの割り当て方法を示しています。 スクリプトを使用するには、ポリシーを割り当てるサブスクリプションを指すように $SubscriptionID を変更します。 スクリプトを実行する前に、Connect-AzAccount コマンドレットを使用してサインインします。


# Specify the value for $SubscriptionID.

$subscriptionID = <subscription ID>
$scope = "/subscriptions/$subscriptionID"

$antimalwarePolicy = Get-AzPolicyDefinition -Name "2835b622-407b-4114-9198-6f7064cbe0dc"

# Replace location "eastus" with the value that you want to use.

New-AzPolicyAssignment -Name "Deploy Antimalware" -DisplayName "Deploy default Microsoft IaaSAntimalware extension for Windows Server" -Scope $scope -PolicyDefinition $antimalwarePolicy -Location eastus -AssignIdentity

次のステップ

使用可能な他のサーバー管理ツールやサービスについて学習します。