Dynamically changing the connection string for Tablestorage or blob storage in Azure data factory. Currently, I could see such option for database related dataset? How to achie
I believe this is what you wanted. https://docs.microsoft.com/en-us/azure/data-factory/parameterize-linked-services As doc mentioned, UI only supports 8 linked service. For others, you could change json code directly following the same pattern.
{
"name": "AzureBlobStorage12",
"type": "Microsoft.DataFactory/factories/linkedservices",
"properties": {
"parameters": {
"accountName": {
"type": "String"
},
"accountKey": {
"type": "String"
}
},
"annotations": [],
"type": "AzureBlobStorage",
"typeProperties": {
"connectionString": "DefaultEndpointsProtocol=https;AccountName=@{linkedService().accountName};AccountKey=@{linkedService().accountKey};EndpointSuffix=core.windows.net;"
}
}
}
You can't put the entire connection string as an expression. You need parameterize every part separately. Make sure you noticed the prameters field. And then every time you use the linked service, you will be able to pass different values to it.
In the New Linked service Azure table storage and Click on Advanced and check Specify Dynamic contents in JSON format adf
Copy the below JSON to make it Table Storage Parameterize :
{
"name": "Table",
"type": "Microsoft.DataFactory/factories/linkedservices",
"properties": {
"type": "AzureTableStorage",
"typeProperties": {
"sasUri": {
"type": "SecureString",
"value": "@{linkedService().sasUriParam}"
}
},
"parameters": {
"sasUriParam": {
"type": "String"
}
},
"annotations": []
}
}