Azure Spring Apps 登陸區域加速器的身分識別和存取管理
本文說明在 Azure Spring Apps 中驗證使用者的設計考慮和建議,並授與使用者對工作負載資源的必要存取層級。
集中式平臺小組和應用程式小組必須充分瞭解:
- 哪些小組需要存取部署在應用程式登陸區域中的 Azure Spring 應用程式工作負載。
- 使用者和需要存取權的角色和責任。
- 執行這些責任所需的最低許可權層級。
如需平臺設計的相關資訊,請參閱 Azure 身分識別和存取管理設計區域 。
身為工作負載擁有者,請遵循這些最佳做法,以確保應用程式資源不會違反組織安全性或治理界限。 目標是確保已部署的 Azure Spring 應用程式和工作負載的相關資源安全且只能由授權的使用者存取。 當您遵循這些做法時,您可以保護敏感性資料,並防止濫用應用程式及其資源。
設計考量
從應用程式存取其他服務 。 當應用程式連線到屬於工作負載一部分的後端服務時,應用程式應該自行驗證。 此驗證可保護服務免于未經授權的存取。 請考慮使用 Microsoft Entra 識別碼的功能,以避免儲存和管理認證的額外負荷。
應用程式的存取權。 使用者可能會透過公用網際網路將要求傳送至應用程式。 或要求可能來自私人或內部部署網路。 不論是哪一種情況,都必須根據用戶端憑證或透過 Microsoft Entra ID 來驗證存取權。
請考慮服務探索機制的技術選項,以叫用應用程式之間的呼叫。 這些選項會根據 Azure Spring Apps 層而有所不同。
操作員對資源的 存取。 具有不同責任的小組成員可能會存取您的工作負載。 例如,您可能需要授與下列專案的存取權:
- 需要操作存取權的平臺小組成員。
- 開發應用程式的應用程式小組成員。
- 建置和發行管線以使用基礎結構即程式碼 (IaC) 進行設定的 DevOps 工程師。
- 針對問題進行疑難排解的網站可靠性工程師。
根據存取目的,決定您想要提供給使用者的控制項層級。 從最低許可權原則開始。 RBAC 角色指派可以確保使用者擁有適當許可權集,以負責維護界限。 在建立自訂角色之前,請考慮內建的 RBAC 角色。
設定資料存取 。 根據您選擇的 Azure Spring Apps 層( 基本/標準 或 企業 版),您必須決定組態伺服器選項。
針對 [基本 ],請考慮支援伺服器和用戶端。 若要儲存您的組態伺服器檔案,請選擇分散式系統中的外部化組態,例如 Azure DevOps、GitHub、GitLab 或 Bitbucket。
您可以使用公用或私人存放庫,然後選擇其驗證機制。 Azure Spring Apps 支援基本密碼或權杖型驗證和 SSH。
針對 Enterprise ,請考慮使用 VMware Tanzu 的應用程式組態服務,以管理從一或多個 Git 存放庫中定義的屬性填入的 Kubernetes 原生 ConfigMap 資源。
設計建議
受控識別
使用應用程式的受控識別,使其透過 Microsoft Entra ID 進行驗證。 並非所有服務都支援 Microsoft Entra ID 的這項功能。 如需詳細資訊,請參閱 支援 Microsoft Entra 驗證 的 Azure 服務。
決定哪種類型的 受控識別 適合您的使用案例。 請考慮輕鬆管理取捨。 例如,如果應用程式需要存取多個資源,建議使用使用者指派的受控識別。 但是,如果您想要系結至應用程式生命週期的許可權,系統管理的身分識別可能更適合。
如需詳細資訊,請參閱 選擇系統或使用者指派的受控識別 。
使用內建的 Azure RBAC 角色來簡化受控識別所需許可權的管理。
- 針對 Azure Spring Apps 使用您自己的受控識別。
- 分別使用系統指派和使用者指派的受控識別。 如需詳細資訊,請參閱 使用受控識別 時的最佳做法。
- 在 Microsoft Entra ID 中使用 Privileged Identity Management。
保護網際網路通訊
- 使用憑證授權單位單位、延伸驗證憑證或萬用字元憑證所簽發的憑證。
- 僅針對生產前環境使用自我簽署憑證。
- 從 Azure 金鑰保存庫安全地載入憑證。
角色型存取控制 (RBAC)
- 請考慮建立自訂角色。 當現用角色需要修改現有許可權時,請遵循最低許可權原則。
- 選擇金鑰、秘密、憑證和應用程式設定的增強式安全性儲存體。
- 針對自動化部署,請設定服務主體,其具有從 CI/CD 管線部署的最低必要許可權。
- 啟用應用程式主控台、系統記錄、輸入記錄、組建記錄和容器事件記錄的診斷記錄。 您可以使用這些詳細的記錄來診斷應用程式的問題,並監視存取要求。 當您啟用這些記錄時,Azure 監視器活動記錄可讓您深入瞭解訂用帳戶層級事件。