我正在尝试创建一个创建网站的RM模板,并将其配置为登录blob存储。
我看到了这个post in StackOverflow,其中显示了如何配置它。
json
看起来有点跟随:
{
"id": "/subscriptions/.../config/logs",
"name": "logs",
"type": "Microsoft.Web/sites/config",
"location": "North Central US",
"properties": {
"applicationLogs": {
"fileSystem": {
"level": "Off"
},
"azureBlobStorage": {
"level": "Information",
"sasUrl": "...",
"retentionInDays": 14
}
},
...
}
但是,我无法弄清楚如何计算/解析sasUrl到这个文件中?
答案 0 :(得分:2)
要为容器创建SASurl,您可以使用New-AzureStorageContainerSASToken
像这样的脚本应该工作
$context = New-AzureStorageContext -StorageAccountName $name `
-StorageAccountKey ((Get-AzureRmStorageAccountKey `
-ResourceGroupName $rg -Name $name).Key1)
New-AzureStorageContainerSASToken -Name sql
-Permission rwdl -Context $context
您可能需要将-FullUri添加到最后一个的末尾。
答案 1 :(得分:1)
$SasToken = New-AzureStorageContainerSASToken -Container 'logs'
-Context $context -Permission rwdl -ExpiryTime (Get-Date).AddYears(1) -FullUri
您可以执行此操作的另一种方法是创建sasToken,将其存储在Azure KeyVault中,并在模板中引用该KeyVault机密。此博客有一些帖子可以逐步完成设置:http://www.codeisahighway.com/how-to-refer-an-azure-key-vault-secret-in-an-azure-resource-manager-deployment-template/