New-AzPolicyAttestation
建立原則指派的新原則證明。
語法
New-AzPolicyAttestation
-Name <String>
[-Scope <String>]
[-ResourceGroupName <String>]
-PolicyAssignmentId <String>
[-ComplianceState <String>]
[-PolicyDefinitionReferenceId <String>]
[-ExpiresOn <DateTime>]
[-Owner <String>]
[-Comment <String>]
[-Evidence <PSAttestationEvidence[]>]
[-AssessmentDate <DateTime>]
[-Metadata <String>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-AzPolicyAttestation
-ResourceId <String>
-PolicyAssignmentId <String>
[-ComplianceState <String>]
[-PolicyDefinitionReferenceId <String>]
[-ExpiresOn <DateTime>]
[-Owner <String>]
[-Comment <String>]
[-Evidence <PSAttestationEvidence[]>]
[-AssessmentDate <DateTime>]
[-Metadata <String>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
New-AzPolicyAttestation Cmdlet 會針對特定原則指派建立原則證明。 Azure 原則會使用證明來設定以手動原則為目標之資源或範圍的合規性狀態。 它們也可讓使用者提供額外的中繼資料或連結至隨附證明合規性狀態的辨識項。
範例
範例 1:在訂用帳戶範圍建立證明
Set-AzContext -Subscription "d1acb22b-c876-44f7-b08e-3fcf9f6767f4"
$policyAssignmentId = "/subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/providers/microsoft.authorization/policyassignments/psattestationsubassignment"
$attestationName = "attestation-subscription"
New-AzPolicyAttestation -PolicyAssignmentId $policyAssignmentId -Name $attestationName -ComplianceState "Compliant"
Id : /subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/providers/microsoft.policyinsights
/attestations/attestation-subscription
Name : attestation-subscription
Type : Microsoft.PolicyInsights/attestations
PolicyAssignmentId : /subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/providers/microsoft.authorization/
policyassignments/psattestationsubassignment
PolicyDefinitionReferenceId :
ComplianceState : Compliant
ExpiresOn :
Owner :
Comment :
Evidence :
ProvisioningState : Succeeded
LastComplianceStateChangeAt : 1/27/2023 2:26:24 AM
AssessmentDate :
Metadata :
SystemData :
此命令會在指定原則指派的訂用帳戶 'd1acb22b-c876-44f7-b08e-3fcf9f6767f4' 建立新的原則證明。
注意: 此命令會建立訂用帳戶的證明,而不是其下方的資源。 為了方便管理,應將手動原則設計為以定義需要證明其合規性狀態之資源界限的範圍為目標。 在此情況下,手動原則應以 為目標
Microsoft.Resources/subscriptions
。 如需詳細資訊,請移至 以瞭解 https://learn.microsoft.com/en-us/azure/governance/policy/concepts/attestation-structure 建立證明的最佳做法。
範例 2:在資源群組建立證明
$policyAssignmentId = "/subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/providers/microsoft.authorization/policyassignments/psattestationrgassignment"
$attestationName = "attestation-RG"
$rgName = "ps-attestation-test-rg"
New-AzPolicyAttestation -ResourceGroupName $RGName -PolicyAssignmentId $policyAssignmentId -Name $attestationName -ComplianceState "Compliant"
Id : /subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/resourcegroups/ps-attestation-test
-rg/providers/microsoft.policyinsights/attestations/attestation-rg
Name : attestation-RG
Type : Microsoft.PolicyInsights/attestations
PolicyAssignmentId : /subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/providers/microsoft.authorization/
policyassignments/psattestationrgassignment
PolicyDefinitionReferenceId :
ComplianceState : Compliant
ExpiresOn :
Owner :
Comment :
Evidence :
ProvisioningState : Succeeded
LastComplianceStateChangeAt : 1/27/2023 2:35:28 AM
AssessmentDate :
Metadata :
SystemData :
此命令會在指定原則指派的資源群組 『ps-attestation-test-rg』 上建立新的原則證明。
注意: 此命令會建立資源群組的證明,而不是其下方的資源。 為了方便管理,應將手動原則設計為以定義需要證明其合規性狀態之資源界限的範圍為目標。 在此情況下,手動原則應以 為目標
Microsoft.Resources/subscriptions/resourceGroups
。 如需詳細資訊,請移至 以瞭解 https://learn.microsoft.com/en-us/azure/governance/policy/concepts/attestation-structure 建立證明的最佳做法。
範例 3:在資源建立證明
$policyAssignmentId = "/subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/providers/microsoft.authorization/policyassignments/psattestationresourceassignment"
$attestationName = "attestation-resource"
$scope = "/subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/resourceGroups/ps-attestation-test-rg/providers/Microsoft.Network/networkSecurityGroups/pstests0"
New-AzPolicyAttestation `
-PolicyAssignmentId $policyAssignmentId `
-Name $attestationName `
-Scope $scope `
-ComplianceState "NonCompliant"
Id : /subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/resourcegroups/ps-attestation-test
-rg/providers/microsoft.network/networksecuritygroups/pstests0/providers/microsoft.pol
icyinsights/attestations/attestation-resource
Name : attestation-resource
Type : Microsoft.PolicyInsights/attestations
PolicyAssignmentId : /subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/providers/microsoft.authorization/
policyassignments/psattestationresourceassignment
PolicyDefinitionReferenceId :
ComplianceState : NonCompliant
ExpiresOn :
Owner :
Comment :
Evidence :
ProvisioningState : Succeeded
LastComplianceStateChangeAt : 1/27/2023 2:38:17 AM
AssessmentDate :
Metadata :
SystemData :
此命令會針對指定的原則指派,建立資源 『pstests0』 的證明。
範例 4:使用資源群組的所有屬性建立證明
$attestationName = "attestationRGAllProps"
$policyInitiativeAssignmentId = "/subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/providers/microsoft.authorization/policyassignments/psattestationinitiativergassignment"
$policyDefinitionReferenceId = "PSTestAttestationRG_1"
$RGName = "ps-attestation-test-rg"
$description = "This is a test description"
$sourceURI = "https://contoso.org/test.pdf"
$evidence = @{
"Description"=$description
"SourceUri"=$sourceURI
}
$policyEvidence = @($evidence)
$owner = "Test Owner"
$expiresOn = [datetime]::UtcNow.AddYears(1)
$metadata = '{"TestKey":"TestValue"}'
New-AzPolicyAttestation `
-Name $attestationName `
-ResourceGroupName $RGName `
-PolicyAssignmentId $policyInitiativeAssignmentId `
-PolicyDefinitionReferenceId $policyDefinitionReferenceId `
-ComplianceState $Compliant `
-Comment $comment `
-Evidence $policyEvidence `
-ExpiresOn $expiresOn `
-AssessmentDate $expiresOn.AddDays(-2) `
-Owner $owner `
-Metadata $metadata
Id : /subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/resourcegroups/ps-attestation-test
-rg/providers/microsoft.policyinsights/attestations/attestationrgallprops
Name : attestationRGAllProps
Type : Microsoft.PolicyInsights/attestations
PolicyAssignmentId : /subscriptions/d1acb22b-c876-44f7-b08e-3fcf9f6767f4/providers/microsoft.authorization/
policyassignments/psattestationinitiativergassignment
PolicyDefinitionReferenceId : pstestattestationrg_1
ComplianceState :
ExpiresOn : 1/27/2024 2:51:54 AM
Owner : Test Owner
Comment :
Evidence : {Microsoft.Azure.Commands.PolicyInsights.Models.Attestations.PSAttestationEvidence}
ProvisioningState : Succeeded
LastComplianceStateChangeAt : 1/27/2023 2:51:57 AM
AssessmentDate : 1/25/2024 2:51:54 AM
Metadata : {
"TestKey": "TestValue"
}
SystemData :
參數
-AssessmentDate
評估證明證據的時間。
類型: | Nullable<T>[DateTime] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Comment
描述建立此證明原因的批注。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ComplianceState
資源的合規性狀態。 例如'符合規範'、'NonCompliant'、'Unknown'
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Confirm
執行 Cmdlet 之前先提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DefaultProfile
用於與 Azure 通訊的認證、帳戶、租用戶和訂用帳戶。
類型: | IAzureContextContainer |
別名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Evidence
支援此證明中設定合規性狀態的證據。
類型: | PSAttestationEvidence[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ExpiresOn
證明中設定合規性狀態的時間應該過期。
類型: | Nullable<T>[DateTime] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Metadata
證明的其他元數據。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Name
資源名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-Owner
負責設定資源狀態的人員。 此值通常是Microsoft Entra 對象識別碼。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-PolicyAssignmentId
原則指派標識碼。 例如 '/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policyAssignments/{assignmentName}'。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-PolicyDefinitionReferenceId
個別定義的原則定義參考標識碼。 當原則指派指派原則集定義時為必要專案。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ResourceGroupName
資源組名。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ResourceId
資源標識碼。
類型: | String |
別名: | Id |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-Scope
資源的範圍。 例如 '/subscriptions/{subscriptionId}/resourceGroups/{rgName}'。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
Nullable<T>[[System.DateTime, System.Private.CoreLib, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]