就我而言,我想从 Azure 函数应用访问存储帐户。两者都位于同一订阅和资源组中。我已修改 IAM 策略以允许 azure 函数访问存储帐户。但是,我收到以下错误:
Azure.RequestFailedException:服务请求失败。 状态:403(此请求无权执行此操作。) 错误代码:授权失败
标题: 传输编码:分块 服务器:微软-HTTPAPI/2.0 x-ms-请求-id:*** x-ms-客户端-请求-id:*** x-ms-错误代码:授权失败 日期:2021 年 8 月 8 日星期日 19:21:00 GMT
在Azure.Storage.Blobs.BlobRestClient.GetPropertiesAsync(字符串快照,字符串versionId,Nullable1超时,字符串leaseId,字符串加密Key,字符串加密KeySha256,Nullable
1加密算法,Nullable1 ifModifiedSince ,Nullable
1 ifUnmodifiedSince,字符串ifMatch,字符串ifNoneMatch,字符串ifTags,CancellationToken(取消 token )
在Azure.Storage.Blobs.Specialized.BlobBaseClient.GetPropertiesInternal(BlobRequestConditions条件, bool 异步,CancellationToken取消 token ,字符串操作名称)
最佳答案
看看Microsoft documentation关于我们如何使用 Azure 功能连接到存储
此外,我们需要检查以下几件事:
在“配置”->“应用程序设置”中添加 AzureWebJobsStorage 和存储连接字符串。
存储帐户 > IAM > 添加角色分配,并添加针对此类请求的特殊权限:
- 存储 Blob 数据贡献者
- 存储队列数据贡献者
- 此外,检查 Application Insights 日志流中是否有错误,并发现您看到与 CORS 相关的任何内容。
关于c# - Azure函数访问存储帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68704189/