如何使用用户分配的身份触发 blob 函数

How to trigger blob function with user assigned identity

我创建了一个 blob trigger azure 函数,目前在代码中使用连接字符串。

local.settings.json

public static class BlobTrigger_Fun
{
    [FunctionName("BlobTrigger_Fun")]
    public static void Run([BlobTrigger("democontainerazure/{name}", Connection = "AzureWebJobsStorage")]Stream myBlob, string name, ILogger log)
    {
        log.LogInformation($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myBlob.Length} Bytes");
    }
}

我想使用托管标识来避免在代码中使用连接字符串。

不,你不能。

MSI(managed identity) 不用于此类用途,它仅用于对支持 Azure AD 身份验证的 azure 服务进行身份验证,AzureWebJobsStorage 用于 azure 函数运行时,在函数应用程序中, 属性 必须在站点配置中指定为应用程序设置。