New-AzPolicyExemption
정책 예외를 만들거나 업데이트합니다.
구문
New-AzPolicyExemption
-Name <String>
-ExemptionCategory <String>
-PolicyAssignment <PSObject>
[-Scope <String>]
[-PolicyDefinitionReferenceId <String[]>]
[-AssignmentScopeValidation <String>]
[-DisplayName <String>]
[-Description <String>]
[-ExpiresOn <DateTime>]
[-Metadata <String>]
[-ResourceSelector <IResourceSelector[]>]
[-BackwardCompatible]
[-DefaultProfile <PSObject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
New-AzPolicyExemption cmdlet은 지정된 범위와 이름으로 정책 예외를 만듭니다.
예제
예제 1: 구독 수준에서 정책 예외
$Subscription = Get-AzSubscription -SubscriptionName 'Subscription01'
$Assignment = Get-AzPolicyAssignment -Name 'VirtualMachinePolicyAssignment'
New-AzPolicyExemption -Name 'VirtualMachinePolicyExemption' -PolicyAssignment $Assignment -Scope "/subscriptions/$($Subscription.Id)" -ExemptionCategory Waiver
첫 번째 명령은 Get-AzSubscription cmdlet을 사용하여 Subscription01이라는 구독을 가져오고 $Subscription 변수에 저장합니다. 두 번째 명령은 Get-AzPolicyAssignment cmdlet을 사용하여 VirtualMachinePolicyAssignment라는 정책 할당을 가져오고 $Assignment 변수에 저장합니다. 최종 명령은 구독 범위 문자열로 식별되는 구독 수준에서 $Assignment 정책 할당을 제외합니다.
예제 2: 리소스 그룹 수준에서 정책 예외
$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$Assignment = Get-AzPolicyAssignment -Name 'VirtualMachinePolicyAssignment'
New-AzPolicyExemption -Name 'VirtualMachinePolicyAssignment' -PolicyAssignment $Assignment -Scope $ResourceGroup.ResourceId -ExemptionCategory Mitigated
첫 번째 명령은 Get-AzResourceGroup cmdlet을 사용하여 ResourceGroup11이라는 리소스 그룹을 가져오고 $ResourceGroup 변수에 저장합니다. 두 번째 명령은 Get-AzPolicyAssignment cmdlet을 사용하여 VirtualMachinePolicyAssignment라는 정책 할당을 가져오고 $Assignment 변수에 저장합니다. 최종 명령은 $ResourceGroup ResourceId 속성으로 식별되는 리소스 그룹 수준에서 $Assignment 정책 할당을 제외합니다.
예제 3: 관리 그룹 수준에서 정책 예외
$ManagementGroup = Get-AzManagementGroup -GroupName 'AManagementGroup'
$Assignment = Get-AzPolicyAssignment -Name 'VirtualMachinePolicyAssignment'
New-AzPolicyExemption -Name 'VirtualMachinePolicyAssignment' -PolicyAssignment $Assignment -Scope $ManagementGroup.Id -ExemptionCategory Mitigated
첫 번째 명령은 Get-AzManagementGroup cmdlet을 사용하여 AManagementGroup이라는 관리 그룹을 가져오고 $ManagementGroup 변수에 저장합니다. 두 번째 명령은 Get-AzPolicyAssignment cmdlet을 사용하여 VirtualMachinePolicyAssignment라는 정책 할당을 가져오고 $Assignment 변수에 저장합니다. 최종 명령은 $ManagementGroup ID 속성으로 식별되는 관리 그룹 수준에서 $Assignment 정책 할당을 제외합니다.
예제 4: 리소스 수준에서 정책 예외
$VM = Get-AzVM -Name 'SpecialVM'
$Assignment = Get-AzPolicyAssignment -Name 'VirtualMachinePolicyAssignment'
New-AzPolicyExemption -Name 'VirtualMachinePolicyAssignment' -PolicyAssignment $Assignment -Scope $SpecialVM.Id -ExemptionCategory Waiver
첫 번째 명령은 Get-AzVM cmdlet을 사용하여 SpecialVM이라는 VM을 가져오고 $VM 변수에 저장합니다. 두 번째 명령은 Get-AzPolicyAssignment cmdlet을 사용하여 VirtualMachinePolicyAssignment라는 정책 할당을 가져오고 $Assignment 변수에 저장합니다. 최종 명령은 $Assignment 정책 할당에서 $VM ID 속성으로 식별되는 리소스를 제외합니다.
예제 5: 리소스 선택기를 사용하는 정책 예외
$Assignment = Get-AzPolicyAssignment -Name 'VirtualMachineAssignment'
$ResourceSelector = @{Name = "MyLocationSelector"; Selector = @(@{Kind = "resourceLocation"; In = @("eastus", "eastus2")})}
New-AzPolicyExemption -Name 'VirtualMachinePolicyExemption' -PolicyAssignment $Assignment -ResourceSelector $ResourceSelector
첫 번째 명령은 Get-AzPolicyAssignment cmdlet을 사용하여 VirtualMachineAssignment라는 정책 할당을 가져오고 $Assignment 변수에 저장합니다. 두 번째 명령은 예외를 지정하는 데 사용할 리소스 선택기 개체를 만들어 미국 동부 또는 미국 동부 2에 있는 리소스에만 적용하고 $ResourceSelector 변수에 저장합니다. 최종 명령은 $ResourceSelector 지정된 리소스 선택기를 사용하여 할당 $Assignment 대한 정책 예외를 만듭니다.
매개 변수
-AssignmentScopeValidation
예외의 유효성을 검사할지 여부가 할당 범위 아래에 있는지 여부입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-BackwardCompatible
cmdlet이 속성 모음 개체에 정책별 속성을 배치하는 레거시 형식을 사용하여 아티팩트를 반환하도록 합니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Confirm
cmdlet을 실행하기 전에 확인 메시지를 표시합니다.
형식: | SwitchParameter |
별칭: | cf |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DefaultProfile
DefaultProfile 매개 변수가 작동하지 않습니다. 다른 구독에 대해 cmdlet을 실행하는 경우 사용 가능한 경우 SubscriptionId 매개 변수를 사용합니다.
형식: | PSObject |
별칭: | AzureRMContext, AzureCredential |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Description
이 메시지는 정책 위반의 경우 응답의 일부가 됩니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-DisplayName
정책 할당의 표시 이름입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ExemptionCategory
정책 예외 범주
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ExpiresOn
정책 예외의 만료 날짜 및 시간(UTC ISO 8601 형식 yyyy-MM-ddTHH:mm:ssZ)입니다.
형식: | Nullable<T>[DateTime] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Metadata
정책 할당 메타데이터입니다. 메타데이터는 열려 있는 종료된 개체이며 일반적으로 키 값 쌍의 컬렉션입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Name
정책 예외의 이름입니다.
형식: | String |
별칭: | PolicyExemptionName |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-PolicyAssignment
정책 할당 ID 필터입니다.
형식: | PSObject |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-PolicyDefinitionReferenceId
연결된 정책 할당이 정책 집합(이니셔티브)에 대한 경우 정책 정의 참조 ID 목록입니다.
형식: | String[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-ResourceSelector
리소스 속성별로 정책을 필터링할 리소스 선택기 목록입니다.
형식: | IResourceSelector[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Scope
정책 예외의 범위입니다. 유효한 범위는 관리 그룹(형식: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), 구독(형식: '/subscriptions/{subscriptionId}'), 리소스 그룹(형식: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', 또는 리소스(형식: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'
형식: | String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-WhatIf
cmdlet이 실행되면 어떻게 되는지 보여 주세요. cmdlet이 실행되지 않습니다.
형식: | SwitchParameter |
별칭: | wi |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
Nullable<T>[[System.DateTime, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]
String[]
출력
Azure PowerShell