为什么在通过 powershell 创建 LinkedService 时密码类型 AzureKeyVaultSecret 被丢弃,
Why is password type of AzureKeyVaultSecret dropped when creating LinkedService via powershell,
我正在尝试通过 powershell 命令创建 LinkedService
New-AzureRmDataFactoryV2LinkedService -ResourceGroupName rg -DataFactoryName df -Name n -DefinitionFile n.json
结果是创建了 LinkedService,但是删除了对 AzureKeyVaultSecret 密码类型的引用,使其无法运行
配置文件 n.json 是从 DataFactory 代码选项卡中提取的,语法如下...
{
"name": "<name>",
"type": "Microsoft.DataFactory/factories/linkedservices",
"properties": {
"type": "Oracle",
"typeProperties": {
"connectionString": "host=<host>;port=<port>;serviceName=<serviceName>;user id=<user_id>",
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "Prod_KeyVault",
"type": "LinkedServiceReference"
},
"secretName": "<secretname>"
}
},
"connectVia": {
"referenceName": "<runtimename>",
"type": "IntegrationRuntimeReference"
}
}
}
创建新的 LinkedService 时,代码看起来完全一样,除了属性->typeProperties->password 被删除并且需要手动配置 - 我尽可能避免这种情况。
有什么想法吗?
如果您已尝试使用 "Update-Module -Name AzureRm.DataFactoryV2" 将您的 powershell 更新到最新版本,并且它仍然是相同的行为,那么可能的根本原因是密码在 Powershell 中尚不支持作为 Azure 密钥值.据我所知,这是最近添加的新功能。因此,将其推广到 Powershell 可能需要一些时间。
在这种情况下,解决方法是暂时使用 UI 创建链接服务。
我正在尝试通过 powershell 命令创建 LinkedService
New-AzureRmDataFactoryV2LinkedService -ResourceGroupName rg -DataFactoryName df -Name n -DefinitionFile n.json
结果是创建了 LinkedService,但是删除了对 AzureKeyVaultSecret 密码类型的引用,使其无法运行
配置文件 n.json 是从 DataFactory 代码选项卡中提取的,语法如下...
{
"name": "<name>",
"type": "Microsoft.DataFactory/factories/linkedservices",
"properties": {
"type": "Oracle",
"typeProperties": {
"connectionString": "host=<host>;port=<port>;serviceName=<serviceName>;user id=<user_id>",
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "Prod_KeyVault",
"type": "LinkedServiceReference"
},
"secretName": "<secretname>"
}
},
"connectVia": {
"referenceName": "<runtimename>",
"type": "IntegrationRuntimeReference"
}
}
}
创建新的 LinkedService 时,代码看起来完全一样,除了属性->typeProperties->password 被删除并且需要手动配置 - 我尽可能避免这种情况。
有什么想法吗?
如果您已尝试使用 "Update-Module -Name AzureRm.DataFactoryV2" 将您的 powershell 更新到最新版本,并且它仍然是相同的行为,那么可能的根本原因是密码在 Powershell 中尚不支持作为 Azure 密钥值.据我所知,这是最近添加的新功能。因此,将其推广到 Powershell 可能需要一些时间。
在这种情况下,解决方法是暂时使用 UI 创建链接服务。