Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# SQL Server 2014列加密_C#_Sql_Sql Server_Encryption_Database Administration - Fatal编程技术网

C# SQL Server 2014列加密

C# SQL Server 2014列加密,c#,sql,sql-server,encryption,database-administration,C#,Sql,Sql Server,Encryption,Database Administration,我正在开发SQL server 2014企业版,并计划对一些列实施加密。这些列在大约30个存储过程中引用。 不确定我应该选择哪种加密方法。我正在考虑使用列加密,但据我所知,这意味着我应该将这些列替换为varbinary,并需要修改所有相关的SP。 对更有效的流程有什么建议吗?是否有一种方法允许应用程序(C#)能够解密数据,还是应该在每个相关存储过程的数据库端进行解密?将私钥作为可配置变量放在某个位置,然后在C#中进行编码和解码,这要简单得多。您需要能够在加密列上运行查询吗?您的意思是将密钥放入应

我正在开发SQL server 2014企业版,并计划对一些列实施加密。这些列在大约30个存储过程中引用。 不确定我应该选择哪种加密方法。我正在考虑使用列加密,但据我所知,这意味着我应该将这些列替换为varbinary,并需要修改所有相关的SP。
对更有效的流程有什么建议吗?是否有一种方法允许应用程序(C#)能够解密数据,还是应该在每个相关存储过程的数据库端进行解密?

将私钥作为可配置变量放在某个位置,然后在C#中进行编码和解码,这要简单得多。您需要能够在加密列上运行查询吗?您的意思是将密钥放入应用程序中吗?如果是这样,我应该提到,我们有两个应用程序在同一个数据库上工作。是的,我需要能够从这些列中查询已解密的数据。啊,抱歉,如果必须查询,则需要SQL来处理它,因为在where子句能够理解它之前,它需要解密。如果您在SQL中创建一个接受参数并返回加密短语的函数,该怎么办?使用EncryptBypassPhase和DecryptBypassPhrase纠正我的错误,这是否仍然意味着我需要在使用这些列的每个SP中实现此更改(无论是选择还是插入)。我不太熟悉C#,更熟悉SQL,不确定是否有更好的解决方案同时使用这两种语言。