Nuget上的“作者”字段可以被欺骗吗?我可以相信文件的真实性吗?

时间:2011-10-03 22:05:54

标签: security nuget nuget-package spoofing nuget-server

我正在浏览作者的Nuget图书馆并查看可疑的内容......与我见过的一些先前作品的质量不同。

我怎么知道Nuget包的作者真的是那个人?

我可以将这种信任扩展到Nuget的内置更新过程吗?

3 个答案:

答案 0 :(得分:4)

“author”只是包含在.nuspec文件中的元数据。见(http://docs.nuget.org/docs/reference/nuspec-reference)。这可能与包所有者/创建者不同。

在NuGet刚开始的时候,有一些人正在为他们没有创作的项目创建软件包,主要是为了将软件包放到存储库中。

现在NuGet已经建立起来了,建议人们联系项目所有者并让他们创建自己的NuGet包。

对于已由作者以外的其他人上传到存储库的软件包,作者可以请求将所有权转移给他们。

由于无法保证包创建者是原始作者,因此我不确定这会如何影响信任。但是,如果您安装了一个软件包,则可以非常安全地说,更新将来自创建初始软件包的同一个人,或者可能已经转移到项目的实际作者。

换句话说,信任可能会相同或更好(如果是实际作者),但很少比您安装的原始软件包差。

希望有所帮助。

答案 1 :(得分:1)

我知道这是一个相当古老的问题,但this是我找到的最佳答案。我想把我的$ .02添加到收银台。我在nuget.org上有几个基于另一个包的软件包。 Unity.Mvc3.VBUnity.Mvc3.DLL,我正在开发Unity.Mvc4.VB软件包。它们都基于Unity.Mvc3devtrends。 DLL项目基本上只安装Unity.Mvc3的程序集引用而没有c#源代码文件,因此在其他语言的项目中使用它会更容易一些。 VB软件包包括VB.Net版本的C#源文件。由于我没有在DLL包中编写除nuspec文件以外的任何内容,因此我只列出Paul Hiles作为作者,我自己作为包所有者。

对于VB软件包,我再次被列为所有者,但对于作者,我列出了Paul和我自己在括号中的每个贡献,如下所示:

Nuget Package Attribution

我的想法是,我赞扬了我的衍生作品的原作者。

答案 2 :(得分:0)

Kiliman的回答是正确和全面的。我想补充一点,社区可以开始在NuGet Gallery中撰写nuget包的评论。评论非常少,而且它们之间有一个星级系统,所以如果您认为某个软件包没有用,或者您对特定软件包有疑虑,请将其写在那里并帮助您的其他程序员。