Použití Azure CLI pro operace uzamčení prostředků ve službě Azure Cosmos DB pro tabulky tabulek
PLATÍ PRO: Stůl
Skript v tomto článku ukazuje provádění operací uzamčení prostředků pro rozhraní API pro tabulku tabulky.
Důležité
Pokud chcete povolit uzamykání prostředků, musí mít účet služby Azure Cosmos DB povolenou disableKeyBasedMetadataWriteAccess
vlastnost. Tato vlastnost zabraňuje jakýmkoli změnám prostředků z klientů, kteří se připojují prostřednictvím klíčů účtu, jako jsou sada Table SDK služby Azure Cosmos DB, sada Azure Storage Table SDK nebo Azure Portal.
Požadavky
Potřebujete účet tabulky, databázi a tabulku azure Cosmos DB. Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.
Důležité
Pokud chcete vytvořit nebo odstranit zámky prostředků, musíte mít ve svém předplatném Azure roli Vlastník .
Tento skript vyžaduje Azure CLI verze 2.12.1 nebo novější.
Skript můžete spustit v prostředí Bash v Azure Cloud Shellu. Po otevření Cloud Shellu se ujistěte, že se Bash zobrazí v poli prostředí v levém horním rohu okna prostředí. Cloud Shell má vždy nejnovější verzi Azure CLI.
Cloud Shell se automaticky ověřuje pod účtem, který jste použili k přihlášení k webu Azure Portal. Pomocí příkazu az account set se můžete přihlásit pomocí jiného předplatného a nahradit
<subscriptionId>
ho ID předplatného Azure.subscription="<subscriptionId>" # add subscription here az account set -s $subscription # ...or use 'az login'
Pokud chcete, můžete azure CLI nainstalovat a spustit skript místně. Spuštěním příkazu az version vyhledejte nainstalovanou verzi Azure CLI a závislé knihovny a pokud potřebujete upgradovat, spusťte az upgrade. Pokud se zobrazí výzva, nainstalujte rozšíření Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Dockeru.
Pokud používáte místní instalaci, přihlaste se k Azure spuštěním příkazu az login a podle pokynů. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.
Ukázkový skript
Následující skript používá příkazy az lock azure CLI k manipulaci se zámky prostředků ve vaší tabulce tabulek Azure Cosmos DB for Table. Skript potřebuje resourceGroup
název a account
název účtu a tabulky Azure Cosmos DB, table
kterou jste vytvořili.
- az lock create vytvoří
CanNotDelete
zámek prostředku v tabulce. - az lock list vypíše všechny informace o zámku pro váš účet tabulky Azure Cosmos DB.
- az lock delete pomocí příkazu az lock show získá
id
zámek v tabulce a pak pomocílockid
vlastnosti zámek odstraní.
# 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
Vyčištění prostředků
Pokud už vytvořené prostředky nepotřebujete, pomocí příkazu az group delete odstraňte skupinu prostředků a všechny prostředky, které obsahuje. Mezi tyto prostředky patří účet a tabulka služby Azure Cosmos DB. Odstranění prostředků může chvíli trvat.
az group delete --name $resourceGroup