Azure Policy 定義構造の別名
リソースの種類に固有のプロパティにアクセスするには、プロパティのエイリアスを使用します。 エイリアスを使用すると、リソースのプロパティで許可される値または条件を制限できます。 各エイリアスは、特定のリソースの種類について異なる API バージョンのパスにマップされます。 ポリシーの評価時に、ポリシー エンジンはその API バージョンのプロパティ パスを取得します。
エイリアスの一覧は常に拡大しています。 Azure Policy でサポートされている別名を見つけるには、次のいずれかの方法を使用します。
Visual Studio Code 用の Azure Policy 拡張機能 (推奨)
Visual Studio Code 用の Azure Policy 拡張機能を使用してリソース プロパティのエイリアスの表示と検出を行う方法について説明します。
Azure PowerShell
# Login first with Connect-AzAccount if not using Cloud Shell # Use Get-AzPolicyAlias to list available providers Get-AzPolicyAlias -ListAvailable # Use Get-AzPolicyAlias to list aliases for a Namespace (such as Azure Compute -- Microsoft.Compute) (Get-AzPolicyAlias -NamespaceMatch 'compute').Aliases
注意
modify 効果で使用できるエイリアスを検索するには、Azure PowerShell 4.6.0 以上で次のコマンドを使用します。
Get-AzPolicyAlias | Select-Object -ExpandProperty 'Aliases' | Where-Object { $_.DefaultMetadata.Attributes -eq 'Modifiable' }
Azure CLI
# Login first with az login if not using Cloud Shell # List namespaces az provider list --query [*].namespace # Get Azure Policy aliases for a specific Namespace (such as Azure Compute -- Microsoft.Compute) az provider show --namespace Microsoft.Compute --expand "resourceTypes/aliases" --query "resourceTypes[].aliases[].name"
REST API
GET https://management.azure.com/providers/?api-version=2019-10-01&$expand=resourceTypes/aliases
配列別名について
利用できるいくつかの別名には、通常の名前で表示されるバージョンと、それに [*]
が添付された別のバージョンがあり、これが配列別名です。 次に例を示します。
Microsoft.Storage/storageAccounts/networkAcls.ipRules
Microsoft.Storage/storageAccounts/networkAcls.ipRules[*]
通常の別名では、フィールドは 1 つの値として表されます。 このフィールドは完全一致の比較シナリオ用で、値のセット全体を正確に定義する必要があります。
配列別名
[*]
は、配列リソース プロパティの要素から選択された値のコレクションを表します。 次に例を示します。
エイリアス | 選択された値 |
---|---|
Microsoft.Storage/storageAccounts/networkAcls.ipRules[*] |
ipRules 配列の要素。 |
Microsoft.Storage/storageAccounts/networkAcls.ipRules[*].action |
ipRules 配列の各要素の action プロパティの値。 |
フィールド条件で使用すると、配列のエイリアスによって、個々の配列要素をターゲット値と比較できるようになります。 count 式と共に使用すると、次のことが可能になります。
- 配列のサイズを確認する。
- 配列要素のすべてまたはいずれかが複雑な条件を満たしているかどうか、またはいずれも満たしていないかを確認します。
- 厳密に
n
個の配列要素が複雑な条件を満たしているかどうかを確認します。
詳細および例については、「配列リソース プロパティを参照する」を参照してください。
次のステップ
- ポリシー定義の構造の詳細については、基本、パラメータ、ポリシー規則に移動します。
- イニシアティブの場合は、イニシアティブ定義の構造に移動します。
- Azure Policy のサンプルを確認します。
- 「Policy の効果について」を確認します。
- プログラムによってポリシーを作成する方法を理解します。
- コンプライアンス データを取得する方法を学習します。
- 準拠していないリソースを修復する方法を学習します。
- 「Azure 管理グループのリソースを整理する」で、管理グループとは何かを確認します。