You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地开发Azure Function:托管身份订阅Cosmos Change Feed遇阻

本地运行Cosmos Change Feed触发函数的问题

我有一段订阅Cosmos Change Feed的Azure Functions代码:

[FunctionName("CosmosDB_ChangeFeed")]
public void Cosmos_ChangeFeed([CosmosDBTrigger(
    databaseName:"%databaseName%",
    containerName:"%containerName%",
    LeaseContainerName:"%leaseContainerName%",
    Connection = "CosmosDB")] IReadOnlyList<PocoItem>input)

这段代码在Azure云上运行完全正常,但本地开发环境启动时遇到了问题,想请教如何解决。

背景信息

代码使用的是Microsoft.Azure.WebJobs.Extensions.CosmosDB最新版本(4.2.0),该版本支持通过托管身份访问Cosmos DB,要求托管身份必须被分配Cosmos DB内置数据参与者角色。同时,CosmosDBTrigger的Connection属性需要在连接字符串配置中按特定格式设置(配置界面参考:连接字符串配置示例)。

本地运行遇到的错误

我已经将个人身份分配了Cosmos DB内置数据参与者角色,但启动本地函数时抛出以下异常:

Exception: Azure.Identity.CredentialUnavailableException: ManagedIdentityCredential authentication unavailable. No Managed Identity endpoint found

另外还有一个疑问:该扩展是否支持用户分配的托管身份?我没找到相关官方文档,之前在Azure部署的函数中尝试配置也没成功。

参考资料(原英文资源对应中文主题)

  • Azure Cosmos DB Functions扩展配置视频教程
  • Azure Cosmos DB新Functions扩展底层原理技术博客
  • Azure Cosmos DB RBAC权限配置官方文档

内容的提问来源于stack exchange,提问作者SuttyHoo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 08:22:49