数据库方面的面试题,求解答

阳光彩虹老狗逼 发布于 2016/03/21 09:32
阅读 683
收藏 0

刚看见这上面有人问面试题怎么回答,我也想到前几天的一个特别没思路的面试题。求各位前辈老师解答。

一张数据库表上有着十分机密的用户账号和密码信息。

要怎么防止数据库管理员得到用户的信息。

不考虑数据库权限、不考虑加密、不考虑数据库类型、不考虑程序控制。

差不多就是这样吧,上边的【不考虑】是我回答过的,面试官说管理员可以登录修改用户密码和然后就可以登录了。

加载中
0
乌龟壳
乌龟壳
三个字,不可能
乌龟壳
乌龟壳
回复 @DanceCoder : 没有这种数据库管理员,如果是系统里的管理员,倒是可以通过系统代码,实现管理员只能管理不能查看的逻辑。数据库本身的管理员不行,除非让数据库管理员都进不了数据库,那还管理啥。
阳光彩虹老狗逼
阳光彩虹老狗逼
回复 @乌龟壳 : 面试官说可以执行增删改查,就是直接在控制台执行SQL语句的那种。
乌龟壳
乌龟壳
回复 @HankeBoom : 如果有背景就可能不一样,比如说的其实是所谓的数据库管理员之类的,就看看服务器状态那些,数据库都没权限进去
阳光彩虹老狗逼
阳光彩虹老狗逼
哈哈哈,面试官好坏。。。。。
0
钛元素
钛元素
你确认他不是在出脑筋急转弯?
阳光彩虹老狗逼
阳光彩虹老狗逼
不知道,根据我仅有的面试经验,一般都是先问一些基础的问题。我也不知道他为什么问这么摸不着头脑的问题。难道是在考察我的解决问题能力?
0
战争总会来临
战争总会来临
 数据库管理员没有权限看数据库,感觉就像厨师不能进厨房一样。
阳光彩虹老狗逼
阳光彩虹老狗逼
面试官的意思是不要在管理员权限方面限制不同权限级别的管理员
0
布道牛
布道牛

在java程序是对用户名和密码进行了加密后存入数据库的,登录的时候时候再提取数据库的数据进行相反的解密过程,如果一致,才通过

根据你的描述,管理员A又可以管理服务器后台,又可以管理数据库,那只能说明管理员只能为一个(多了就权责不分了),当然最好的是 不要给A日志信息查看权限,要不然就他就可以做到天衣无缝。

以上是个人对数据安全性的理解

下面废话:1:不考虑数据库权限、不考虑加密、不考虑数据库类型,说明数据库安全性有问题。2:面试官的回答“登录修改用户密码和然后就可以登录了。” ,有点sb思维,我都看得到密码了,还用修改后台的密码,还要脱裤子放屁(多此一举)

阳光彩虹老狗逼
阳光彩虹老狗逼
哈哈哈,面试官确实好坏
0
vvtf
vvtf

这种东西只有在登录的时候处理吧.

数据库都是持久性的东西, 不管如何加密. 只要修改成一个我知道的明文加密的数据不就行了?

所以,还是在登录的后台做处理.

比如加密的是根据用户输入的密码加上用户名之类的处理过的密码.

那么数据库管理员不知道后台的处理逻辑, 修改了数据库也无用.

阳光彩虹老狗逼
阳光彩虹老狗逼
长知识了,谢谢
0
cys1357
cys1357

看看是否可以这样做

用户的相关信息只通过uuid来查询,并且所有信息与用户名无相关性。用户名和uuid的对应关系拆分成多个记录保存,比如用户名abc ,uuid 123-456-789-012-234 保存成加密后的记录

cde asd

ghi fdfd

jkl rrr

mno !3e

pqr rwq

这里第一列是abc加上序号 变成的abc1,abc2...再加密后的字符串,第二列是uuid片段加密后的数据,

客户端通过多次请求再解密获取完整的uuid,然后获取数据,这样除非管理员能解密否则无法获得完整数据

东向利
东向利
就是性能堪忧
阳光彩虹老狗逼
阳光彩虹老狗逼
这个有点厉害啊
0
钛元素
钛元素

引用来自“cys1357”的评论

看看是否可以这样做

用户的相关信息只通过uuid来查询,并且所有信息与用户名无相关性。用户名和uuid的对应关系拆分成多个记录保存,比如用户名abc ,uuid 123-456-789-012-234 保存成加密后的记录

cde asd

ghi fdfd

jkl rrr

mno !3e

pqr rwq

这里第一列是abc加上序号 变成的abc1,abc2...再加密后的字符串,第二列是uuid片段加密后的数据,

客户端通过多次请求再解密获取完整的uuid,然后获取数据,这样除非管理员能解密否则无法获得完整数据

可是都说了不允许加密了,实在想不出不加密怎么办了
0
开源中国首席段子手
开源中国首席段子手
你需要了解MySQL的“视图”是干嘛的。。。。。。。
阳光彩虹老狗逼
阳光彩虹老狗逼
视图不是也可以执行改数据操作吗
0
cys1357
cys1357

引用来自“cys1357”的评论

看看是否可以这样做

用户的相关信息只通过uuid来查询,并且所有信息与用户名无相关性。用户名和uuid的对应关系拆分成多个记录保存,比如用户名abc ,uuid 123-456-789-012-234 保存成加密后的记录

cde asd

ghi fdfd

jkl rrr

mno !3e

pqr rwq

这里第一列是abc加上序号 变成的abc1,abc2...再加密后的字符串,第二列是uuid片段加密后的数据,

客户端通过多次请求再解密获取完整的uuid,然后获取数据,这样除非管理员能解密否则无法获得完整数据

引用来自“钛元素”的评论

可是都说了不允许加密了,实在想不出不加密怎么办了

上面的加密只是为了去掉多个片段记录中用户名的相关性,让管理员无法通过搜索找出所有和这个用户名相关的记录项,不需要解密,只是一种变换算法。



返回顶部
顶部