C# U-SQL数据源作为UDF中的SQL Server

C# U-SQL数据源作为UDF中的SQL Server,c#,azure-data-lake,u-sql,C#,Azure Data Lake,U Sql,我需要从SQL表中提取行,其中一些列使用SQL Server新的“始终加密”功能进行加密。我发现我不能使用'AZURESQLDB'数据源功能,在以纯文本形式读取数据之前需要进行解密。是否有计划添加此功能?。同时,我尝试编写一个用户定义的函数,该函数将在注册的程序集中执行相同的操作(连接、解密数据和返回对象),但当它运行时,出现以下错误: 来自用户表达式的内部异常:建立到SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及SQL S

我需要从SQL表中提取行,其中一些列使用SQL Server新的“始终加密”功能进行加密。我发现我不能使用'AZURESQLDB'数据源功能,在以纯文本形式读取数据之前需要进行解密。是否有计划添加此功能?。同时,我尝试编写一个用户定义的函数,该函数将在注册的程序集中执行相同的操作(连接、解密数据和返回对象),但当它运行时,出现以下错误:

来自用户表达式的内部异常:建立到SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。(提供程序:命名管道提供程序,错误:40-无法打开到SQL Server的连接)


我已经检查了代码,一切似乎都是正确的。连接字符串由SqlConnection对象使用,在所有其他应用程序中都可以正常工作。我猜UDF中与外部数据源的连接被阻塞了。有什么方法可以解决这个问题吗?

有一种方法可以解决这个问题,那就是创建一个存储过程来完成这项艰巨的工作,然后对数据进行解密。然后使用Azure Data Factory和访问解密后的数据,并将您需要的数据移动到数据池中,不包括安全数据。从那里,您可以使用U-SQL脚本访问它。一个主意?如果您需要我制作更多示例,请告诉我。

您是否使用U-SQL中的数据源来表示SQL Server实例,但无法让它读取加密数据?如果是,请在提交功能请求


您无法从U-SQL用户代码中直接调用网络资源,原因如下。

您好,欢迎使用Stack overflow-如果您能够将问题集中到更紧密、具体的问题中,您可能会发现有人能够帮助您(因为这篇文章有两个方面——一个是关于数据源功能,另一个是关于连接到SQL server的网络相关问题。对于后者,如果您共享您尝试过的代码的“最小不工作示例”,这将非常有帮助,所以我们可以查看并尝试查看这是一个代码错误还是一个配置错误。我会的。谢谢。实际上,这是一个错误加密列中的e数据可以以非常有限的方式解密,而存储的proc不是其中之一。我目前使用的是基于.NET的解决方案。原因可能是试图解密数据的应用程序必须访问密钥库进行加密操作。