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
次のステップ
使用可能な他のサーバー管理ツールやサービスについて学習します。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示