1

我想创建一个处于禁用状态的加密存储帐户。但默认情况下,在创建存储时启用加密。仪表板中没有禁用它的选项。我引用了一个Microsoft API并尝试了以下请求,但它不起作用。

{
"sku": {
    "name": "Standard_LRS"
},
"kind": "Storage",
"location": "westus2",
"encryption": {
    "services": {
        "blob": {
            "enabled": False
        }
    }
}}

回复:

{"error":{"code":"InvalidRequestContent","message":"The request content was invalid and could not be deserialized: 'Could not find member 'encryption' on object of type 'ResourceDefinition'. Path 'encryption', line 1, position 47.'."}}

请帮我解决这个问题。

4

2 回答 2

0

您收到此错误的原因是因为encryption属性应该在properties属性内。请将您的请求正文更改为:

{
    "sku": {
        "name": "Standard_LRS"
    },
    "kind": "Storage",
    "location": "westus2",
    "properties": {
        "encryption": {
            "keySource": "Microsoft.Storage"
            "services": {
                "blob": {
                    "enabled": False
                }
            }
        }
    }
}

或者您可以做的其他事情是一起摆脱encryption属性。因此,在这种情况下,您的请求正文将类似于:

{
    "sku": {
        "name": "Standard_LRS"
    },
    "kind": "Storage",
    "location": "westus2",
    "properties": {
    }
}

但是,我很好奇您为什么要禁用静态加密。

于 2017-11-08T07:02:25.363 回答
0

我在实验室中使用以下脚本进行了测试:

    {
        "sku": {
            "name": "Standard_LRS"
        },
        "kind": "Storage",
        "location": "westus2",
        "properties": {
        }
    }

但是当我去 Azure 门户时,发现blob 仍然是 Encrypted

我还测试了许多其他可能的模板,但在创建存储帐户时都未能禁用加密。我认为这可能是由设计引起的:Azure 强制每个存储帐户在开始时进行加密。

如果您仍想禁用加密,可以使用以下 powershell 脚本来执行此操作:

Set-AzureRmStorageAccount -ResourceGroupName "ResourceGroupName" -AccountName "YourstorageAccountName" -DisableEncryptionService blob

您可以Set-AzureRmStorageAccount本文档中查看更多详细信息。

希望这可以帮助!

于 2017-11-08T07:25:23.177 回答