关键服务器、设备密码较多,不方便记忆,只能使用简单密码,容易被猜测破解;
如用复杂密码,又担心记不住,明文记录又担心被非法获取一锅端。
该方案将密码使用私人密钥加密存储密码,持有私人密钥才能解密读取,
适用多设备、多账户多人共同适用情况下的密码管理。
加密解密算法在《基于SQL Server 的密码管理解决方案》,无密钥知道算法也无法破解。
缺陷:
- 可以观察出用户名和密码字符长度。
- 可以观察出各服务器上是否有相同的administrator或sa账号;
- 可以观察出某服务器上administrator和sa密码是否相同;
- 可以用社会工程学破解密码.(威逼利诱,偷看)
解决:使用长密码,每个服务器及账户使用不同密码;
UI:网页、应用程序、企业微信
接口使用说明
新增密码资料(示例数据)
1 2 3 4 5 6 7 8 9 10 |
exec addpsw '三七二十一','程序猿','192.168.0.1','sqlserver2014','admin','AaZz.,*!。,','数据库' exec addpsw '三七二十一','程序猿','192.168.0.3','windows','administrator','AaZz.,*!。,','K3中间层服务器' exec addpsw '三七二十一','程序猿','192.168.0.3','金蝶','admin','AaZz.,*!。,','K3账套管理' exec addpsw '三七二十一','程序猿','192.168.0.3','sqlserver2008','sa','AaZz.,*!。,','K3账套数据库' exec addpsw '四七二十八','程序猿','192.168.0.2','sqlserver2008','sa','没有密码就是最好的密码' --密钥,使用人,服务器,系统,用户名,密码[,备注] --备注允许为空 select * from pswmanage order by fenpsw --存储在数据库中的用户名密码都已加密 |
同一使用人允许使用多个密钥
可以用一段话、一句诗作为密钥
密码中的特征部分可以用其他自己可以识别的字符预先替换掉(比如用Y7替代2017)
查询密码
1 2 3 4 |
exec getpsw '四七二十八','程序猿' exec getpsw '三七二十一','程序猿','','','admin' --密钥,使用人[,服务器[,系统[,用户名]]] --服务器、系统、用户名为可选条件,为空或NULL则匹配所有 |
批量更新密钥
1 2 3 4 5 |
exec chgpswkey '三七二十一','九九八十一','程序猿','192.168.0.9' --旧密钥,新密钥,使用人[,服务器[,系统[,用户名]]] --服务器、系统、用户名为可选条件,为空或NULL则匹配所有 exec getpsw '九九八十一','程序猿' |
批量复制密码资料
1 2 3 4 5 6 7 |
exec copypsw '九九八十一','123','程序猿','程序猿' --用另一个密钥备份密码资料 exec copypsw '九九八十一','123','程序猿','攻城狮','192.168.0.3' --复制密码资料给其他人 --原密钥,新密钥,原使用人,新使用人[,服务器[,系统[,用户名]]] --服务器、系统、用户名为可选条件,为空或NULL则匹配所有 exec getpsw '123','攻城狮' exec getpsw '123','程序猿' |
可以用另一个密钥备份自己的密码,再分享给其他人
批量删除
1 2 3 4 5 6 7 |
exec delpsw '三七二十一','程序猿' exec delpsw '四七二十八','程序猿' exec delpsw '九九八十一','程序猿' exec delpsw '123','程序猿' exec delpsw '123','攻城狮' --密钥,使用人[,服务器[,系统[,用户名]]] --服务器、系统、用户名为可选条件,为空或NULL则匹配所有 |
接口函数SQL代码http://itjoy.net/265.html
© 2017, ITJOY.NET. 版权所有. 如未注明,均为原创,转载请注明出处。
“关于企业密码管理的思考”的一个回复