我已经将我们公司的所有Git存储库移到了GitHub,现在我想将员工添加到项目中。由于大多数员工已经拥有个人GitHub帐户,我想知道是否应该让他们创建一个work GitHub帐户。我想这样做的原因是为了减少未经授权访问我们的代码库的机会,因为他们的个人帐户可能会通过他们在网站上的个人活动而被很好地公布,从而增加了有针对性的攻击的可能性。此外,如果他们的个人账户被泄露,这并不意味着劫机者可以访问整个公司代码。由于这将给员工带来两个账户的负担,我想知道这是否是正确的方法,甚至是有意义的。我很想听听你对此的看法。
更新感谢所有有用的见解。我不会把答案设定为被接受的,因为问题/答案的主观性质,以及我从几个不同的答案中得到了最好的答案。
我决定这样做:我将提醒员工,由于实际原因,与工作相关的GitHub电子邮件通知必须发送到他们的工作电子邮件帐户。因此,创建工作GitHub帐户更有意义。如果他们愿意使用他们的个人GitHub帐户,并将其连接到他们的工作电子邮件帐户,那就没问题了。无论如何,员工必须以书面形式同意一些与使用GitHub相关的条件。这些都与帐户安全性有关:使用不与任何其他帐户一起使用的安全随机密码生成器选择安全密码,不通过不为其拥有或管理的计算机访问GitHub等。最终,员工将不得不决定工作帐户对他们是否更有意义。
发布于 2012-06-04 15:43:07
如果有好处的话,那将是痛苦的。但没有什么比痛苦和毫无意义更糟糕的了。只有一个个人账户。原因有二:
参考资料:我制作了一个具有GitHub集成的CI服务器,所以我有很多测试帐户,我用各种奇怪的配置与客户交谈过,包括独立的工作帐户和个人帐户。它总是会带来麻烦。
发布于 2012-06-04 09:54:29
您的公司代码是公开的还是私有的?如果他们(或至少有些)是公开的,并且您允许员工使用他们自己的GitHub帐户,那么这将激励他们编写好的代码。他们的名字会被公开地附在上面。但是,我假设您的所有存储库都是私有的。
总的来说,听起来您更希望员工的帐户在整个GitHub中不被公开显示。不幸的是,他们通过出售GitHub企业来赚钱,所以我想这就是为什么他们不允许你为组织创建私人账户的原因之一。在这两种情况下,在选择一个非常社会化的站点来存放你的存储库后,拥有(本质上)被锁定的工作帐户实际上是违反直觉的。
让我们想象一下,您确实为员工设置了工作帐户。你会否对他们如何使用这些帐户实施限制?你会允许他们为非工作项目贡献代码吗?如果是这样的话,那么他们的账户就会变得公开可见,让你回到最初的担忧。你可以让他们用他们的个人账户捐款,但你却为他们创造了一个后勤上的痛点。就我个人而言,我会鼓励我的员工把代码作为自己贡献给其他项目。这不仅增强了他们的信心,也让他们获得了宝贵的经验和建立了他们的信誉。
无论如何,我不认为有工作帐户的努力是值得的。GitHub接口允许您轻松地控制谁可以访问什么,因此,无论哪种方式,删除访问都很简单。我也不认为拥有单独的帐户比GitHub界面更能在个人项目和工作项目之间“划清界限”。
同时,要记住,随着公司的发展,你打算如何处理这个问题。从管理层的角度来看,你现在制定的策略是可伸缩的吗?现在管理5个帐户可能不错,但当你增长到20或50岁时会发生什么呢?但是,一旦您达到这一点,也许GitHub企业将是一个平易近人的解决方案。在这种情况下,我会考虑找出GitHub帐户是否可以迁移到GitHub企业安装。如果是这样的话,我可以看到,这是一个积极的理由,有工作帐户。
发布于 2012-06-04 09:55:05
这不是不可能的,其实也是个不错的主意。
尽管这可能是令人遗憾的,但你需要在公司生命中的某个时刻计划你的员工离开公司。在那个时候,你将如何从公司的存储库中提取他们的个人账户?
如果员工离开时关系不好,你会怎么做?在一个理想的世界里,一切都将保持专业,公司和前雇员之间不会有任何敌意。在不太理想的情况下,你会谨慎地进行计划。
虽然维持两个帐户是痛苦的,但你的员工应该欢迎这个机会。它在他们的和公司的之间提供了一个更清晰的界限。
编辑:这里关注的是清楚地区分雇员对项目X、Y、Z等的个人贡献。以及他们在贵公司产品上的有偿工作。使用一个单独的工作帐户有助于提供必要的划分,以确定谁拥有什么知识产权和相关版权。
例如,如果员工使用他们的个人帐户并同时为公司和项目X捐款,您如何确定员工在这些时间点上所扮演的角色?你对X的贡献是代表你的公司还是他们自己的自由裁量权?该雇员或公司是否拥有给予X的作品的版权?就这一点而言,如果你允许外界对你公司的工作做出贡献,你如何区分该员工是员工还是自愿捐款?
从更广泛的意义上讲,假设你有一名员工,他通过为其他项目做出贡献,代表公司建立了声誉。当该员工离职时,您如何表示该个人用户帐户已不再与您的公司关联?严重的品牌问题可能会发生,而不清楚地描述一个特定的帐户是什么。
当你开始思考潜在的场景时,很容易就会发现自己的所有权、品牌和版权问题。使用单独的工作帐户有助于消除这种模糊性。该公司需要能够对以其名义作出的贡献提出索赔。
这不是关于将用户帐户分离出去的技术问题,而是法律问题可能会让你绊倒。
请注意,如果您的公司的产品都是在许可许可的许可下作为开放源码发布的,并且/或您根本不担心潜在的品牌问题,这可能是一个没有意义的问题。
(向要求编辑的保罗·比加致敬)
https://softwareengineering.stackexchange.com/questions/151518
复制