azure - API 连接因“禁止”而失败
问题描述
我在 ISE 中有一个逻辑应用程序,它使用 API 连接写入我的存储帐户。ISE 和存储帐户都在同一个专用 VNet 中,并且我的存储帐户为 ISE 的每个子网启用了防火墙规则。即便如此,对逻辑应用的所有请求都无法写入 Blob 存储,并出现以下错误:
{
"status": 403,
"message": "This request is not authorized to perform this operation.\r\nclientRequestId: ...",
"error": {
"message": "This request is not authorized to perform this operation."
},
"source": "azureblob-cus.azconn-cus.p.azurewebsites.net"
}
如果我禁用 Blob 存储防火墙规则,它可以写入存储帐户。为什么我的逻辑应用(在 ISE 中为存储帐户配置了防火墙规则)不能写入我的存储帐户?
解决方案
我想到了。我正在针对公开可用的 blob 存储服务而不是我的 ISE 中的托管连接器创建我的 API 连接。而不是拥有
{
"type": "Microsoft.Web/connections",
"apiVersion": "2016-06-01",
"location": "[resourceGroup().location]",
"name": "[parameters('BackupStorageAccountName')]",
"properties": {
...
"api": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/providers/Microsoft.Web/locations/', resourceGroup().location, '/managedApis/azureblob')]"
}
}
}
我需要有
{
"type": "Microsoft.Web/connections",
"apiVersion": "2016-06-01",
"location": "[resourceGroup().location]",
"name": "[parameters('BackupStorageAccountName')]",
"properties": {
...
"api": {
"id": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Logic/integrationServiceEnvironments/', parameters('iseName'), '/managedApis/azureblob')]"
}
}
}
推荐阅读
- html - 有没有办法以从 django 视图中作为上下文传递的一种很好的方式在 html 中显示 json 结果?
- r - 在 R 中分析多个数据集
- sql - 计算2个指定行累积数据之间的差异
- javascript - 从 onclick="getTagname(text)" 调用函数时传递一个变量
- shell - 如何在 awk 中使用的子字符串条件中给出多个值
- javascript - 运行 node 时出现此错误。对于我的 discord.js 机器人
- python - 在 Docker 容器中运行 uwsgi - 来自服务器的空回复
- python - 我正在使用 python 中的 selenium 并尝试在 chrome 中自动登录谷歌,但我遇到了问题
- r - 基于 data.table 模拟中使用的 which() 和 rbinom() 加速 R 函数
- python - 如何在不使用 for 循环的情况下找到矩阵元素的 i 和 j 值?