評估新 Azure 原則定義的影響
Azure 原則是一項功能強大的工具,可讓您管理 Azure 資源,以符合商務標準合規需求。 當人員、程序或管線建立或更新資源時,Azure 原則會檢閱要求。 當原則定義效果修改、附加或 deployIfNotExists 時,原則會改變要求或新增至該要求。 當原則定義效果為 稽核 或 auditIfNotExists 時,原則會針對新的和更新的資源建立活動記錄專案。 當原則定義效果是 拒絕 或 denyAction 時,原則會停止建立或變更要求。
若您確知原則已正確定義,這些結果就會完全符合預期。 不過,請務必先驗證新的原則可如預期運作,再允許該原則變更或封鎖工作。 此驗證必須確定只有預期的資源會被認定為不符合規範,而不會誤將符合規範的資源包含在結果中 (也稱為誤判為真)。
驗證新原則定義的建議方法為遵循下列這些步驟:
- 嚴格定義原則。
- 測試原則的有效性。
- 稽核新的或更新的資源要求。
- 將原則部署至資源。
- 持續監視。
嚴格定義原則
請務必了解如何將商務原則實作為原則定義,以及 Azure 資源與其他 Azure 服務的關聯性。 此步驟可藉由識別需求和確認資源屬性來完成。 但也務必察覺您商務原則狹義之外的涵義。 例如,您的原則會指出 [所有 虛擬機器 都必須...?其他使用 VM 的 Azure 服務,例如 HDInsight 或 Azure Kubernetes Service (AKS)呢? 定義原則時,必須考慮此原則會如何影響其他服務所使用的資源。
基於此原因,應該盡可能嚴格地定義您的原則定義,並專注於您需要評估合規性的資源與屬性。
測試原則的有效性
使用新原則定義來管理新的或已更新的資源之前,最好先了解其如何評估受限的一部分現有資源,例如測試資源群組。 Azure 原則 VS Code 延伸模組可讓您使用隨選評估掃描,針對現有的 Azure 資源隔離測試定義。 您也可以在原則指派上使用強制模式 Disabled (doNotEnforce) 在開發環境中指派定義,以防止觸發或活動記錄專案建立效果。
此步驟可讓您在不影響工作流程的情況下,評估新原則用於現有資源時的合規性結果。 請確認沒有符合規範的資源顯示為不符合規範 (誤判為真),且所有預期不符合規範的資源均正確標示。 初始資源子集經驗證符合預期後,請漸次對更多現有資源和更多範圍進行評估。
以此方式評估現有資源也可在完整實作新原則之前,針對補救不符合規範的資源提供機會。 如果原則定義效果為 或 ,則可以手動或透過補救工作來完成此清除。modify
deployIfNotExists
使用 deployIfNotExists
的原則定義應該使用 Azure Resource Manager 範本,以 驗證和測試部署 ARM 範本時發生的變更。
稽核新的或已更新的資源
驗證新的原則定義正確報告現有資源之後,是時候在建立或更新資源時查看原則的效果了。 如果原則定義支援效果參數化,請使用 audit 或 auditIfNotExist。 此組態可讓您監視資源的建立和更新,以查看新原則定義是否觸發 Azure 活動記錄中不符合規範之資源的專案,而不會影響現有的工作或要求。
建議更新並建立符合原則定義的新資源,以查看 audit
預期時觸發或 auditIfNotExists
效果。 請留意不應受到觸發 audit
或 auditIfNotExists
效果之新原則定義影響的資源要求。 這些受影響的資源也屬於「誤判為真」,必須先在原則定義中修正,才能進行完整實作。
如果原則定義在這個測試階段變更,建議是透過現有資源的稽核開始驗證程式。 對於新資源或更新資源而言,誤判為誤判的原則定義可能會對現有資源產生影響。
將原則部署至資源
使用現有資源及新的或已更新的資源完成新原則定義的驗證之後,將開始實作原則的程序。 建議先建立新原則定義的原則指派給所有資源子集,例如資源群組。 您可以使用原則指派內的 resourceSelectors 屬性,進一步依資源類型或位置進行篩選。 驗證初始部署之後,請將原則的範圍延伸至更廣泛的資源群組。 驗證初始部署之後,藉由調整 resourceSelector
篩選以鎖定更多位置或資源類型,來展開原則的效果。 或者,移除指派,並將它取代為訂用帳戶和管理群組等更廣泛範圍的新指派。 繼續此漸進式推出,直到指派給新原則定義所要涵蓋之資源的完整範圍為止。
推出期間,若發現應該從新原則定義中免除資源,則依照下列方式加以處理:
- 將原則定義更新為更明確,以減少非預期的效果。
- 變更原則指派的範圍 (藉由移除指派並建立新的指派)。
- 將資源群組新增至原則指派的排除清單。
任何範圍變更 (層級或排除項目) 都應經過完整驗證,並傳達給您的安全性與合規性組織,以確保涵蓋範圍沒有任何缺口。
監視原則與合規性
實作及指派原則定義並不是最後步驟。 持續監視資源在新原則定義下的合規性層級,並設定適當的 Azure 監視器警示和通知,在識別出不符合規範的裝置時使用。 建議是根據排程評估原則定義和相關指派,以驗證原則定義符合商務原則和合規性需求。 若不再需要原則,應該將其移除。 隨著基礎 Azure 資源的演變以及新增屬性和功能,原則也必須適時更新。
下一步
- 了解原則定義結構。
- 了解原則指派結構。
- 了解如何以程式設計方式建立原則。
- 了解如何取得合規性資料。
- 了解如何補救不符合規範的資源。
- 透過使用 Azure 管理群組來組織資源來檢閱何謂管理群組。