Cara menyebarkan templat ARM privat dengan token SAS
Saat templat Azure Resource Manager (templat ARM) Anda berada di akun penyimpanan, Anda dapat membatasi akses ke templat agar tidak mengeksposnya secara publik. Anda mengakses templat aman dengan membuat token tanda tangan akses bersama (SAS) untuk templat, dan menyediakan token tersebut selama penyebaran. Artikel ini menjelaskan cara menggunakan Azure PowerShell atau Azure CLI untuk menggunakan templat ARM dengan token SAS.
Anda akan menemukan informasi tentang cara melindungi dan mengelola akses ke templat ARM privat Anda dengan petunjuk tentang cara melakukan hal berikut:
- Membuat akun penyimpanan dengan kontainer aman
- Mengunggah templat ke akun penyimpanan
- Berikan token SAS selama penyebaran
Penting
Sebagai ganti mengamankan templat Anda dengan token SAS, pertimbangkan untuk menggunakan spesifikasi templat. Dengan spesifikasi templat, Anda dapat berbagi templat dengan pengguna lain di organisasi Anda dan mengelola akses ke templat melalui Azure RBAC.
Membuat akun penyimpanan dengan kontainer aman
Skrip berikut membuat akun penyimpanan dan penampung dengan akses publik dimatikan untuk keamanan templat.
New-AzResourceGroup `
-Name ExampleGroup `
-Location "Central US"
New-AzStorageAccount `
-ResourceGroupName ExampleGroup `
-Name {your-unique-name} `
-Type Standard_LRS `
-Location "Central US"
Set-AzCurrentStorageAccount `
-ResourceGroupName ExampleGroup `
-Name {your-unique-name}
New-AzStorageContainer `
-Name templates `
-Permission Off
Mengunggah templat privat ke akun penyimpanan
Sekarang, Anda siap untuk mengunggah templat Anda ke akun penyimpanan. Sediakan jalur ke templat yang ingin Anda gunakan.
Set-AzStorageBlobContent `
-Container templates `
-File c:\Templates\azuredeploy.json
Berikan token SAS selama penyebaran
Untuk menyebarkan templat pribadi di akun penyimpanan, buat token SAS dan sertakan dalam URI untuk templat. Atur waktu kedaluwarsa untuk memungkinkan cukup waktu menyelesaikan penerapan.
Penting
Blob yang berisi templat hanya dapat diakses oleh pemilik akun. Namun, ketika Anda membuat token SAS untuk blob, blob dapat diakses oleh siapa saja dengan token SAS. Jika pengguna lain menghadang URI dan token SAS, pengguna tersebut dapat mengakses templat. Token SAS adalah cara yang baik untuk membatasi akses ke templat Anda, tetapi Anda tidak boleh menyertakan data sensitif seperti kata sandi secara langsung di templat.
# get the URI with the SAS token
$templateuri = New-AzStorageBlobSASToken `
-Container templates `
-Blob azuredeploy.json `
-Permission r `
-ExpiryTime (Get-Date).AddHours(2.0) -FullUri
# provide URI with SAS token during deployment
New-AzResourceGroupDeployment `
-ResourceGroupName ExampleGroup `
-TemplateUri $templateuri
Untuk contoh penggunaan token SAS dengan templat yang ditautkan, lihat Menggunakan templat tertaut dengan Azure Resource Manager.
Langkah berikutnya
- Untuk pengantar tentang menyebarkan templat, lihat Menerapkan sumber daya dengan templat ARM dan Azure PowerShell.
- Untuk menentukan parameter dalam templat, lihat Menulis templat.