存储帐户阻止容器创建的网络规则

问题描述 投票:0回答:1

按照the Azure CLI "quickstart" on creating a blob的指示进行。

似乎默认存储帐户中的某个内容阻止了创建新容器的功能;但是,"defaultAction"Allow

以下Azure CLI:

az storage container create --account-name meaningfulname --name nancy --auth-mode login

...导致解释存储帐户的网络规则的错误可能是原因:

The request may be blocked by network rules of storage account. Please check network rule set using 'az storage account show -n accountname --query networkRuleSet'.
If you want to change the default action to apply when no rule matches, please use 'az storage account update'.

使用以上消息的建议,帐户名上的“显示”命令给出:

> az storage account show -n meaningfulname --query networkRuleSet
{
  "bypass": "AzureServices",
  "defaultAction": "Allow",
  "ipRules": [],
  "virtualNetworkRules": []
}

我认为Azure CLI将成为可以bypass并执行操作的“服务”。而且,在我看来,默认操作是相当宽松的。

我已经完成了根据错误消息和命令(以及变体)进行搜索的工作。我不知道Azure CLI的怪异之处似乎没有很多,所以也许这是如此明显,以至于人们还没有编写任何东西。我不认为我在重复

azure azure-cli
1个回答
0
投票

当前的networkRuleSet配置已足够。我无法使用与您相同的networkRuleSet配置来重现此问题。因此,您可以在创建容器或查询networkRuleSet时再次检查存储帐户是否有错字。

默认情况下,存储帐户接受来自任何网络上客户端的连接。要限制对选定网络的访问,必须首先更改默认操作。

如果只需要允许某些特定的IP地址或特定的子网,则可以像这样添加它,

{
  "bypass": "AzureServices",
  "defaultAction": "Deny",
  "ipRules": [
    {
      "action": "Allow",
      "ipAddressOrRange": "100.100.100.100"
    }
  ],
  "virtualNetworkRules": [
    {
      "action": "Allow",
      "virtualNetworkResourceId": "subnetID"
    }
  ]
}

使用Azure CLI,设置默认规则以默认允许网络访问。

az storage account update --resource-group "myresourcegroup" --name "mystorageaccount" --default-action Deny

az storage account update --resource-group "myresourcegroup" --name "mystorageaccount" --default-action Allow

请参见Change the default network access rule以获取更多详细信息。

© www.soinside.com 2019 - 2024. All rights reserved.