【问题标题】:How to get encrypted records from table in sql server by symmetryk key using sqlserver.management.smo如何使用 sqlserver.management.smo 通过对称密钥从 sql server 中的表中获取加密记录
【发布时间】:2015-06-26 09:37:49
【问题描述】:

我在密码字段中使用 SymmetricKey。现在我想用解密的密码从该表中获取所有记录。我正在使用 Microsoft.SqlServer.Management.Smo。

var tbls = new Table();
tbls = db.Tables[tblname];
ScriptingOptions options = new ScriptingOptions();
options.ScriptData = true;
options.ScriptDrops = false;
options.EnforceScriptingOptions = true;
options.ScriptSchema = false;
options.IncludeHeaders = true;
options.AppendToFile = true;
options.Indexes = true;
options.WithDependencies = true;                                
ServerVersion sv = new ServerVersion(2008, 2005);
options.SetTargetServerVersion(sv);
var script = tbls.EnumScript(options);
string queryes ="";                                 
foreach (var line in script)
{
   if (line.Contains("VALUES"))
   {
      queryes += line;                                        
   }
}

如何获取解密记录的数据?

【问题讨论】:

    标签: c# visual-studio sql-server-2008 smo


    【解决方案1】:

    如果该字段已经使用对称密钥加密,那么您应该使用以下语句使用对称密钥打开它。

    OPEN SYMMETRIC KEY [密钥名称] 通过[解密机制]解密

    以下链接可以帮助您了解对称密钥、非对称密钥以及创建证书以加密和解密数据。 [https://msdn.microsoft.com/en-us/library/ms190499.aspx]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-23
      • 1970-01-01
      • 2020-11-28
      • 2012-01-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多