2

请给我一些建议。我必须使用 SQL 数据库邮件发送电子邮件。在我的电子邮件中,我必须创建用户可以单击以转到我网站上的产品页面的链接。但是,我需要加密产品的 ID,一旦产品页面加载,产品 ID 的查询字符串就会被解密。

如何将我在网站类中创建的加密算法转换为 SQL?我相信解密和加密算法必须是相同的,这样当用户点击邮件中的链接时,我的页面才能正确解密。我使用的加密类类似于此链接: http: //www.codeproject.com/Articles/33350/Encrypting-Query-Strings

非常感谢你的帮助。

PS:我也在asp.net论坛上发布了这个问题。

4

2 回答 2

3

您可以在 SQL Server 中运行 CLR(即 .NET)代码。涉及多个步骤,但首先是在 Visual Studio 中创建“SQL Server”项目、编写代码并将其部署到 SQL Server。您还必须使用sp_configure在 SQL Server 中启用 CLR 函数。

有关详细说明,请参见此处 (MSDN): 如何:创建和运行 CLR SQL Server 用户定义函数

于 2012-06-13T05:04:20.343 回答
2

在做了相当多的研究之后,我可以确认CLR是要走的路。正如建议的那样,我使用了用户定义的函数 CLR。首先,我需要在 Visual Studio 中创建 CLR 项目。这是了解其工作原理的一个很好的起点:

http://blog.sqlauthority.com/2008/10/19/sql-server-introduction-to-clr-simple-example-of-clr-stored-procedure/

然后,我没有添加 CLR 存储过程,而是移至用户定义的函数。添加一个加密类并在用户定义的函数中调用该类。构建和部署。而已。

这是另一个有用的链接:

http://channel9.msdn.com/Learn/Courses/SQL2008R2TrainingKit/CLR/CLRIntegrationLab/Exercise-1-Creating-User-Defined-Functions-Using-SQL-CLR

感谢 dbaseman 指出这一点。

于 2012-06-25T21:44:24.687 回答