Microsoft AZ-305: 安全架構與零信任 — 學習指南
屬於 Microsoft Azure Solutions Architect Expert AZ-305 — 學習指南. 使用經過驗證的解答練習: Microsoft 考試中心, 或參加限時模擬考試: ExamRoll.io.
總覽
Azure 上的安全架構以「零信任」(Zero Trust) 為基礎:永不信任,一律驗證,明確授權,並假設已遭入侵。架構必須強制執行身分驅動的存取、微分段、強大的資料保護,以及持續的威脅偵測與回應。本節將各個支柱——身分與密鑰、資料保護、網路控制,以及雲端原生威脅防禦——串連起來,形成與 Azure 平台功能一致的整合設計。
身分、密鑰與零信任基礎
零信任始於強大的身分驗證與最低權限原則。每個工作負載和人員身分都應在存取時進行評估,並搭配條件式控制和短期權杖。透過將權限範圍限定在最窄資源邊界上的最小行動集合,來強制執行最低權限原則,並在適用時優先使用 Privileged Identity Management (PIM) 進行即時 (JIT) 權限提升。
Azure Key Vault 是管理密鑰和金鑰的核心。存在兩種資料平面授權模型:
- 存取原則 (Access policies) 是舊版的個別保存庫 ACL 模型。它們授予主體精細的密鑰/金鑰/憑證權限,但無法與 Azure RBAC 拒絕指派或 PIM 整合,且由於其範圍僅限於保存庫,因此會使大規模治理變得複雜。
- Azure RBAC for Key Vault 是現代模型。在保存庫上啟用後,資料平面的權限便由 Azure RBAC 角色(例如 Key Vault Secrets User、Key Vault Crypto Officer)控制,可跨範圍(管理群組、訂用帳戶、資源群組)繼承,支援拒絕指派,並與 PIM 和 Access Reviews 整合。為了保持一致性和集中式治理,請選擇 RBAC;不要在同一個保存庫上混合使用這兩種模型。
虛刪除 (Soft delete) 和清除保護 (purge protection) 可防止意外或惡意遺失。虛刪除會將已刪除的物件保留一段時間(可設定 7-90 天,預設為 90 天),以便復原。啟用清除保護後,即使是高權限使用者,也無法在保留期到期前永久清除已虛刪除的項目。對於生產環境的保存庫,請同時啟用這兩者。Managed HSM 提供由 Azure 控制的專用、經 FIPS 140-2 Level 3 驗證的硬體安全模組。它僅支援金鑰(不支援密鑰/憑證),使用 Azure RBAC 並搭配 Managed HSM Administrator、Crypto Officer 和 Crypto User 等角色,且一律開啟虛刪除和清除保護。當您需要硬體支援的金鑰隔離、仲裁式管理,或針對密碼編譯邊界控制的法規保證時,請使用 Managed HSM。
Azure 受控識別 (Managed Identities) 讓託管於 Azure 的工作負載無需使用憑證。系統指派的身分識別 (System-assigned identities) 與單一資源的生命週期綁定;刪除資源即會刪除該身分識別。它們非常適合需要獨立授權邊界的單一資源(例如 Function App 或 VM)。使用者指派的身分識別 (User-assigned identities) 是獨立的,可以附加到多個資源;當運算資源被替換或擴展時,它們會持續存在,因此適用於叢集、藍/綠部署,或需要在多個執行個體間維持一致身分識別的場景。工作負載透過呼叫位於 169.254.169.254 的執行個體中繼資料服務 (IMDS) 或平台的受控識別端點,來請求資源的存取權杖(例如,針對 Key Vault 的 https://vault.azure.net),從而無需密鑰即可取得權杖。使用 Azure RBAC 將最低權限角色授予目標資源上的身分識別;平台會自動輪替憑證。
Azure AD Workload Identity Federation 讓外部的 CI/CD 和 Kubernetes 無需儲存雲端憑證。對於 GitHub Actions,請在 Azure AD 應用程式上使用 GitHub OIDC 簽發者 (token.actions.githubusercontent.com) 建立一個同盟認證,並依儲存庫、分支或環境進行限制。GitHub 會在執行階段將其 OIDC 權杖交換為 Azure AD 權杖;將 Azure 角色指派給該應用程式,並對每個工作流程強制執行最低權限。對於 Kubernetes (AKS),請在叢集上啟用 OIDC 並設定 Azure AD workload identity。透過同盟認證,將 ServiceAccount 的 OIDC 權杖對應到一個 Azure AD 應用程式或使用者指派的受控識別,然後將 Azure 角色綁定到該身分識別。Pod 會將其投射的 OIDC 權杖交換為 Azure 權杖,以呼叫 Key Vault 或 Storage 等服務——無需密鑰或節點層級的代理程式,且隔離性優於舊版的 aad-pod-identity。
網路切分、邊界防禦與 DDoS 縱深防禦
網路微切分 (micro-segmentation) 能限制橫向移動,並與身分驗證結合以強制執行零信任 (Zero Trust)。Network Security Groups (NSG) 是應用於子網路或網路介面 (NIC) 的具狀態封包過濾器;使用服務標籤 (service tags) 和明確的拒絕規則來限制東西向與南北向的流量,預設拒絕非必要的連接埠,並透過 NSG 流量日誌進行記錄。Application Security Groups (ASG) 將動態的工作負載群組抽象化,讓您可以根據應用程式角色而非 IP 位址來撰寫 NSG 規則,從而實現可隨著自動擴展和暫時性位址而擴充、基於意圖的切分。
Azure Firewall 提供集中化、全狀態的 L3–L7 控制,具備應用程式和網路規則、FQDN 過濾、DNAT/SNAT、基於威脅情資的過濾,以及如 TLS 檢測和 IDPS 等 Premium 功能,可對進出流量進行深度檢測。使用 Firewall Policy 進行基於意圖的設定,並讓設定可跨區域繼承。透過使用者定義路由 (user-defined routes) 將出口流量導向 Azure Firewall,並搭配 Private Endpoints 讓 PaaS 流量不經過公用網際網路。
面向 Web 的應用程式應由 Web 應用程式防火牆 (WAF) 保護。將 WAF 部署在 Application Gateway 上,以實現區域性、整合 VNet 的第七層負載平衡;或部署在 Azure Front Door 上,以獲得全球任播 (anycast) 進入點和 CDN 整合。啟用 OWASP 管理的規則集,並新增用於路徑/地理位置/IP 過濾和機器人防禦的自訂規則,並在邊緣與 DDoS 策略整合。
DDoS Protection Standard 為 VNet 中的公用端點增加了自適應的即時緩解、遙測數據,以及在攻擊期間進行擴展時的成本保護。在 VNet 層級套用 DDoS 保護計畫,以涵蓋所有關聯的公用 IP 資源,並透過模擬流量進行測試,以及檢視指標和警示。建立您的縱深防禦:在邊緣使用 DDoS 保護,在 L7 使用 WAF,使用 Azure Firewall 進行 L3–L7 政策控管,使用 NSG/ASG 進行微切分,並透過條件式存取 (Conditional Access) 加上裝置合規性來實現由身分驅動的強制執行。
實務問題情境
星巴克 (Starbucks) 正在 Azure 上使用 AKS、Azure SQL Database 和 Event Hubs 來現代化一個多區域的訂購平台。此架構必須採納零信任 (Zero Trust) 原則:消除寫死的密碼、切分網路、保護使用中的資料,並在雲端和 SaaS 間實作統一的威脅偵測與自動化回應。
- 為工作負載強制執行基於身分的存取
- 為需要存取 Key Vault 和 Storage 的 AKS 工作負載實作使用者指派的受控識別。在資源群組範圍內指派最低權限的 RBAC 角色 (Key Vault Secrets User、Storage Blob Data Reader)。選擇此方案的原因是:受控識別移除了密碼,支援擴展的 pod 能共享一個穩定的身分,並可透過 Azure RBAC 與 PIM/存取審核整合。
- 在沒有儲存憑證的情況下進行 CI/CD 聯盟
- 為 GitHub Actions 設定 Azure AD 工作負載身分聯盟,使用 GitHub OIDC 簽發者以及儲存庫/環境限制。工作流程在執行階段取得 Azure token 來部署 Bicep 和 Helm。選擇此方案的原因是:消除 PATs/密碼,將爆炸半徑縮小到特定的儲存庫/分支,並啟用條件式宣告 (conditional claims)。
- 保護金鑰和密碼並提供復原保證
- 使用 Azure Key Vault,並啟用 RBAC 權限模型、虛刪除 (soft delete) 和清除保護 (purge protection)。儲存連接字串和應用程式密碼;將 Azure SQL 的 TDE 保護金鑰儲存在 Managed HSM 中,以獲得 FIPS Level 3 保證。選擇此方案的原因是:可集中稽核、具備可復原性,並為關鍵的加密材料提供硬體支援的金鑰隔離。
- 切分網路並集中化出口流量
- 為不同層級 (web、api、data) 套用具備預設拒絕規則的 NSG 和 ASG。強制所有出口流量通過具備 IDPS 和 TLS 檢測的 Azure Firewall Premium;為 Azure SQL 和 Key Vault 使用 Private Endpoints。選擇此方案的原因是:在子網路/NIC 層級實作微切分,透過深度封包檢測來控制資料外洩,並實現私有的 PaaS 存取。
- 保護公用邊緣
- 在 Web 層的前端使用 Azure Front Door,其 WAF 策略使用 OWASP CRS 和用於地理位置/IP 節流與機器人簽章的自訂規則。在託管 Application Gateway 的中樞 (hub) VNet 上啟用 DDoS Protection Standard,以進行區域性容錯移轉。選擇此方案的原因是:在全球範圍內吸收容量攻擊,並在 L7 攻擊到達 AKS 之前將其阻擋。
- 治理 SaaS 存取和非受控裝置
- 將 Microsoft Defender for Cloud Apps 與 Conditional Access App Control 整合,以對 M365 和經核准的第三方 SaaS 強制執行工作階段控制:在非受控裝置上封鎖下載、要求下載時附上敏感度標籤,並加上浮水印。選擇此方案的原因是:無需更改應用程式即可實現即時控制,並在所有 SaaS 應用程式間實現一致的強制執行。
- 分類並保護敏感資料
- 定義帶有加密和使用權限的 Azure Information Protection 敏感度標籤 (公開、機密、高度機密 – 客戶資料)。啟用自動標籤策略,以識別 Office 中以及 SharePoint/OneDrive 中靜態資料的 PII 模式。選擇此方案的原因是:標準化資料處理方式、減少人為錯誤,並維持持續性的保護。
- 保護用於支付處理的使用中資料
- 在 AKS 機密節點集區上執行支付微服務,並在機密 VM (AMD SEV-SNP) 上執行批次風險模型。透過 Azure Attestation 管控解密金鑰;只有經過證明的節點/pod 才能從 Key Vault 接收密碼。選擇此方案的原因是:保護記憶體免受主機/租用戶的存取,並建立可測量的開機 (measured boot) 與工作負載完整性。
- 建立態勢管理與合規性
- 在管理群組層級啟用 Microsoft Defender for Cloud,並採用 Azure Security Benchmark 和 PCI-DSS 標準。開啟相關的 Defender 計畫 (容器、伺服器、SQL、Key Vault) 和 JIT VM 存取。選擇此方案的原因是:可獲得集中化的安全分數 (Secure Score)、法規遵循對應,以及工作負載原生的保護。
- 集中化偵測並協調回應
- 透過資料連接器 (Azure AD、Azure Activity、M365、Defender、AKS logs、Firewall) 將遙測資料匯入 Microsoft Sentinel。部署分析規則以偵測憑證竊取、可疑的出口流量、容器逃逸和異常的管理員活動。使用 Logic Apps playbook 進行自動化,以停用遭入侵的帳戶、隔離 AKS 節點、在 Azure Firewall 中封鎖出口流量,並建立工單。選擇此方案的原因是:其為雲端原生的 SIEM/SOAR,可快速部署規則,並與 Microsoft 的安全訊號緊密整合。
此設計從頭到尾應用了零信任原則:身分被持續驗證,權限是最小且即時 (just-in-time) 的,網路透過集中式檢測進行微切分,資料在靜態和使用中都受到分類和保護,而持續的威脅偵測與自動化回應則降低了平均圍堵時間 (mean time to contain)。
← 高可用性、災難復原與業務連續性 · 所有領域 · 整合與訊息傳遞架構 →
練習這些題目 → · 在 ExamRoll.io 上限時練習 →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
通過考試 →