Nasazení privátní šablony ARM s tokenem SAS

Když se šablona Azure Resource Manager (šablona ARM) nachází v účtu úložiště, můžete omezit přístup k šabloně, abyste se vyhnuli jejímu zveřejnění veřejně. K zabezpečené šabloně přistupujete vytvořením tokenu sdíleného přístupového podpisu (SAS) pro šablonu a poskytnutím tohoto tokenu během nasazování. Tento článek vysvětluje, jak pomocí Azure PowerShell nebo Azure CLI bezpečně nasadit šablonu ARM s tokenem SAS.

Najdete informace o tom, jak chránit a spravovat přístup k privátním šablonám ARM s pokyny, jak to udělat takto:

  • Vytvoření účtu úložiště se zabezpečeným kontejnerem
  • Upload šablona pro účet úložiště
  • Poskytnutí tokenu SAS během nasazení

Důležité

Místo zabezpečení privátní šablony pomocí tokenu SAS zvažte použití specifikací šablon. Pomocí specifikací šablon můžete šablony sdílet s ostatními uživateli ve vaší organizaci a spravovat přístup k šablonám prostřednictvím Azure RBAC.

Vytvoření účtu úložiště se zabezpečeným kontejnerem

Následující skript vytvoří účet úložiště a kontejner s vypnutým veřejným přístupem pro zabezpečení šablony.

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

Upload privátní šablony k účtu úložiště

Teď jste připraveni nahrát šablonu do účtu úložiště. Zadejte cestu k šabloně, kterou chcete použít.

Set-AzStorageBlobContent `
  -Container templates `
  -File c:\Templates\azuredeploy.json

Poskytnutí tokenu SAS během nasazení

Pokud chcete nasadit privátní šablonu v účtu úložiště, vygenerujte token SAS a vložte ji do identifikátoru URI šablony. Nastavte dobu vypršení platnosti, abyste umožnili dostatek času k dokončení nasazení.

Důležité

Objekt blob obsahující privátní šablonu je přístupný jenom vlastníkovi účtu. Když ale vytvoříte token SAS pro objekt blob, bude objekt blob přístupný všem uživatelům s tímto identifikátorem URI. Pokud jiný uživatel zachytí identifikátor URI, bude mít tento uživatel přístup k šabloně. Token SAS je dobrý způsob omezení přístupu k vašim šablonům, ale neměli byste zahrnout citlivá data, jako jsou hesla přímo v šabloně.

# 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

Příklad použití tokenu SAS s propojenými šablonami najdete v tématu Použití propojených šablon s Azure Resource Manager.

Další kroky