【发布时间】:2013-09-22 07:05:22
【问题描述】:
我有一个 SQL Server 2005 数据库,我计划使用 PassByPhrase 加密我的一些列。但是这些列必须以原始形式显示在我的 ASP.Net 网页和一些 Crystal Reports 上。现在我知道,每次我的类(显示数据)访问数据库时,我都必须创建一个存储过程来解密列并运行这个存储过程。但是如果我将密码存储在某个存储过程中,那么任何有权访问数据库的人都可以打开存储过程并获取密码的值。那么加密的意义何在?
所以我的问题是:
如何在 ASP 网页或 Crystal Report 上显示我的加密列(以其原始形式)?
我应该如何存储我的密码?
【问题讨论】:
-
我认为重点是不是将短语存储在存储过程本身上,而是从 asp.net 应用程序传入。显然,可以访问 asp.net 应用程序的人可以找出该短语并使用它来解密数据库中的数据。
标签: sql asp.net sql-server sql-server-2005 encryption