hot*_*ips 15 c# security keepass
我有一个项目,我必须处理敏感数据.你知道如何打开一个keepass数据库表单c#来使用数据吗?
我已经下载了这些来源.我会看看它得到我需要的东西.还有其他想法吗?
Ron*_*rby 35
我考虑过读一个KeyPass 2数据库,所以我在Linqpad中添加了对KeyPass.exe的引用并开始进行实验.令我惊讶的是,没有任何外界帮助(证明了一个好的API),我只在几分钟后就读了数据库.我是这样做的:
var dbpath = @"C:\path\to\passwords.kdbx";
var masterpw = "Your$uper$tr0ngMst3rP@ssw0rd";
var ioConnInfo = new IOConnectionInfo { Path = dbpath };
var compKey = new CompositeKey();
compKey.AddUserKey(new KcpPassword(masterpw));
var db = new KeePassLib.PwDatabase();
db.Open(ioConnInfo, compKey, null);
var kpdata = from entry in db.RootGroup.GetEntries(true)
select new
{
Group = entry.ParentGroup.Name,
Title = entry.Strings.ReadSafe("Title"),
Username = entry.Strings.ReadSafe("UserName"),
Password = entry.Strings.ReadSafe("Password"),
URL = entry.Strings.ReadSafe("URL"),
Notes = entry.Strings.ReadSafe("Notes")
};
kpdata.Dump(); // this is how Linqpad outputs stuff
db.Close();
Run Code Online (Sandbox Code Playgroud)