我的Firefox扩展程序需要在Firefox配置文件中替换/删除key3.db
,有没有办法做到这一点?我尝试nsIFile.copyTo()
,但文件未被覆盖nsIFile.remove()
,但会返回NS_ERROR_FILE_IS_LOCKED
。
答案 0 :(得分:1)
不,在使用文件时更换文件不是一个好主意。相反,您应该使用XPCOM功能来操作此文件(意味着主密码)。这样的事情应该有效:
var pk11db = Components.classes["@mozilla.org/security/pk11tokendb;1"]
.getService(Components.interfaces.nsIPK11TokenDB);
var token = pk11db.getInternalKeyToken();
token.changePassword("", "foobar");
使用""
代替"foobar"
应删除主密码。但是,我不完全确定更改主密码可以在不查询当前密码的情况下工作。 Firefox Mobile可以用作相对简单的code example。