Share via


Usare l'interfaccia della riga di comando di Azure per le operazioni di blocco delle risorse in Azure Cosmos DB per le tabelle

SI APPLICA A: Tabella

Lo script di questo articolo illustra l'esecuzione di operazioni di blocco delle risorse per un'API per la tabella Table.

Importante

Per abilitare il blocco delle risorse, l'account Azure Cosmos DB deve avere la disableKeyBasedMetadataWriteAccess proprietà abilitata. Questa proprietà impedisce le modifiche apportate alle risorse dai client che si connettono tramite chiavi dell'account, ad esempio Azure Cosmos DB Table SDK, Archiviazione di Azure Table SDK o portale di Azure. Per altre informazioni, vedere Prevenzione delle modifiche dagli SDK.

Prerequisiti

Script di esempio

Lo script seguente usa i comandi az lock dell'interfaccia della riga di comando di Azure per modificare i blocchi delle risorse nella tabella di Azure Cosmos DB per tabelle. Lo script richiede il resourceGroupnome , account il nome e table il nome per l'account e la tabella di Azure Cosmos DB creati.

  • az lock create crea un CanNotDelete blocco di risorse nella tabella.
  • az lock list elenca tutte le informazioni di blocco per l'account tabella di Azure Cosmos DB.
  • az lock delete usa az lock show per ottenere il id blocco nella tabella e quindi usa la lockid proprietà per eliminare il blocco.
# Resource lock operations for a Table API table

# Subscription owner permissions required for this script

# Run this script after running
# "https://docs.microsoft.com/azure/cosmos-db/scripts/cli/table/create#sample-script"

# Variable block
# Use values from prerequisite script or from your environment
# resourceGroup="your resource group name"
# account="your account name"
# table="your table name"

lockType='CanNotDelete' # CanNotDelete or ReadOnly
tableParent="databaseAccounts/$account"
tableResourceType="Microsoft.DocumentDB/tables"
tableLock='$table-Lock'

# Create a delete lock on table
echo "Creating $lockType lock on $table"
az lock create --name $tableLock --resource-group $resourceGroup --resource-type $tableResourceType --lock-type $lockType --parent $tableParent --resource $table 

# List all locks on a Cosmos account
echo "Listing locks on $account"
az lock list --resource-group $resourceGroup --resource-name $account --namespace Microsoft.DocumentDB --resource-type databaseAccounts

# Delete lock on table
echo "Deleting $tableLock on $table"
lockid=$(az lock show --name $tableLock --resource-group $resourceGroup --resource-type $tableResourceType --resource $table --parent $tableParent --output tsv --query id)
az lock delete --ids $lockid

Pulire le risorse

Se le risorse create non sono più necessarie, usare il comando az group delete per eliminare il gruppo di risorse e tutte le risorse in esso contenute. Queste risorse includono l'account e la tabella di Azure Cosmos DB. L'eliminazione delle risorse potrebbe richiedere alcuni minuti.

az group delete --name $resourceGroup

Passaggi successivi