如何以编程方式更新Azure存储防火墙设置

如何以编程方式更新Azure存储防火墙设置,azure,azure-storage,firewall,restapi,Azure,Azure Storage,Firewall,Restapi,我正在使用Azure存储,它允许通过从Azure门户管理“防火墙和虚拟网络”设置来控制访问。 有没有办法通过API实现同样的功能?我做了一些文档搜索,但找不到可以这样做的API。 任何与此相关的指针都会很有帮助。如果您想通过API更新Azure存储防火墙,您需要使用以下Rest API来实现它。有关详细信息,请参阅 领取代币 POSThttps://login.microsoftonline.com//oauth2/v2.0/token 内容类型:application/x-www-form-u

我正在使用Azure存储,它允许通过从Azure门户管理“防火墙和虚拟网络”设置来控制访问。
有没有办法通过API实现同样的功能?我做了一些文档搜索,但找不到可以这样做的API。

任何与此相关的指针都会很有帮助。

如果您想通过API更新Azure存储防火墙,您需要使用以下Rest API来实现它。有关详细信息,请参阅

  • 领取代币
  • POSThttps://login.microsoftonline.com//oauth2/v2.0/token
    内容类型:application/x-www-form-urlencoded
    授予\类型=客户端\凭据
    &范围=https://management.azure.com/.default
    &客户识别码=
    &客户机密=
    
  • 测试(我更新了帐户的防火墙,以允许某些IP和AzureServices访问存储)
  • 补丁https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}?api版本=2019-06-01
    
    授权:持有者

    对编程语言有任何偏好吗?欢迎访问。对于您遇到的任何特定问题,请包括一个。请同时阅读和阅读。确保你的问题是具体的,不要过于宽泛,另请参见。另外,一定要带上(你会得到一个徽章!)。你这里有Azure存储的所有文档,包括不同的使用方法:Nodejs很好,但是如果你能指向API,那么我就可以管理:)@DanielBjörk感谢这些文档,但我发现很难找到我在其中寻找的信息
    PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}?api-version=2019-06-01
    
    Authorization: Bearer <access token>
    
    {
      "properties": {
        "networkAcls": {
          "bypass": "string",
          "virtualNetworkRules": [
            {
              "id": "string",
              "action": "Allow",
              "state": "string"
            }
          ],
          "ipRules": [
            {
              "value": "string",
              "action": "Allow"
            }
          ],
          "defaultAction": "string"
         }
      }
    }
    
    
    az login
    # create sp and assign Contributor to the sp at the subscription level
    az ad sp create-for-rbac -n "your service principal name"
    
    POST https://login.microsoftonline.com/<tenant id>/oauth2/v2.0/token
    Content-Type: application/x-www-form-urlencoded
    
    grant_type=client_credentials
    &scope=https://management.azure.com/.default
    &client_id=<sp appId>
    &client_secret=<sp password>
    
    PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}?api-version=2019-06-01
    
    Authorization: Bearer <access token>
    
    {
      "properties": {
            "networkAcls": {
                "bypass": "AzureServices",
                "virtualNetworkRules": [],
                "ipRules": [
                    {
                        "value": "167.220.255.0/24",
                        "action": "Allow"
                    }
                ],
                "defaultAction": "Deny"
            }
       }
    }