簡體   English   中英

托管標識是否可用於 API 管理服務和 Azure 函數之間的通信?

[英]Is managed identity available for communication between API Management service and Azure functions?

我有一個與 Azure 函數運行時 v1 通信的 Azure API 管理服務。 目前,當我部署新版本的 Function App(使用 Azure Devops 中的 CI/CD 管道,並使用內置的微軟任務)時,功能鍵(包括主鍵)會發生變化。 因此,API 管理的 api 在函數請求中注入的密鑰不再有效,我得到 401 - 未經授權。 所以,我現在有一項任務在管道中,可以在我部署 Function App 時隨時更新這些密鑰。 API 管理提供了啟用托管標識的功能,但是當我嘗試在功能應用程序中為 API 管理創建角色分配時,在系統分配的托管標識下,我沒有 API 管理服務的選項。 所以我認為不可能在兩個服務之間設置這個角色分配,對嗎? 如果沒有,那么是否有任何建議可以避免管理 API 管理服務和 Azure Functions 之間通信的密鑰?

謝謝

更新

現在可以通過利用authentication-managed-identity策略來使用authentication-managed-identity


是的。 此處不能使用托管標識。

一種替代方法是使用 APIM 實例 IP 來保護具有IP 限制的函數應用程序,只要不重新創建它就保證是靜態的,並將函數設置為匿名函數。

請注意,您也可能在從門戶訪問該功能時遇到問題,如果需要,您必須允許您使用的計算機的公共 IP 訪問該功能。

另一種選擇是

您可以嘗試使用緩存策略緩存此訪問令牌。

暫無
暫無

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

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