次の方法で共有


Get-AzPolicyState

リソースのポリシー コンプライアンス状態を取得します。

構文

Get-AzPolicyState
   [-All]
   [-SubscriptionId <String>]
   [-Top <Int32>]
   [-OrderBy <String>]
   [-Select <String>]
   [-From <DateTime>]
   [-To <DateTime>]
   [-Filter <String>]
   [-Apply <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzPolicyState
   [-All]
   -ManagementGroupName <String>
   [-Top <Int32>]
   [-OrderBy <String>]
   [-Select <String>]
   [-From <DateTime>]
   [-To <DateTime>]
   [-Filter <String>]
   [-Apply <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzPolicyState
   [-All]
   [-SubscriptionId <String>]
   -ResourceGroupName <String>
   [-Top <Int32>]
   [-OrderBy <String>]
   [-Select <String>]
   [-From <DateTime>]
   [-To <DateTime>]
   [-Filter <String>]
   [-Apply <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzPolicyState
   [-All]
   -ResourceId <String>
   [-Top <Int32>]
   [-OrderBy <String>]
   [-Select <String>]
   [-From <DateTime>]
   [-To <DateTime>]
   [-Filter <String>]
   [-Apply <String>]
   [-Expand <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzPolicyState
   [-All]
   [-SubscriptionId <String>]
   -PolicySetDefinitionName <String>
   [-Top <Int32>]
   [-OrderBy <String>]
   [-Select <String>]
   [-From <DateTime>]
   [-To <DateTime>]
   [-Filter <String>]
   [-Apply <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzPolicyState
   [-All]
   [-SubscriptionId <String>]
   -PolicyDefinitionName <String>
   [-Top <Int32>]
   [-OrderBy <String>]
   [-Select <String>]
   [-From <DateTime>]
   [-To <DateTime>]
   [-Filter <String>]
   [-Apply <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzPolicyState
   [-All]
   [-SubscriptionId <String>]
   -PolicyAssignmentName <String>
   [-Top <Int32>]
   [-OrderBy <String>]
   [-Select <String>]
   [-From <DateTime>]
   [-To <DateTime>]
   [-Filter <String>]
   [-Apply <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Get-AzPolicyState
   [-All]
   [-SubscriptionId <String>]
   -ResourceGroupName <String>
   -PolicyAssignmentName <String>
   [-Top <Int32>]
   [-OrderBy <String>]
   [-Select <String>]
   [-From <DateTime>]
   [-To <DateTime>]
   [-Filter <String>]
   [-Apply <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

説明

リソースのポリシー コンプライアンス状態を取得します。 ポリシー状態レコードは、さまざまなスコープで照会できます。 指定された時間間隔 (既定値は最終日) に基づいて、最新のポリシー状態またはすべてのポリシー状態遷移を照会できます。 結果はフィルター処理、グループ化、およびグループ集計を計算できます。

例 1: 現在のサブスクリプション スコープで最新のポリシー状態を取得する

Get-AzPolicyState

現在のセッション コンテキストのサブスクリプション内のすべてのリソースについて、最後の日に生成された最新のポリシー状態レコードを取得します。

例 2: 指定したサブスクリプション スコープの最新のポリシー状態を取得する

Get-AzPolicyState -SubscriptionId "fff10b27-fff3-fff5-fff8-fffbe01e86a5"

指定したサブスクリプション内のすべてのリソースについて、最後の日に生成された最新のポリシー状態レコードを取得します。

例 3: 現在のサブスクリプション スコープ内のすべてのポリシー状態を取得する

Get-AzPolicyState -All

現在のセッション コンテキスト内のサブスクリプション内のすべてのリソースについて、最後の日に生成されたすべてのポリシー状態レコード (最新を含む) を取得します。

例 4: 管理グループ スコープで最新のポリシー状態を取得する

Get-AzPolicyState -ManagementGroupName "myManagementGroup"

指定した管理グループ内のすべてのリソースについて、最後の日に生成された最新のポリシー状態レコードを取得します。

例 5: 現在のサブスクリプションのリソース グループ スコープで最新のポリシー状態を取得する

Get-AzPolicyState -ResourceGroupName "myResourceGroup"

指定したリソース グループ内のすべてのリソース (現在のセッション コンテキストのサブスクリプション内) について、最終日に生成された最新のポリシー状態レコードを取得します。

例 6: 指定したサブスクリプションのリソース グループ スコープで最新のポリシー状態を取得する

Get-AzPolicyState -SubscriptionId "fff10b27-fff3-fff5-fff8-fffbe01e86a5" -ResourceGroupName "myResourceGroup"

指定したリソース グループ (指定したサブスクリプション内) 内のすべてのリソースについて、最終日に生成された最新のポリシー状態レコードを取得します。

例 7: リソースの最新のポリシー状態を取得する

Get-AzPolicyState -ResourceId "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.EventHub/namespaces/myns1/eventhubs/eh1/consumergroups/cg1"

指定したリソースの最後の日に生成された最新のポリシー状態レコードを取得します。

例 8: 現在のサブスクリプションのポリシー セット定義の最新のポリシー状態を取得する

Get-AzPolicyState -PolicySetDefinitionName "fff58873-fff8-fff5-fffc-fffbe7c9d697"

指定されたポリシー セット定義 (現在のセッション コンテキスト内のサブスクリプションに存在する) によって影響を受けるすべてのリソース (現在のセッション コンテキスト内のテナント内) について、最終日に生成された最新のポリシー状態レコードを取得します。

例 9: 指定したサブスクリプションのポリシー セット定義の最新のポリシー状態を取得する

Get-AzPolicyState -SubscriptionId "fff10b27-fff3-fff5-fff8-fffbe01e86a5" -PolicySetDefinitionName "fff58873-fff8-fff5-fffc-fffbe7c9d697"

指定したポリシー セット定義 (指定したサブスクリプションに存在する) によって影響を受けるすべてのリソース (現在のセッション コンテキスト内のテナント内) について、最終日に生成された最新のポリシー状態レコードを取得します。

例 10: 現在のサブスクリプションのポリシー定義の最新のポリシー状態を取得する

Get-AzPolicyState -PolicyDefinitionName "fff58873-fff8-fff5-fffc-fffbe7c9d697"

指定されたポリシー定義 (現在のセッション コンテキストのサブスクリプションに存在する) によって影響を受けるすべてのリソース (現在のセッション コンテキスト内のテナント内) について、最終日に生成された最新のポリシー状態レコードを取得します。

例 11: 指定したサブスクリプションのポリシー定義の最新のポリシー状態を取得する

Get-AzPolicyState -SubscriptionId "fff10b27-fff3-fff5-fff8-fffbe01e86a5" -PolicyDefinitionName "fff58873-fff8-fff5-fffc-fffbe7c9d697"

指定したポリシー定義 (指定したサブスクリプションに存在する) によって影響を受けるすべてのリソース (現在のセッション コンテキスト内のテナント内) について、最終日に生成された最新のポリシー状態レコードを取得します。

例 12: 現在のサブスクリプションのポリシー割り当ての最新のポリシー状態を取得する

Get-AzPolicyState -PolicyAssignmentName "ddd8ef92e3714a5ea3d208c1"

指定されたポリシー割り当て (現在のセッション コンテキスト内のサブスクリプション スコープに存在する) によって影響を受けるすべてのリソース (現在のセッション コンテキスト内のテナント内) について、最終日に生成された最新のポリシー状態レコードを取得します。

例 13: 指定したサブスクリプションと同じスコープを持つポリシー割り当ての最新のポリシー状態を取得する

Get-AzPolicyState -SubscriptionId "fff10b27-fff3-fff5-fff8-fffbe01e86a5" -PolicyAssignmentName "ddd8ef92e3714a5ea3d208c1"

指定したポリシー割り当て (指定したサブスクリプションのサブスクリプション スコープに存在する) によって影響を受けるすべてのリソース (現在のセッション コンテキスト内のテナント内) について、最終日に生成された最新のポリシー状態レコードを取得します。

例 14: 現在のサブスクリプションの指定したリソース グループ内のポリシー割り当ての最新のポリシー状態を取得する

Get-AzPolicyState -ResourceGroupName "myResourceGroup" -PolicyAssignmentName "ddd8ef92e3714a5ea3d208c1"

指定されたポリシー割り当て (現在のセッション コンテキストのサブスクリプション内のリソース グループに存在する) によって影響を受けるすべてのリソース (現在のセッション コンテキスト内のテナント内) について、最終日に生成された最新のポリシー状態レコードを取得します。

例 15: OrderBy、Top、Select クエリ オプションを使用して、現在のサブスクリプション スコープで最新のポリシー状態を取得する

Get-AzPolicyState -OrderBy "Timestamp desc, PolicyAssignmentName asc" -Top 5 -Select "Timestamp, ResourceId, PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionId, IsCompliant"

現在のセッション コンテキストのサブスクリプション内のすべてのリソースについて、最後の日に生成された最新のポリシー状態レコードを取得します。 このコマンドは、タイムスタンプとポリシー割り当て名のプロパティで結果を並べ替え、その順序でリストされている上位 5 つのプロパティのみを受け取ります。 また、各レコードの列のサブセットのみを一覧表示することも選択します。

例 16: 現在のサブスクリプション スコープの最新のポリシー状態を取得し、From クエリと To クエリ オプションを使用する

Get-AzPolicyState -From "2018-03-08 00:00:00Z" -To "2018-03-15 00:00:00Z"

現在のセッション コンテキスト内のサブスクリプション内のすべてのリソースに対して指定された日付範囲内に生成された最新のポリシー状態レコードを取得します。

例 17: フィルター クエリ オプションを使用して、現在のサブスクリプション スコープで最新のポリシー状態を取得する

Get-AzPolicyState -Filter "(PolicyDefinitionAction eq 'deny' or PolicyDefinitionAction eq 'audit') and ComplianceState eq 'NonCompliant' and ResourceLocation ne 'eastus'"

現在のセッション コンテキストのサブスクリプション内のすべてのリソースについて、最後の日に生成された最新のポリシー状態レコードを取得します。 このコマンドは、ポリシー定義アクション (拒否または監査アクションを含む)、コンプライアンス状態 (非準拠状態のみを含む) およびリソースの場所 (eastus の場所を除く) に基づいてフィルター処理によって返される結果を制限します。

例 18: 行数集計の指定を適用して、現在のサブスクリプション スコープで最新のポリシー状態を取得する

Get-AzPolicyState -Apply "aggregate(`$count as NumberOfRecords)"

現在のセッション コンテキスト内のサブスクリプション内のすべてのリソースについて、最後の日に生成された最新のポリシー状態レコードの数を取得します。 このコマンドは、AdditionalProperties プロパティ内で返されるポリシー状態レコードの数のみを返します。

例 19: 現在のサブスクリプション スコープで最新のポリシー状態を取得し、適用で集計を使用してグループ化を指定する

Get-AzPolicyState -Filter "ComplianceState eq 'NonCompliant'" -Apply "groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionReferenceId, PolicyDefinitionId), aggregate(`$count as NumStates))" -OrderBy "NumStates desc" -Top 5

現在のセッション コンテキストのサブスクリプション内のすべてのリソースについて、最後の日に生成された最新のポリシー状態レコードを取得します。 このコマンドは、コンプライアンスの状態に基づいてフィルター処理によって返される結果を制限します (準拠していない状態のみが含まれます)。 ポリシーの割り当て、ポリシー セット定義、およびポリシー定義に基づいて結果をグループ化し、AdditionalProperties プロパティ内で返される各グループ内のレコードの数を計算します。 カウント集計の結果を降順に並べ替え、その順序でリストされている上位 5 つの結果のみを受け取ります。

例 20: 現在のサブスクリプション スコープで最新のポリシーの状態を取得し、適用では集計なしでグループ化を指定する

Get-AzPolicyState -Filter "ComplianceState eq 'NonCompliant'" -Apply "groupby((ResourceId))"

現在のセッション コンテキストのサブスクリプション内のすべてのリソースについて、最後の日に生成された最新のポリシー状態レコードを取得します。 このコマンドは、コンプライアンスの状態に基づいてフィルター処理によって返される結果を制限します (準拠していない状態のみが含まれます)。 リソース ID に基づいて結果がグループ化されます。これにより、少なくとも 1 つのポリシーに準拠していないサブスクリプション内のすべてのリソースの一覧が生成されます。

例 21: 現在のサブスクリプション スコープで最新のポリシー状態を取得し、複数のグループを指定して適用する

Get-AzPolicyState -Filter "ComplianceState eq 'NonCompliant'" -Apply "groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionReferenceId, PolicyDefinitionId, ResourceId))/groupby((PolicyAssignmentId, PolicySetDefinitionId, PolicyDefinitionReferenceId, PolicyDefinitionId), aggregate(`$count as NumNonCompliantResources))" -OrderBy "NumNonCompliantResources desc" -Top 5

現在のセッション コンテキストのサブスクリプション内のすべてのリソースについて、最後の日に生成された最新のポリシー状態レコードを取得します。 このコマンドは、コンプライアンスの状態に基づいてフィルター処理によって返される結果を制限します (準拠していない状態のみが含まれます)。 ポリシーの割り当て、ポリシー セットの定義、ポリシー定義、リソース ID に基づいて、最初に結果をグループ化します。次に、リソース ID を除く同じプロパティを使用してこのグループ化の結果をさらにグループ化し、AdditionalProperties プロパティ内で返される各グループのレコード数を計算します。 カウント集計の結果を降順に並べ替え、その順序でリストされている上位 5 つの結果のみを受け取ります。 これにより、準拠していないリソースの数が最も多い上位 5 つのポリシーが生成されます。

例 22: リソースのポリシー評価の詳細を含む最新のポリシー状態を取得する

Get-AzPolicyState -ResourceId "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.EventHub/namespaces/myns1/eventhubs/eh1/consumergroups/cg1" -Expand "PolicyEvaluationDetails"

指定したリソースの最後の日に生成された最新のポリシー状態レコードを取得し、policyEvaluationDetails を展開します。

例 23: リソース プロバイダー モードのポリシー割り当てによって、リソース (コンテナーなど) の最新のコンポーネント ポリシーの状態を取得する

Get-AzPolicyState -ResourceId "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myvault" -Filter "policyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/ddd8ef92e3714a5ea3d208c1'" -Expand "Components(`$filter=ComplianceState eq 'NonCompliant' or ComplianceState eq 'Compliant')"

リソース プロバイダー モードのポリシー定義を参照するリソース プロバイダー モードのポリシー割り当てにより、指定されたリソースの最後の日に生成された最新のコンポーネント ポリシー状態レコードを取得します。

例 24: リソース プロバイダー モードのポリシー定義を含むポリシー イニシアチブの割り当てが指定された場合、リソース (コンテナーなど) の最新のコンポーネント ポリシー状態を取得する

Get-AzPolicyState -ResourceId "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myvault" -Filter "policyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/ddd8ef92e3714a5ea3d208c1' and policyDefinitionReferenceId eq 'myResourceProviderModeDefinitionReferenceId'" -Expand "Components(`$filter=ComplianceState eq 'NonCompliant' or ComplianceState eq 'Compliant')"

リソース プロバイダー モード ポリシー定義を含むイニシアチブを参照するリソース プロバイダー モード ポリシー割り当てがある場合、指定したリソースの最後の日に生成された最新のコンポーネント ポリシー状態レコードを取得します。

例 25: リソース プロバイダー モードのポリシー割り当てにより、リソース (コンテナーなど) のコンプライアンス状態別に最新のコンポーネント数を取得する

Get-AzPolicyState -ResourceId "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myvault" -Filter "policyAssignmentId eq '/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/ddd8ef92e3714a5ea3d208c1'" -Expand "Components(`$filter=ComplianceState eq 'NonCompliant' or ComplianceState eq 'Compliant' or ComplianceState eq 'Conflict';`$apply=groupby((complianceState),aggregate(`$count as count)))"

リソース プロバイダー モードのポリシー割り当てにより、指定されたリソースのコンプライアンス状態別にグループ化された、最後の日に生成された最新のコンポーネント数を取得します。

例 26: 管理グループ スコープ ポリシー割り当てのポリシーの状態を取得する

Get-AzPolicyState -SubscriptionId "fff10b27-fff3-fff5-fff8-fffbe01e86a5" -Filter "policyAssignmentId eq '/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ddd8ef92e3714a5ea3d208c1'"

指定したポリシー割り当て (指定したサブスクリプションの先祖である管理グループに割り当てられている) の影響を受ける、指定したサブスクリプション内のすべてのリソース (現在のセッション コンテキスト内のテナント内) について、最終日に生成された最新のポリシー状態レコードを取得します。

パラメーター

-All

指定された時間間隔内で、最新の状態ではなく、すべてのポリシー状態を取得します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Apply

OData 表記を使用して集計に式を適用します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-DefaultProfile

Azure との通信のために使用される資格情報、アカウント、テナント、サブスクリプションです。

型:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Expand

OData 表記を使用して式を展開します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Filter

OData 表記を使用して式をフィルター処理します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-From

クエリする間隔の開始時刻を指定する ISO 8601 形式のタイムスタンプ。 指定しない場合、既定値は "To" パラメーター値から 1 日を引いた値になります。

型:DateTime
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ManagementGroupName

管理グループ名。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-OrderBy

OData 表記を使用した式の順序付け。 省略可能な 'desc' (既定値) または 'asc' を持つ 1 つ以上のコンマ区切りの列名。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-PolicyAssignmentName

ポリシー割り当ての名前。 このポリシー割り当てには、パラメーター セットとまったく同じスコープが必要です。 管理グループ スコープ ポリシーの割り当てにすることはできません。 たとえば、 -SubscriptionIdResourceGroupName を指定する場合は、そのリソース グループにポリシーの割り当てを割り当てる必要があります。 -SubscriptionIdのみを指定する場合は、そのサブスクリプションにポリシーの割り当てを割り当てる必要があります。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-PolicyDefinitionName

ポリシー定義の名前。 このポリシー定義は、クエリ対象のサブスクリプションに存在する必要があります。 管理グループ スコープ ポリシー定義にすることはできません。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-PolicySetDefinitionName

ポリシー セット定義の名前。 このポリシー セット定義は、クエリ対象のサブスクリプションに存在する必要があります。 管理グループ スコープ ポリシー セット定義にすることはできません。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-ResourceGroupName

リソース グループ名。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-ResourceId

リソース ID。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Select

OData 表記を使用して式を選択します。 1 つ以上のコンマ区切りの列名。 各レコードの列を、要求された列のみに制限します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-SubscriptionId

[サブスクリプション ID] が表示されます。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-To

クエリする間隔の終了時刻を指定する ISO 8601 形式のタイムスタンプ。 指定しない場合、既定では要求の時刻が設定されます。

型:DateTime
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Top

返す最大レコード数。

型:Int32
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

String

出力

PolicyState