Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Quando o modelo do ARM (modelo do Azure Resource Manager) está localizado em uma conta de armazenamento, você pode restringir o acesso ao modelo para evitar expô-lo publicamente. Você acessa um modelo protegido criando um token SAS (assinatura de acesso compartilhado) para o modelo e fornecendo esse token durante a implantação. Este artigo explica como usar o Azure PowerShell ou a CLI do Azure para implantar com segurança um modelo do ARM com um token SAS.
Você encontrará informações sobre como proteger e gerenciar o acesso aos modelos particulares do ARM com instruções sobre como fazer o seguinte:
- Criar conta de armazenamento com contêiner protegido
- Carregar modelo para a conta de armazenamento
- Fornecer token SAS durante a implantação
Importante
Em vez de proteger seu modelo privado com um token SAS, considere o uso de especificações de modelo. Com as especificações de modelo, você pode compartilhar seus modelos com outros usuários em sua organização e gerenciar o acesso aos modelos por meio do RBAC do Azure.
Criar conta de armazenamento com contêiner protegido
O script a seguir cria uma conta de armazenamento e um contêiner com acesso público desativados para segurança de modelo.
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
Carregar modelo privado na conta de armazenamento
Agora, você está pronto para carregar seu modelo na conta de armazenamento. Forneça o caminho para o modelo que você deseja usar.
Set-AzStorageBlobContent `
-Container templates `
-File c:\Templates\azuredeploy.json
Fornecer token SAS durante a implantação
Para implantar um modelo privado em uma conta de armazenamento, gere um token SAS e inclua-o no URI do modelo. Defina a hora de vencimento de forma a permitir que haja tempo suficiente para concluir a implantação.
Importante
O blob que contém o modelo privado é acessível apenas para o proprietário da conta. No entanto, quando você cria um token SAS para o blob, o blob é acessível a qualquer pessoa com esse URI. Se outro usuário interceptar o URI, esse usuário poderá acessar o modelo. Um token SAS é uma boa maneira de limitar o acesso aos seus modelos, mas você não deve incluir dados confidenciais, como senhas diretamente no modelo.
# 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
Para obter um exemplo de como usar um token SAS com modelos vinculados, consulte Usando modelos vinculados com o Azure Resource Manager.
Próximas etapas
- Para obter uma introdução à implantação de modelos, consulte Implantar recursos com modelos do ARM e o Azure PowerShell.
- Para definir parâmetros no modelo, consulte Modelos de criação.