SQL Server CLR集成以实现加密/解密

SQL Server CLR集成以实现加密/解密,sql,sql-server-2008,encryption,sqlclr,Sql,Sql Server 2008,Encryption,Sqlclr,我需要在数据库表中以加密形式存储数据。我希望在数据库级别执行此操作,但以下是我面临的问题: 字段的数据类型应为Varbinary 工作组版本不支持加密 可以加密数字字段吗 我想访问表中的加密数据以获取视图和存储过程以进行某些处理,但由于上述问题,我无法访问 这是我的环境: 开发平台-ASP.Net、.Net Framework 3.5,Visual studio 2008 服务器操作系统-Windows Server 2008 数据库-SQL Server 2008工作组版 我也在考虑采用不同的

我需要在数据库表中以加密形式存储数据。我希望在数据库级别执行此操作,但以下是我面临的问题:

  • 字段的数据类型应为Varbinary
  • 工作组版本不支持加密
  • 可以加密数字字段吗
  • 我想访问表中的加密数据以获取视图和存储过程以进行某些处理,但由于上述问题,我无法访问

    这是我的环境:

    开发平台-ASP.Net、.Net Framework 3.5,Visual studio 2008

    服务器操作系统-Windows Server 2008

    数据库-SQL Server 2008工作组版

    我也在考虑采用不同的方法来解决这个问题(但要测试它的可行性)。我只是想知道是否可以创建一个CLR函数(可以使用.Net framework中提供的加密类型获取参数来加密和解密数据),并使用SQL Server的CLR集成功能,从存储过程和视图调用该函数


    我不确定我的思路是否正确?请给我一些建议。

    是的,你可以这样做。但是,您的SQL CLR程序集可能需要标记为不安全,加密类才能工作,这取决于您使用的cryptoapi方法。

    是的,您可以这样做。但是,您的SQL CLR程序集可能需要标记为不安全,加密类才能工作,这取决于您使用的cryptoapi方法。

    感谢KristoferA,另请注意,您是否可以在工作组版本中使用内置SQL加密?可以加密数字字段吗?据我所知,字段数据类型应为varbinary?根据此页:,SQL 2008工作组版应支持SQL Server的内置数据加密。感谢KristoferA,顺便问一下,您是否可以在工作组版中使用内置SQL加密?可以加密数字字段吗?根据我的理解,字段数据类型应该是varbinary?根据以下页面:,SQL 2008 Workgroup edition应该支持SQL Server的内置数据加密。