Azure Storage AccountのIP制限をBicepを使ってうまくパラメータ化できないか試した結果を書き残します。
Portalでいうとこの部分ですね。
Bicepパラメータファイル作成
- 許可するIPリストは、.bicepparamファイルに配列で持たせます。
main.bicepparam
using 'main.bicep'
param location = 'japaneast'
// Storage Account Parameters
param storageAccountName = '[Your Storage Account Name]'
param storageSku = 'Standard_LRS'
param allowIpList = [
'x.x.x.x'
'y.y.y.y'
'z.z.z.z'
]
Bicepファイル作成
- .bicepファイルの方には可変パラメータは記載しないようにします。配列で受け取ったIPリストをfor文でipRulesに設定していきます。
main.bicep
param location string
param storageAccountName string
param storageSku string
param allowIpList array
resource storageAccount 'Microsoft.Storage/storageAccounts@2023-01-01' = {
location: location
name: storageAccountName
kind: 'StorageV2'
sku: {
name: storageSku
}
properties: {
networkAcls: {
defaultAction: 'Deny'
bypass: 'AzureServices'
ipRules: [for item in allowIpList: {
value: item
}]
}
}
}
実行
- パラメータを指定してデプロイし、ストレージアカウントのIP許可リストが問題なく設定されたことを確認します。
az deployment group create --resource-group [Your Resource Group Name] --template-file main.bicep --parameters main.bicepparam
以上です