为什么通过Powershell创建LinkedService时会丢弃AzureKeyVaultSecret的密码类型



我试图通过powershell命令创建一个LinkedService

New-AzureRmDataFactoryV2LinkedService -ResourceGroupName rg -DataFactoryName df -Name n -DefinitionFile n.json 

结果是创建了链接服务,但是删除了对 AzureKeyVaultSecret 的密码类型的引用,使其无法运行

配置文件 n.json 是从数据工厂代码选项卡中提取的,语法如下...

{
"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->密码被删除并且需要手动配置 - 如果可能的话,我试图避免这种情况。

有什么想法吗?

如果已尝试使用"Update-Module -Name AzureRm.DataFactoryV2"将Powershell更新到最新版本,并且它仍然是相同的行为,则可能的根本原因是密码在Powershell中尚不支持作为Azure密钥值。据我所知,这是最近添加的一项新功能。因此,将其推广到Powershell可能需要一些时间。

在这种情况下,解决方法是现在使用 UI 创建链接服务。

相关内容

  • 没有找到相关文章

最新更新