簡體   English   中英

如何使用托管身份從 Azure Kubernetes 服務 (AKS) 訪問 Azure Key Vault (AKV)

[英]How to access Azure Key Vault (AKV) from Azure Kubernetes Service (AKS) using Managed Identities

我們有一些 dotnet 核心應用服務在 Azure 上運行,並使用帶有托管身份的 Azure 密鑰保管庫。

計划將這些 dotnet 核心服務部署到 azure kubernetes,但我還沒有找到任何相關文檔/支持將 AKV 與 Kubernetes 服務一起使用。 任何指導或參考

從 AKS 訪問 KV 有幾個選項:

  • 將 Azure Key Vault 與 FlexVol一起使用(已棄用。繼續將其用於 kubernetes 版本 1.15)

    使用 Key Vault,您可以存儲並定期輪換機密信息,例如憑據、存儲帳戶密鑰或證書。 可以使用 FlexVolume 將 Azure Key Vault 與 AKS 群集集成。 FlexVolume 驅動程序允許 AKS 群集從 Key Vault 本地檢索憑據,並僅將它們安全地提供給發出請求的 Pod。 與群集運營商合作,將 Key Vault FlexVol 驅動程序部署到 AKS 節點上。 您可以使用 Pod 托管標識請求訪問 Key Vault 並通過 FlexVolume 驅動程序檢索所需的憑據。

    帶有 FlexVol 的 Azure Key Vault 旨在與在 Linux pod 和節點上運行的應用程序和服務一起使用。

  • 將 Azure Key Vault Provider 用於 Secrets Store CSI 驅動程序(適用於 kubernetes 1.16+)

    Secrets Store CSI 驅動程序的 Azure Key Vault 提供程序允許您獲取存儲在 Azure Key Vault 實例中的機密內容,並使用 Secrets Store CSI 驅動程序接口將它們掛載到 Kubernetes pod 中。

  • 使用 Pod 管理的身份

    Azure 資源的托管標識使 Pod 可以針對 Azure 中支持它的任何服務(例如存儲、SQL)對自身進行身份驗證。 Pod 被分配了一個 Azure 標識,允許它們通過 Azure Active Directory 進行身份驗證並接收數字令牌。 此數字令牌可提供給其他 Azure 服務,這些服務檢查 Pod 是否有權訪問該服務並執行所需的操作。 例如,這種方法意味着數據庫連接字符串不需要任何機密。

我發現 pod 身份方法更容易,因為您不需要更改代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM