私は機密データを処理する必要があるプロジェクトを持っています。 keepassデータベースフォームC#を開いてデータを使用する方法を知っていますか?機密情報をkeepassデータベースの中に保存するC#
私はソースをダウンロードしました。私はそれを見て、私が必要とするものを手に入れます。他のアイデア?
私は機密データを処理する必要があるプロジェクトを持っています。 keepassデータベースフォームC#を開いてデータを使用する方法を知っていますか?機密情報をkeepassデータベースの中に保存するC#
私はソースをダウンロードしました。私はそれを見て、私が必要とするものを手に入れます。他のアイデア?
私は私はLinqpadでKeyPass.exeへの参照を追加し、実験を開始したキーパス2データベースを読み取る考えました。私の驚いたことに、外部の助けなしに(良いAPIの証拠)、私はほんの数分後にデータベースを読んでいました。ここで私はそれをやった:
var dbpath = @"C:\path\to\passwords.kdbx";
var masterpw = "[email protected]";
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();
含める必要があるネームスペースは何ですか?私はSSISでC#を使用していて、KeePass.exeへの参照を追加してから、KeePassLib.Keys、KeePass.Collectionsなどを追加しましたが、db.RootGroup.GetEntries(true)という行が好きではありません。 – jared
KeePassLib.Keys&KeePassLib.Serialization –
**ヒント** ** File **メニューの** Password manager **メニュー項目を使用してLinqPadにマスターパスワードをデモコードで保存させ、 'var masterpw = Util.GetPassword(" KeePassMaster ");' [here](http://stackoverflow.com/a/12006038/1016343)で詳しく説明しています。この方法では、CryptoAPIを使用して格納されているため、パスワードの削除に気を付けずにデモコードを安全に渡すことができます。 – Matt
チェック:KeePass Password Safe(どのようにKeePassの作品のために)
むしろC#System.Cryptographyクラスを使用すると、あなたのデータベースやTXTファイルにenryptedデータを保存...
持ち歩く-2.05-がありますAlpha-Source.zip、KeePassの最新バージョン。 C#ソースコード、1919キロバイト
あなたはこれをもう少し明確に書き直せますか?あなたは何を達成しようとしているのですか? –
私は秘密情報を非暗号化せずに使用するために、winformアプリケーションからkeepassデータベースを開こうとしています。 – hotips
私はkeepassデータベースを使ったことはありませんが、MSSQLデータベースに暗号化されたデータを保存することも安全だと思います。しかし、サードパーティのソリューションを使用している場合は、データを処理するAPIが必要です。 –