据我所知,有必要访问机器密钥库中的写入。那么如何将此权限分配给用户?我需要请求支持人员授予用户运行Moq所需的权限,但我不知道究竟要求什么。
更新 :正如Tim在下面要求的那样,我正在更新一些可能对问题理解有用的信息,如下所示:
显然,Moq依赖Castle来构建模拟对象,而Castle框架需要写入机器密钥库。当我尝试运行测试时,测试框架返回错误“无法获取StrongNameKeyPair的公钥”。
当我去支持那些人时,他们暂时给了我管理权限,一切都按预期运行。即使他们删除了管理员权限,我也能够执行我的测试。
我的结论是,我需要一些权限才能在这个机器密钥库上写。我需要知道的是我需要具备写入权限的位置,因此我可以要求支持特定的写入权限而不是管理员权限,对于其他开发环境,肯定会被拒绝。
提前致谢!
答案 0 :(得分:2)
经过一些研究,我能够找到我需要具有写权限才能执行Moq的确切目录(实际上,这是Castle要求)。用户必须访问以下文件夹:
C:\ Documents and Settings \ AllUsers \ ApplicationData \ Microsoft \ Crypto \ RSA \ MachineKeys
(假设“C”是您的系统文件夹)
使用此权限,使用Moq运行模拟项目的用户将不需要本地计算机中的管理权限。这是一个参考:
MVC Testing using a mocking framework (Moq)
希望它有所帮助。
答案 1 :(得分:0)
我从来不需要安装任何密钥来运行Moq,既不在本地工作站也不在我们的构建服务器上。我想你可能需要在你的问题上多做一些工作。你得到某种错误吗?也许如果您发布了消息,您可能会得到更好的回复。