'listkeys'를 사용하여 개인용 BLOB 저장소의 링크 된 템플릿에 액세스하는 방법이 있습니까? 그렇게하면 배포 할 때마다 SAS 토큰을 생성 할 필요가 없습니다. 의 라인을 따라 뭔가 :listkeys를 사용하여 private blob에 연결된 팔 서식 파일에 액세스 할 수 있습니까?
"parameters": {
"sasToken": { "type": "securestring" }
},
"resources": [
{
"apiVersion": "2017-05-10",
"name": "linkedTemplate",
"type": "Microsoft.Resources/deployments",
"properties": {
"mode": "incremental",
"templateLink": {
"uri": "[concat('https://storagecontosotemplates.blob.core.windows.net/templates/helloworld.json', parameters('sasToken'))]",
"contentVersion": "1.0.0.0"
}
}
}
],
MS의 문서를 언급하지 않지만, 토큰을 생성 할 필요없이 쉽게 구축 할 수있을 것입니다 :
"Concat('DefaultEndpointsProtocol=https;AccountName=',variables('StorageAccountName'),';AccountKey=',listKeys(resourceId('otherResourceGroup', 'Microsoft.Storage/storageAccounts', variables('StorageAccountName')), providers('Microsoft.Storage', 'storageAccounts').apiVersions[0]).keys[0].value)]"
은에서 이동합니다.
톰에 대한 응답으로 keyVault를 사용할 수없는 이유는 여전히 입력해야하기 때문입니다. 다음은 매개 변수 내부에 있어야하는 토큰에 대한 코드입니다.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"adminUsername": {
"value": "cmdbAdmin"
},
"adminPassword": {
"reference": {
"keyVault": {
"id": "/subscriptions/c8727b53-932a-4f48-9fa1-00765c554992/resourceGroups/AnsibleTest1/providers/Microsoft.KeyVault/vaults/ansibletest"
},
"secretName": "adminPassword"
}
},
...이 정보는 Azure 템플릿에 표시됩니다. 당신이 볼 수 있듯이, 당신은 여전히 몇 가지 자격 증명에 넣어해야합니다 :(
직접 질문에 대답하려면 "아니오"를 입력하십시오. 시나리오를 조금 더 확장 할 수 있습니까? 마음에 오는 몇 가지 사항은 1) 중첩해야하는지 2) 보안이 필요한지 3)이 방법으로 배포 할 수있는 고객이 얼마나되는지 (KeyVault 관리를 더 어렵게 만드는 등) –