Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Если шаблон Azure Resource Manager (шаблон ARM) находится в учетной записи хранения, вы можете ограничить доступ к шаблону, чтобы избежать его общедоступного предоставления. Вы получаете доступ к защищенному шаблону, создавая токен подписи общего доступа (SAS) для шаблона и предоставляя этот токен во время развертывания. В этой статье объясняется, как использовать Azure PowerShell или Azure CLI для безопасного развертывания шаблона ARM с маркером SAS.
Вы найдете сведения о защите и управлении доступом к частным шаблонам ARM с помощью инструкций по следующим действиям:
- Создание учетной записи хранения с защищенным контейнером
- Отправка шаблона в учетную запись хранения
- Предоставление маркера SAS во время развертывания
Это важно
Вместо защиты частного шаблона с помощью маркера SAS рекомендуется использовать спецификации шаблонов. С помощью спецификаций шаблонов вы можете совместно использовать шаблоны с другими пользователями в организации и управлять доступом к шаблонам с помощью Azure RBAC.
Создание учетной записи хранения с защищенным контейнером
Следующий сценарий создает учетную запись хранения и контейнер с общедоступным доступом, отключенным для безопасности шаблона.
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
Загрузка частного шаблона в учетную запись хранения
Теперь вы готовы отправить шаблон в учетную запись хранения. Укажите путь к шаблону, который вы хотите использовать.
Set-AzStorageBlobContent `
-Container templates `
-File c:\Templates\azuredeploy.json
Предоставление маркера SAS во время развертывания
Чтобы развернуть частный шаблон в учетной записи для хранения данных, создайте маркер SAS и включите его в URI шаблона. Установите срок действия таким образом, чтобы было достаточно времени для завершения развертывания.
Это важно
Объект-blob, содержащий приватный шаблон, доступен только владельцу учетной записи. Однако, при создании маркера SAS для объекта BLOB, он становится доступен любому пользователю с этим унифицированным указателем ресурса (URI). Если другой пользователь перехватывает универсальный код ресурса (URI), этот пользователь может получить доступ к шаблону. Маркер SAS является хорошим способом ограничения доступа к шаблонам, но не следует включать конфиденциальные данные, такие как пароли непосредственно в шаблон.
# 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
Пример использования маркера SAS с связанными шаблонами см. в статье "Использование связанных шаблонов с Azure Resource Manager".
Дальнейшие шаги
- Общие сведения о развертывании шаблонов см. в статье "Развертывание ресурсов с помощью шаблонов ARM" и Azure PowerShell.
- Сведения о определении параметров в шаблоне см. в разделе "Создание шаблонов".