SQL server 2008 R2 里建了一个用户登录信息的表,存放密码信息的那一列能屏蔽真实信息吗

建了一个TABLE,有如下几个列:UserIDPassword存放密码的Password列是否能显示为*******之类的,总之就是不让任何人能看到密码这一列的真实内容,... 建了一个TABLE,有如下几个列:
User ID
Password
存放密码的Password列是否能显示为*******之类的,总之就是不让任何人能看到密码这一列的真实内容,管理员也不能看到。
展开
 我来答
骑拔032
2012-08-12
知道答主
回答量:7
采纳率:0%
帮助的人:8.8万
展开全部
你好,很高兴回答你的问题。

SQLSERVER 中有相应的函数。pwdencrypt 加密,此加密不可以逆(我的知道的)。然后可以用 pwdcompare 来验证输入的密码是否正确。
下面是一个例子
1, 设置密码。
比如 用户A设置的密码是 auserpwd
那么在写入到 Password 那一列的时候这样写
insert userTable (UserID,Password) values ('A',pwdencrypt('auserpwd'))
2,验证密码.
如果用户在登录验证的时候输入错误密码 auserpassword
select pwdcompare(Password,pwdencrypt('auserpassword')) '' from userTable where UserID='A' 那么返回的结果就是 0 ,如果输入正确的密码 那么返回值就是 1 。

如果有不明白,可以追问,或者HI 我。
追问
试了几次好像不行呢。
直接在SQL SERVER执行新建一个记录的语句:
insert into TableA (User_ID,Username,Password) values ('itce002','43',pwdencrypt('111111'))

然后执行选取的语句:

select pwdcompare(Password,pwdencrypt('111111')) from TableA where User_ID='itce002'

得到的结果是0。试了好几次都是0的结果。得不到1的结果。
追答
非常的抱歉,语句给错了。
现在纠正一下,比较密码的语句。
select pwdcompare('111111',Password) from TableA where User_ID='itce002'
今至电子科技有限公司
2024-08-23 广告
数据库备份是确保数据安全与业务连续性的关键环节。我们上海今至电子科技有限公司高度重视数据保护,定期执行全面的数据库备份策略。这包括使用先进工具和技术,对关键业务数据进行自动化备份,并存储在安全可靠的外部存储介质或云端。通过定期验证备份的完整... 点击进入详情页
本回答由今至电子科技有限公司提供
lolandkidtress
2012-08-11 · 超过19用户采纳过TA的回答
知道答主
回答量:53
采纳率:0%
帮助的人:49.3万
展开全部
存放密码的时候用函数加密不就行了,明文密码是不负责任的表现。
追问
你的意思是,在写入数据库的insert语句里就把密码内容屏蔽了,而不是在SQL server里控制?能给个SQL语句参考一下吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式