Membuat kunci sumber daya untuk azure Cosmos DB untuk database dan kontainer NoSQL menggunakan Azure CLI
BERLAKU UNTUK: NoSQL
Skrip dalam artikel ini menunjukkan proses melakukan operasi kunci sumber daya untuk database dan kontainer SQL.
Penting
Untuk membuat kunci sumber daya, Anda harus memiliki keanggotaan peran pemilik dalam langganan.
Kunci sumber daya tidak berfungsi untuk perubahan yang dibuat oleh pengguna yang terhubung menggunakan Azure Cosmos DB SDK apa pun, alat apa pun yang terhubung melalui kunci akun, atau Portal Microsoft Azure kecuali akun Azure Cosmos DB pertama kali dikunci dengan disableKeyBasedMetadataWriteAccess
properti diaktifkan. Untuk mempelajari selengkapnya tentang cara mengaktifkan properti ini, lihat Mencegah perubahan dari SDK.
Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
Prasyarat
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai Cepat untuk Bash di Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Masuk dengan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan az.
- Artikel ini memerlukan Azure CLI versi 2.9.1 atau yang lebih baru. Jika menggunakan Azure Cloud Shell, versi terbaru sudah terinstal.
Sampel skrip
Meluncurkan Azure Cloud Shell
Azure Cloud Shell adalah shell interaktif gratis yang dapat Anda gunakan untuk menjalankan langkah-langkah dalam artikel ini. Shell ini memiliki alat Azure umum yang telah dipasang sebelumnya dan dikonfigurasi untuk digunakan dengan akun Anda.
Untuk membuka Cloud Shell, cukup pilih Cobalah dari sudut kanan atas blok kode. Anda juga dapat meluncurkan Cloud Shell di tab browser terpisah dengan membuka https://shell.azure.com.
Saat Cloud Shell terbuka, verifikasi bahwa Bash dipilih untuk lingkungan Anda. Sesi berikutnya akan menggunakan Azure CLI dalam lingkungan Bash, Pilih Salin untuk menyalin blok kode, tempelkan ke Cloud Shell, lalu tekan Enter untuk menjalankannya.
Masuk ke Azure
Cloud Shell diautentikasi secara otomatis dengan akun awal yang digunakan untuk masuk. Gunakan skrip berikut untuk masuk menggunakan langganan lain, mengganti subscriptionId dengan ID langganan Azure Anda.
Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
subscription="subscriptionId" # Set Azure subscription ID here
az account set -s $subscription # ...or use 'az login'
Untuk informasi selengkapnya, lihat mengatur langganan aktif atau masuk secara interaktif.
Jalankan skrip
# Resource lock operations for a SQL database and container
# Subscription owner permissions required for this script
# Run this script after running
# "https://docs.microsoft.com/azure/cosmos-db/scripts/cli/sql/create#sample-script"
# Variable block
# Use values from prerequisite script or from your environment
# resourceGroup="your resource group name"
# account="your account name"
# database="your database name"
# container="your container name"
lockType="CanNotDelete" # CanNotDelete or ReadOnly
databaseParent="databaseAccounts/$account"
containerParent="databaseAccounts/$account/sqlDatabases/$database"
databaseLock="$database-Lock"
containerLock="$container-Lock"
# Create a delete lock on database
echo "Creating $lockType lock on $database"
az lock create --name $databaseLock --resource-group $resourceGroup --resource-type Microsoft.DocumentDB/sqlDatabases --lock-type $lockType --parent $databaseParent --resource $database
# Create a delete lock on container
echo "Creating $lockType lock on $container"
az lock create --name $containerLock --resource-group $resourceGroup --resource-type Microsoft.DocumentDB/containers --lock-type $lockType --parent $containerParent --resource $container
# 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 database
echo "Deleting $databaseLock on $database"
lockid=$(az lock show --name $databaseLock --resource-group $resourceGroup --resource-type Microsoft.DocumentDB/sqlDatabases --resource $database --parent $databaseParent --output tsv --query id)
az lock delete --ids $lockid
# Delete lock on container
echo "Deleting $containerLock on $container"
lockid=$(az lock show --name $containerLock --resource-group $resourceGroup --resource-type Microsoft.DocumentDB/containers --resource-name $container --parent $containerParent --output tsv --query id)
az lock delete --ids $lockid
Membersihkan sumber daya
Gunakan perintah berikut untuk menghapus grup sumber daya dan semua sumber daya yang terkait dengannya menggunakan perintah az group delete - kecuali Anda masih memiliki kebutuhan untuk sumber daya ini. Beberapa sumber daya ini mungkin membutuhkan beberapa waktu untuk dibuat dan dihapus.
az group delete --name $resourceGroup
Referensi sampel
Skrip ini menggunakan perintah berikut. Setiap perintah dalam tabel ditautkan ke dokumentasi spesifik perintah.
Perintah | Catatan |
---|---|
membuat kunci az | Buat kunci. |
daftar kunci az | Mencantumkan informasi kunci. |
menampilkan kunci az | Menampilkan properti kunci. |
penghapusan kunci az | Menghapus kunci. |