使用 Azure CLI 为 Cosmos DB 数据库帐户禁用本地身份验证方法
Disable local authentication methods for Cosmos DB database accounts using Azure CLI
我正在尝试使用 Azure CLI 创建一个 cosmos DB 帐户。
我必须遵守的一项必要政策是 “Cosmos DB 数据库帐户应禁用本地身份验证方法”。在以下文档中,我看到了如何使用 Azure 资源管理器模板进行设置。见下文
"resources": [
{
"type": " Microsoft.DocumentDB/databaseAccounts",
"properties": {
"disableLocalAuth": true,
// ...
},
// ...
},
// ...
]
现在我的问题是如何使用 AZ CLI 执行相同的操作?
我使用的命令是 => az cosmosdb create ...
我没有看到任何允许在 AZ CLI 中进行类似设置的标志。
否 ,当您通过 az cosmosdb create
创建 Azure Cosmos DB 帐户时,Azure CLI 不支持此操作
截至 2022 年 1 月,这仅通过 ARM 模板支持,但计划支持 PS 和 CLI。目前没有可分享的预计到达时间。
您始终可以使用 Azure REST API 调用来应用 CosmosDB 帐户中的任何更改,请参阅此处
我为此使用了 Postman,顺便说一下,我 post 这里有一个 CURL 示例,我可以通过它修改几个属性(你需要先获得一个 oauth2 令牌):
curl --location --request PUT 'https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.DocumentDB/databaseAccounts/<database-account-name>?api-version=2021-10-15' \
--header 'Authorization: Bearer <oauth2-token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"location": "North Europe",
"properties": {
"databaseAccountOfferType": "Standard",
"disableLocalAuth": true,
"disableKeyBasedMetadataWriteAccess":true,
"locations": [
{
"isVirtualNetworkFilterEnabled": false,
"locationName": "North Europe",
"failoverPriority": 0,
"isZoneRedundant": false
}
]
}
}'
az cosmosdb
命令不支持它,但您可以使用 az resource update
命令更新此 属性:
$cosmosdbname = "<cosmos-db-account-name>"
$resourcegroup = "<resource-group-name>"
$cosmosdb = az cosmosdb show --name $cosmosdbname --resource-group $resourcegroup | ConvertFrom-Json
az resource update --ids $cosmosdb.id --set properties.disableLocalAuth=true --latest-include-preview
我正在尝试使用 Azure CLI 创建一个 cosmos DB 帐户。 我必须遵守的一项必要政策是 “Cosmos DB 数据库帐户应禁用本地身份验证方法”。在以下文档中,我看到了如何使用 Azure 资源管理器模板进行设置。见下文
"resources": [
{
"type": " Microsoft.DocumentDB/databaseAccounts",
"properties": {
"disableLocalAuth": true,
// ...
},
// ...
},
// ...
]
现在我的问题是如何使用 AZ CLI 执行相同的操作?
我使用的命令是 => az cosmosdb create ...
我没有看到任何允许在 AZ CLI 中进行类似设置的标志。
否 ,当您通过 az cosmosdb create
截至 2022 年 1 月,这仅通过 ARM 模板支持,但计划支持 PS 和 CLI。目前没有可分享的预计到达时间。
您始终可以使用 Azure REST API 调用来应用 CosmosDB 帐户中的任何更改,请参阅此处
我为此使用了 Postman,顺便说一下,我 post 这里有一个 CURL 示例,我可以通过它修改几个属性(你需要先获得一个 oauth2 令牌):
curl --location --request PUT 'https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.DocumentDB/databaseAccounts/<database-account-name>?api-version=2021-10-15' \
--header 'Authorization: Bearer <oauth2-token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"location": "North Europe",
"properties": {
"databaseAccountOfferType": "Standard",
"disableLocalAuth": true,
"disableKeyBasedMetadataWriteAccess":true,
"locations": [
{
"isVirtualNetworkFilterEnabled": false,
"locationName": "North Europe",
"failoverPriority": 0,
"isZoneRedundant": false
}
]
}
}'
az cosmosdb
命令不支持它,但您可以使用 az resource update
命令更新此 属性:
$cosmosdbname = "<cosmos-db-account-name>"
$resourcegroup = "<resource-group-name>"
$cosmosdb = az cosmosdb show --name $cosmosdbname --resource-group $resourcegroup | ConvertFrom-Json
az resource update --ids $cosmosdb.id --set properties.disableLocalAuth=true --latest-include-preview